教程我是根据西蒙的教程走的,他之前用的是 OpenGL 1,我们可以改为 OpenGL 2,只要别忘记初始化 context 时,版本选择 2 就好了。
这次我们在屏幕上画一个 三角形。
首先,我们清除一下缓冲区缓存:

1
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//1.
const GLfloat triangleVertices[] = {
0.0, 1.0, -9.0, // Triangle top centre
-1.0, -1.0, -6.0, // bottom left
1.0, -1.0, -6.0, // bottom right
};

//2.
glVertexPointer(3, GL_FLOAT, 0, triangleVertices);
//3.
glEnableClientState(GL_VERTEX_ARRAY);
//4.
glDrawArrays(GL_TRIANGLE, 0, 3);
//5.
glBindRenderbuffer(GL_RENDERBUFFER, viewRenderbuffer);
//6.
[context presentRenderbuffer:GL_RENDERBUFFER];

1.我们定义了一个长度为 9 的数组,数组中每三个元素定义一个顶点坐标 x, y, z。
2.告诉 OpenGL 我们的数据是什么格式,每个坐标有 3 个数组,float 类型,0是默认的,squareVerts 代表数据本身。
3.通知 OpenGL 我们将开启顶点绘制功能。
4.开启绘制,第一个参数代表我们将绘制一个三角形,第二个也是默认 0 ,第三个代表我们将绘制三个顶点,同理,四边形就是 4。
5.绑定 renderBuffer ,告诉 OpenGL 我们将使用这里面的数据。
6.绘制到屏幕上。