试图实现WebGL的一点灯光,我发现我的照射角度的变化,当我放大为什么相机移动时我的光线角度会发生变化?
我的顶点着色器:
uniform mat3 u_rotationMatrix;
uniform mat4 u_transformMatrix;
attribute vec3 a_position;
attribute vec3 a_normal;
varying vec3 v_normal;
varying vec3 v_viewCoords;
void main() {
vec4 tcoords = u_transformMatrix * vec4(a_position, 1.0);
v_viewCoords = tcoords.xyz;
v_normal = u_rotationMatrix * a_normal;
gl_Position = tcoords;
}
这对我来说是不想要的效果。我该如何避免这种情况?我做错了什么?
从我可以在你的形象,它不是角,但力度看?我注意到,上面的飞机和缩小的模型一样黑,只是面对你的飞机没有亮起来。如果角度发生了变化,立方体的其他表面会变亮/变暗,不是吗? –
可能是,我真的在研究是什么原因,请耐心等待,因为我是webgl.anyway的初学者,我相信这个问题是 - 或多或少 - 出现在所有面上。 – deblocker