我是图形编程的初学者。我遇到了一个从纹理创建“ResourceView”的情况,然后将此资源视图设置为VS Resource。总结一下:
CreateTexture2D( D3D10_TEXTURE2D_DESC{ 640, 512, .... **ID3D10Texture2D_0c2c0f30** )
CreateShaderResourceView( **ID3D10Texture2D_0c2c0f30**, ..., **ID3D10ShaderResourceView_01742c80** )
VSSetShaderResources( 0, 1, [**0x01742c80**])
我们在顶点着色器中使用纹理时的情况和时间?有人可以帮忙吗?
感谢。
答案 0 :(得分:3)
这完全取决于你想要达到的效果。
如果要单独为顶点着色,通常会使用顶点颜色分量。但没有什么能阻止你从纹理中采样颜色。 (除非它可能更慢。)
另外,不要让这个名字欺骗你。 纹理不仅可以用于着色。它们基本上是预先计算的功能。例如,您可以使用Textue1D
提交波浪功能来为衣服或摇曳的草/毛皮制作动画。由于它是一个纹理,你可以为你绘制的每个对象使用不同的波,而无需切换着色器。
Direct3D开发人员希望为您提供最大的灵活性。这包括在所有着色器阶段使用纹理资源。