WebGL - 在分配变量变量时不会渲染顶点

时间:2015-01-02 19:01:50

标签: html5 glsl webgl

我的webgl程序呈现一个白色方块,但每当我尝试将变量变量传递给片段着色器时它就会消失,即使所有片段着色器都是:`gl_FragColor = vec4(1.0,1.0,1.0,1.0);

这不会产生什么

   <script id="shader-vs" type="x-shader/x-vertex">
        attribute vec3 vertexPos;
        attribute vec4 aColor;

        varying vec4 color;

        void main(void)
        {
            gl_Position = vec4(vertexPos, 1.0);
            color = aColor;
        }
    </script>
    <script id="shader-fs" type="x-shader/x-fragment">
        precision mediump float;

        varying vec4 color;

        void main(void) 
        {
            gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);
        }
    </script>

这会呈现一个白色方块

    <script id="shader-vs" type="x-shader/x-vertex">
        attribute vec3 vertexPos;
        attribute vec4 aColor;

        varying vec4 color;

        void main(void)
        {
            gl_Position = vec4(vertexPos, 1.0);
            //color = aColor;
        }
    </script>
    <script id="shader-fs" type="x-shader/x-fragment">
        precision mediump float;

        varying vec4 color;

        void main(void) 
        {
            gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);
        }
    </script>

1 个答案:

答案 0 :(得分:1)

在查看我的代码后,我注意到我只将aColor发送到5个顶点中的1个,通过使我的颜色数组4 * 5而不是4 * 1

来解析它