Delphi DX11 Direct3D Проблемы вершинных и пиксельных шейдеров

Я пытаюсь перевести некоторый код карты высот C++ DX11 Direct3d в Delphi. Я нахожусь на этапе, когда у меня почти весь код переведен без каких-либо ошибок компиляции или ошибок времени выполнения, однако я не могу на всю жизнь получить что-либо для отображения на экране, что, как я полагаю, может быть вершиной/пикселем проблема с шейдером.

Код, который я перевожу, находится здесь:

http://www.rastertek.com/tertut02.html

И я использую библиотеки интерфейса JSB DirectX11 отсюда:

http://www.jsbmedical.co.uk/DirectXForDelphi/

Я знаю, что подсистема Direct3D работает правильно, поскольку я могу изменить цвет фона поверхности рендеринга, однако я просто не получаю полигоны, отображаемые на дисплее.

Существует довольно много кода, который я не могу загрузить сюда, поэтому для удобства здесь копия моего исходного кода (без каких-либо объектных файлов/двоичных файлов)

https://www.dropbox.com/s/r90jbl6vz9gb3s7/Delphi%20Height%20Map.zip?dl=0

К сожалению, в Интернете не так много примеров Delphi DX11 или D3D, поэтому мне не с чем сравнить код.

Я был бы бесконечно благодарен, если бы кто-нибудь мог предложить какие-либо указатели относительно того, в чем может быть проблема. Как я уже сказал, код компилируется и работает без ошибок, но просто ничего не отображается.

Заранее спасибо, Кевин


person weblar83    schedule 01.10.2015    source источник
comment
К сожалению, Stack Overflow работает иначе. Есть причина, по которой существует ограничение на количество кода/контента, которое вы можете поместить в свой вопрос, потому что он должен быть как можно короче, чтобы изолировать вашу проблему с помощью MCVE. Ссылки на сторонние ресурсы здесь запрещены, так как они могут быть удалены в будущем, что сделает их бесполезными для будущих читателей. Не говоря уже о том, что нам пришлось бы проделать огромную работу, чтобы отладить ваш код для вас.   -  person Jerry Dodge    schedule 01.10.2015
comment
Вы должны сделать некоторую отладку. Одна программа работает, другая нет. Где они расходятся? Это самая простая задача отладки, потому что у вас есть работающий пример, который можно использовать в качестве шаблона.   -  person David Heffernan    schedule 01.10.2015


Ответы (1)


Вы можете посмотреть здесь, как выполнить базовый рендеринг с D3D11 с использованием Delphi — https://github.com/AntonAngeloff/DX11_Examples< /а>

Однако в этих примерах используются другие переводы заголовков.

person Anton Angelov    schedule 05.02.2016