纹理坐标的五种生成方法:
1.D3DTSS_TCI_PASSTHRU:使用顶点信息中的纹理坐标.
2.D3DTSS_TCI_CAMERASPACENORMAL:以顶点在观察坐标系中的法线向量作为该纹理层的纹理坐标输出.
3.D3DTSS_TCI_CAMERASPACEPOSITION:以顶点在观察坐标系中的顶点坐标作为该纹理层的纹理坐标输出.即在相机空间里,顶点坐标的u,v是这样计算的.u = x, v = y, (如果是三维纹理,w = z).
4.D3DTSS_TCI_REFLECTIONVECTOR:以顶点在观察坐标系中的反射向量作为该纹理层的纹理坐标输出.反射向量由顶点坐标和法线向量计算得出.
5.D3DTSS_TCI_SPHEREMAP:输出球面反射的纹理坐标.
纹理坐标的生成方法由pD3DDevice->SetTextureStageState(0, D3DTSS_TEXCOORDINDEX, gen_method);
在绝大多数情况下,纹理坐标是二维的,但也可以改变输出的维数.它是由pD3DDevice->SetTextureStageState(0, D3DTSS_TEXTURETRANSFORMFLAGS, flag); flag可以取以下值之一:
D3DTTFF_DISABLE:纹理坐标不经变换直接输出.
D3DTTFF_COUNT1~4:输出1~4维纹理坐标.
D3DTTFF_PROJECTED:与前面的标记结合,表示除最后一个纹理坐标外,前几个纹理坐标除了最后一个纹理坐标后输出,类似于三维坐标的投影
Auto Build Texture Coordinate
最新推荐文章于 2020-07-05 11:45:46 发布