我想知道HLSL中的输入和输出语义是用来做什么的? 也就是说,为什么我要写那个TEXCOORD0;?struct VS_OUTPUT { float2 tc : TEXCOORD0; }; 当类型和名称已经给定时,该怎么办?
语义是让着色器知道从哪里读取或写入数据的位置,它们对应于顶点结构的某些部分或特定值。在上面的示例中,"tc" 的值来自第一个纹理坐标分量。有关语义及其含义的信息,请查看此处:http://msdn.microsoft.com/en-us/library/bb509647(v=vs.85).aspx 在顶点着色器中,数据将来自FVF 或 顶点声明。