OpenGL中,如果要绘制图元,一般来说会使用:
glBegin(GL_LINES);
glVertex3f(0.0f, 0.0f, 0.0f);
glVertex3f(1.0f, 0.0f, 0.0f);
glEnd();
但是,如果顶点数太多,这种方法需要频繁调用函数,效率太低。这就要用到顶点数组。
1. 启用顶点数组
OpenGL是一种状态机,在用某一功能前,必须先开启这项功能,用完之后,也可以关闭。
启用和关闭顶点数组的代码如下:
glEnableClientState(GL_VERTEX_ARRAY); //启用
glDisableClientState(GL_VERTEX_ARRAY); //关闭
其中,GL_VERTEX_ARRAY是数组的类型,共有八种:
- GL_VERTEX_ARRAY
- GL_COLOR_ARRAY
- GL_SECOND_COLOR_ARRAY
- GL_INDEX_ARRAY
- GL_NORMAL_ARRAY
- GL_FOG_COORDINATE_ARRAY

OpenGL中的顶点数组可以提高大量顶点绘制的效率。启用顶点数组包括开启和关闭操作,如GL_VERTEX_ARRAY。指定数组使用glVertexPointer函数,定义顶点坐标、数据类型和内存地址。绘图方法包括glArrayElement、glDrawElements和glDrawArrays,分别用于按索引绘制、指定索引数组绘制和连续数组绘制。

2813

被折叠的 条评论
为什么被折叠?



