我如何实现加载纹理作为一段几何体的镜面反射贴图,并使用C++在Directx9中渲染它?
有没有我可以参考的教程或基本示例?
发布于 2010-02-23 16:56:15
使用D3DXCreateTextureFromFile从磁盘加载文件。然后需要设置一个着色器,该着色器将镜面反射值乘以存储在纹理中的值。这为您提供了镜面反射颜色。
所以你的最终像素来自
Final = ambient + (N.L * texture colour) + (N.H * texture specular)
可以在着色器中轻松执行此操作。
还值得注意的是,在纹理的alpha通道中存储每个纹理的镜面反射非常有用。这种方式你只需要一个纹理,尽管它确实破坏了每个像素的透明度。
https://stackoverflow.com/questions/2316425
复制相似问题