使用骨架矩阵进行漫反射/定向照明时,我的着色器应该是什么样的?

时间:2012-09-02 21:04:34

标签: opengl-es opengl-es-2.0 webgl lighting vertex-shader

我在网上找到了如何进行漫反射照明的例子,但我似乎无法找到任何有关使用骨架矩阵时情况如何变化的内容。

有没有人有我可以看到的例子?

我专门用这个页面作为学习漫射照明的例子: http://learningwebgl.com/blog/?p=684

1 个答案:

答案 0 :(得分:1)

无论你对顶点采用何种变换,最重要的是保持一致;知道你在什么空间进行转换。假设object_matrix是对象的转换,camera_matrix是视图转换:

vec4 pos = VertexPosition;
// pos is in object space

pos = object_matrix * pos;
// pos is now in world space

pos = camera_matrix * pos;
// view space

光坐标通常位于世界空间中,在这种情况下:

pos = object_matrix * pos;
// perform diffuse lighting computations here
pos = camera_matrix * pos;

如果通过“骨架矩阵”引用骨架动画,则它们在对象空间中完成。

希望这有帮助。