无法将modelViewMatrix分离为modelMatrix和viewMatrix以实现工作

时间:2014-05-24 11:26:03

标签: three.js vertex-shader

我正在尝试做一个vertexShader,我想在顶点位置使用modelMatrix进行一些计算,然后应用viewMatrix。

我没有设法让这个工作正常,而我确信这段代码应该是真的:modelViewMatrix = modelMatrix * viewMatrix

但即使在最基本的vertexShader中它也没有正确应用:

void main() {
    gl_Position = projectionMatrix * modelMatrix * viewMatrix * vec4(position, 1.0);
}

虽然这很好用:

void main() {
    gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
}

Three.JS似乎传递了矩阵,但我还没有找到验证这些变量值的方法:

uniform mat4 modelMatrix;
uniform mat4 modelViewMatrix;
uniform mat4 projectionMatrix;
uniform mat4 viewMatrix;
uniform mat3 normalMatrix;

1 个答案:

答案 0 :(得分:1)

应该是相反的方式:

void main() {
    gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4(position, 1.0);
}