|
|
我在使用rendermonkey的时候 顶点着色器里normal进行了view的变换 如下:
float3 fvObjectPosition = mul( Input.Position, matView );
当我把view删掉 移动物体,光照区域不变,背面原来是黑的,转到正面还是黑的。
于是我认为 未对法线进行相应的变换 导致了法线一直不变 算出来的光照就那样了
然而我在看xna里的BasicEffect.fx以及其他效果里面的确是这样
float3 N = normalize(mul(normal, World));
只对其进行了世界矩阵变换,然而在运行例子的时候,物体转动,光照却能正常的照明。。
我哪里错了呢? |
|