如何实现加载纹理以用作几何体的高光贴图并使用C ++在Directx9中渲染它?
我可以参考哪些教程或基本示例?
答案 0 :(得分:6)
使用D3DXCreateTextureFromFile从磁盘加载文件。然后,您需要设置一个着色器,将镜面反射值乘以纹理中存储的值。这为您提供了镜面反射颜色。
所以你最终的像素来自
Final = ambient + (N.L * texture colour) + (N.H * texture specular)
您可以在着色器中轻松完成此操作。
还值得注意的是,在纹理的alpha通道中存储每个纹素镜面反射镜非常有用。这样你只需要一个纹理,虽然它确实打破了每像素的透明度。