【发布时间】:2012-10-26 11:54:56
【问题描述】:
我正在尝试在平面上进行法线贴图,但我无法得到任何明显的结果 :(
我的着色器
在我看来,着色器看起来不错,但它并没有渲染出想要的结果(https://dl.dropbox.com/u/47585151/sss/final.png)。 所有的值都被传递了。当我创建网格时,法线、切线和副法线被正确计算,我已经检查过了! 这是环境、漫反射、高光和凹凸贴图的屏幕。
https://dl.dropbox.com/u/47585151/sss/ambient.png
https://dl.dropbox.com/u/47585151/sss/bumpMap.png
https://dl.dropbox.com/u/47585151/sss/diffuse.png
https://dl.dropbox.com/u/47585151/sss/specular.png
他们似乎是合法的...
凹凸贴图是 (bump=normalize(mul(bump, input.WorldToTangentSpace)) 的结果,看起来绝对正确,但对最终结果没有任何影响。
也许我不理解不同空间的想法,或者我改变了矩阵乘法的顺序。通过世界矩阵,我了解网格的位置和方向,它永远不会改变,它是单位矩阵。只有视图矩阵会改变并表示相机位置和在自己的空间中定位。
我的错误在哪里?
【问题讨论】: