我有一个纹理,需要在像素着色器中知道它的尺寸。这似乎是 GetDimensions 的工作。下面是代码:
Texture2D t: register(t4);
...
float w;
float h;
t.GetDimensions(w, h);
然而,这导致了一个错误:
X4532: 无法将表达式映射到像素着色器指令集
这个错误似乎没有被记录在任何地方。我是否在错误地使用该函数?是否应该使用不同的技术?
我正在通过DirectX在shader model 4.0级别9_1中工作。