DirectX / HLSL ошибка PS2.0 - PullRequest
       2

DirectX / HLSL ошибка PS2.0

0 голосов
/ 01 апреля 2011

я получаю эту ошибку

Шейдер использует операции адресации текстуры в цепочке зависимостей, которая слишком сложна для целевой модели шейдера (ps_2_0) для обработки.

с тех пор, как я добавил эту строку в мой пиксельный шейдер:

плавать Гаусса [NUMWT] = {5.052271056506993e-15, 9.134720359492243e-12, 6.07588281731559e-9, 0,0000014867195067797903, +0,00013383022504883334, +0,004431848388225362, 0,053990966224306644, +0,2419707232244606, 0,39894227826685835, +0,2419707232244606, +0,053990966224306644, +0,004431848388225362, +0,00013383022504883334, 0,0000014867195067797903, 6.07588281731559e- 9, 9.134720359492243e-12, 5.052271056506993e-15};

этот массив слишком большой?

Ответы [ 2 ]

2 голосов
/ 01 апреля 2011

Этот бит

Шейдер использует операции адресации текстуры

, вероятно, является ключом к решению вашей проблемы.Ошибка не пришла со строкой и номером символа?

Ищите места, где вы берете образцы из текстур или рассчитываете положение в сложных путях (возможно, ветвление).

1 голос
/ 01 апреля 2011

Я сделал быструю проверку, и массив прекрасно скомпилировался для меня, используя ps_2_0 (определяя NUMWT как 17), поэтому я предполагаю, что ваша ошибка где-то еще.

Также, почему у него должны быть какие-то проблемы с обработкой таких «маленьких» массивов?текстуры намного больше.

...