从当前绑定的缓冲区中读取数据按照基本图元的形式绘制几何图形。该函数根据顶点数组中的坐标数据和指定的模式,进行绘制。调用该函数之前需要,调用glEnableVertexAttribArray、glVertexAttribPointer等设置顶点属性和数据。如果要 glDrawArrays 和 glDrawElements 正确进行绘制的话,必须在之前 调用带有相应参数的 glEnableClientState 方法。glDrawArrays使用的是顶点,而glDrawElements使用的是顶点数组的索引。
/* Enable vertex arrays. */
glEnableClientState( GL_VERTEX_ARRAY );
/* Enable texture arrays. */
glEnableClientState( GL_TEXTURE_COORD_ARRAY );
你可以使用glVertexAttribPointer预先指定单独的顶点,法线和颜色数组,而不是调用GL过程来传递每个单独的顶点属性并使用它们通过单次调用glDrawArrays来构造图元序列。
void glDrawArrays( GLenum mode,
GLint first,
GLsizei count);
mode
Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_

本文介绍OpenGL中的glDrawArrays函数,用于从缓冲区读取数据绘制几何图形。在调用该函数前,需配置顶点属性和数据。glDrawArrays基于顶点坐标,而glDrawElements依赖于顶点数组的索引。函数接受模式类型、起始索引和元素计数作为参数,支持多种基本图元的绘制。
最低0.47元/天 解锁文章
3097

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



