Opengl es OpenGL ES三角带错误

Opengl es OpenGL ES三角带错误,opengl-es,Opengl Es,抽签: float coords[] = { -1.0f, 1.0f, 0.0f, // 0, Top Left -1.0f, -1.0f, 0.0f, // 1, Bottom Left 1.0f, -1.0f, 0.0f, // 2, Bottom Right 1.0f, 1.0f, 0.0f, // 3, Top Right }; fl

抽签:

    float coords[] = {
              -1.0f,  1.0f, 0.0f,  // 0, Top Left
              -1.0f, -1.0f, 0.0f,  // 1, Bottom Left
               1.0f, -1.0f, 0.0f,  // 2, Bottom Right
               1.0f,  1.0f, 0.0f,  // 3, Top Right
    };


    float texCoords[] = { 
            0.0f, 0.0f, 
            0.0f, 1.0f, 
            1.0f, 1.0f, 
            1.0f, 0.0f, 
        };
正常地画,但是

gl.glDrawArrays(GL10.GL_TRIANGLE_FAN, 0, coords.length/dimension);

这只画了半个正方形,为什么

要使其起作用,点的顺序应为:TL、BL、TR、BR

指定风扇时,点围绕第一个点。每个三角形由第一个点、列表上的下一个点和上一个三角形的最后一个点组成

有了这条带子就不一样了。条形三角形使用列表中上一个三角形和新三角形的最后两个点。这有一个副作用:每个三角形都有相反的绕组(顺时针比逆时针,然后再顺时针,依此类推)


要使其工作,点的顺序应为:TL、BL、TR、BR

指定风扇时,点围绕第一个点。每个三角形由第一个点、列表上的下一个点和上一个三角形的最后一个点组成

有了这条带子就不一样了。条形三角形使用列表中上一个三角形和新三角形的最后两个点。这有一个副作用:每个三角形都有相反的绕组(顺时针比逆时针,然后再顺时针,依此类推)


如果我想画一个球体顶点,我应该使用三角形扇形的三角形带吗?因为在一个球体的顶点上,我又看到了一个半球体?看到了吗:如果我想画一个球体的顶点,我应该使用三角形带或者三角形扇形?因为在一个球体顶点上,我又看到了一个半球体?看到了吗
gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0, coords.length/dimension);