【发布时间】:2012-08-09 13:08:14
【问题描述】:
如何在 HLSL 中启用兼容模式?我正在使用 Visual Studio 和 xna。
我希望能够从像素着色器中更改全局变量,然后在通过像素着色器后从像素着色器中检索它们,但是我无法在没有得到的情况下从像素着色器中更改全局变量错误告诉我它们是不变的,我必须启用兼容模式。
那么我该如何启用呢?
【问题讨论】:
如何在 HLSL 中启用兼容模式?我正在使用 Visual Studio 和 xna。
我希望能够从像素着色器中更改全局变量,然后在通过像素着色器后从像素着色器中检索它们,但是我无法在没有得到的情况下从像素着色器中更改全局变量错误告诉我它们是不变的,我必须启用兼容模式。
那么我该如何启用呢?
【问题讨论】:
虽然我以前没有看到过这个错误,但我会冒昧地说你误解了它。
我很确定您尝试做的事情是不可能的,因为像素着色器会并行运行多次。哪个像素应该是设置要读取的全局变量的像素?
(在内部,这些全局变量映射到“常量寄存器” - 这里的关键字是常量。它们在您进行绘图调用时设置,并且从着色器的角度来看是只读的。)
【讨论】: