关于webl中TRIANGLES_STRIP

191 阅读1分钟

webgl中的三角形的绘制有三种方法分别是:

TRIANGLES:

每三个定点决定一个三角形例如[0 1 2][3,4,5][5,6,7] 顶点数与三角形是n:n/3的关系

TRIANGLES_FAN:

第0个定点是多所有三角形共享的,顶点数与三角形是n:n-2的关系(n定点数)

TRIANGLES_STRIP:

也n个定点形成n-2个三角形,但是要复杂一些,三角形的三个顶点索引中,

如果最大的索引是偶数i,组成的三角形的排列顺序是[i-2,i-1,i] i>=2

定点数是奇数,组成三角形的顺序是[i-1,i-2,i],i>=2,

举个栗子:

[0,1,2] 最大的索引2,偶数
[2,1,3] 3最大奇数
[2,3,4] 4最大偶数

之所以会存在这些顺序的规定是为了保证三角形都是按照相同的方向绘制的,是因为在某些场景之下,颠倒了顺序可能导致三角形被剔除