Opengl绘制流程
一、绘制函数
上一篇已经介绍了VAO、VBO和着色器的知识,为了方便理解,VAO与VBO作为几何数据,顶点着色器vs与片段着色器fs作为材质程序

接下来需要告诉GPU,请使用准备好的几何数据与材质程序,来进行绘制;
//1、设置接下来绘制的时候,所使用的Shader程序
void glUseProgram (GLuint program);//2、设置接下来绘制的时候,所使用VAO几何信息
void glBindVertexArray(GLuint array);//3、向GPU端发出渲染命令(DrawCall)
// mode:绘制模式(GLTRIANGLES,GL LINES)
// first:从第几个顶点数据开始绘制
// count:绘制到第几个顶点数据
void glDrawArrays(GLenum mode, GLint first, GLsizei count);
二、参数解析
1.1 绘制命令的顶点选用
void glDrawArrays(GLenum mode, GLint first, GLsizei count);

注意:三角形最少需要三个点,直线最少需要两个点
1.2 绘制命令中的mode
void glDrawArrays(GLenum mode, GLint first, GLsizei count);
mode:决定了对于输入的几何顶点,如何相连为三角形或直线
- GL_TRIANGLES:每三个顶点构成一个三角形,不足三个则忽略

- GL_TRIANGLE_STRIP:遵从如下规则:
① 如果末尾点序号n为偶数,则链接规则为:[n-2 n-1 n]
② 如果末尾点序号n为奇数,则链接规则为:[n-1 n-2 n]

- GL_TRIANGLE_FAN:绘制为扇形序列,以v0为起点

- GL_LINES:每两个顶点构成一个直线

- GL_LINE STRIP:遵从如下规则:

