У меня есть текстура, и мне нужно знать ее размеры в пиксельном шейдере. Это похоже на работу для GetDimensions. Вот код:HLSL: Получение размеров текстуры в пиксельном шейдере
Texture2D t: register(t4);
...
float w;
float h;
t.GetDimensions(w, h);
Однако это приводит к ошибке:
X4532: cannot map expression to pixel shader instruction set
Эта ошибка, кажется, не быть задокументированы в любом месте. Я использую функцию неправильно? Есть ли другой метод, который я должен использовать?
Я работаю в шейдерной модели 4.0 уровня 9_1 через DirectX.
Спасибо Люциус, я перемещаю их в cbuffer. Хорошее решение. –