理解GL_TRIANGLE_STRIP(译)

理解GL_TRIANGLE_STRIP(译)

  (2013-09-12 10:19:06)
标签: 

gl_triangle_strip

 

opengl

 

三角形

 

绘图

 

it

分类: opengles

原文:http://www.matrix44.net/cms/notes/opengl-3d-graphics/understanding-gl_triangle_strip

在某些情况下GL_TRIANGLE_STRIP的绘图方式常常使人困惑,下面将对其进行解释。

 GL_TRIANGLE_STRIP是将顶点传递给opengl渲染管道线(pipeline)进行进一步处理的方式(创建几何图形)。还有另外两种GL_TRIANGLESGL_TRIANGLE_FAN. 关于另外两种方式,参考opengl programming guide

观察下图,感受一下triangle strip

理解GL_TRIANGLE_STRIP(译)

这个strip 6个点构成了四个三角形,顶点传递到渲染管道线的顺序是影响环绕顺序的关键。

创建一个三角形至少需要三个顶点,每一个新增的顶点都形成一个新的三角形。三角形将根据顶点序号的奇偶自行创建:

偶数环绕规则:

理解GL_TRIANGLE_STRIP(译)

奇数环绕规则:

理解GL_TRIANGLE_STRIP(译)

我们来剖析一下上面的例子感受一下:

l   V1,v2,v3形成了第一个三角形,你也可以说v3是奇数,所以由v1,v2,v3构成。

l   V4是偶数,所以下一个三角形由v3,v2,v4构成。

l   V5是奇数,所以下一个三角形由v3,v4,v5构成

l   V6是偶数,所以下一个三角形由v5,v4,v6构成


考虑到两种绘制三角形的方式,环绕方式作为保留。

Due to the two different ways of building the triangles, the winding order (counter-clockwise, GL_CCW) is preserved.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
gl_triangle_strip是OpenGL中的一种绘制三角形的图元类型。它通过连接三角形的三个顶点来绘制连续的三角形条带。 使用gl_triangle_strip绘制三角形条带时,只需要指定顶点的坐标即可。OpenGL会自动根据指定的顶点顺序来连接三角形。为了绘制连续的三角形条带,每加入一个新的顶点就会形成一个新的三角形,并与前一个三角形共用一条边。 gl_triangle_strip可以用来绘制复杂的图形,比如平面和曲面等。由于它只需要指定顶点坐标,所以绘制复杂图形时可以使用较少的顶点,减少内存开销。 然而,使用gl_triangle_strip也存在一些限制。首先,gl_triangle_strip的顶点顺序是固定的,如果不正确地指定顶点顺序,可能导致绘制错误的图形。其次,gl_triangle_strip只能绘制闭合的图形,不能绘制不闭合的图形。 为了使用gl_triangle_strip绘制图形,首先需要启用OpenGL的相关功能,然后使用glBegin函数和glEnd函数包裹住待绘制的代码块。在代码块中,使用glVertex函数指定顶点坐标。 综上所述,gl_triangle_strip是一种绘制三角形的图元类型,可以用来绘制复杂的图形。它通过连接三角形的顶点来绘制连续的三角形条带。在使用gl_triangle_strip绘制图形时需要注意顶点顺序的指定,只能绘制闭合的图形。同时,gl_triangle_strip绘制图形时可以使用较少的顶点,减少内存开销。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值