如何在WebGL中渲染法线?

时间:2015-04-17 22:24:16

标签: glsl webgl

我正在尝试将法线渲染为WebGL中的颜色值。我有一些表面的顶点法线,并希望用正常值着色它们。我目前在顶点着色器中执行此操作:

void main(void) {
        gl_PointSize = aPointSize;
            gl_Position = uPMatrix * uMVMatrix * vec4(aVertexPosition, 1.0);
        position_1 = gl_Position;
        vColor = aVertexColor;
        vIsDepth = aIsDepth;
        vIsNormal = aIsNormal;
        vHasTexture = aHasTexture;
        normals = uNMatrix*vec4(aNormal,1.0);
        if (aHasTexture > 0.5)
            vTextureCoord = aTextureCoord;

    }

片段着色器:

 if (vIsNormal > 0.5)
        {
            gl_FragColor = vec4(normals.xyz*0.5+0.5,1);

        }
    }

现在我的输出由于某种原因是黄色的。 r和g值是127,b值是0.有人知道出了什么问题吗?我的方法在基本理解上是错误的吗?

0 个答案:

没有答案