WebGL顶点数组顺序

WebGL顶点数组顺序,webgl,Webgl,我刚刚阅读了mozilla WebGL教程,遇到了一个问题 我想知道为什么一个简单正方形的位置数组应该是 const positions = [ -1.0, 1.0, // 1 - top left 1.0, 1.0, // 2 - top right -1.0, -1.0, // 3 - bottom left 1.0, -1.0, // 4 - bottom right ]; 而不是 const positions = [ -1.0, 1

我刚刚阅读了mozilla WebGL教程,遇到了一个问题

我想知道为什么一个简单正方形的位置数组应该是

const positions = [
    -1.0,  1.0, // 1 - top left
     1.0,  1.0, // 2 - top right
    -1.0, -1.0, // 3 - bottom left
     1.0, -1.0, // 4 - bottom right
];
而不是

const positions = [
    -1.0,  1.0, // 1 - top left
     1.0,  1.0, // 2 - top right
     1.0, -1.0, // 4 - bottom right
    -1.0, -1.0, // 3 - bottom left
];
这对我来说更有意义


在第一种情况下(正确的一种情况),从顶点到顶点绘制正方形的线似乎应该交叉,但显然不是这样。

在该示例中,他们使用了
三角形带
索引:

使用顶点v0绘制一系列三角形(三边多边形), v1,v2,然后是v2,v1,v3(注意顺序),然后是v2,v3,v4,依此类推。 排序是为了确保所有三角形都使用 相同的方向,以便钢带能够正确地形成钢带的一部分 表面