我正在尝试在Windows Store DirectX App中实现着色器动画。实际上我只想实现我在下面的链接上看到的相同动画(为DirectX 9和C#实现)。
http://www.rastertek.com/dx10tut33.html
我能够找到使用DirectX 11.1(Windows Store App兼容的DirectX着色器)的方法,但我看不出如何将时间参数传递给C ++程序逻辑中的着色器代码,这样我才能影响着色器状态,并根据时间有不同的效果。
如果你有一些意见,请分享意见。
答案 0 :(得分:2)
要将参数传递给着色器,您可以使用constantbuffers(msdn)。您可以创建一个常量缓冲区,并将其填入您的数据,例如实际时间,并使用
将其设置在所需的着色器中 ID3D11DeviceContext::GSSetConstantBuffers
ID3D11DeviceContext::PSSetConstantBuffers
or ID3D11DeviceContext::VSSetConstantBuffers.