OpenGL绘制正方形实现过程

工程搭建和准备工作请看这里

项目运行的效果大致如下

1

Main 函数

2

让我们先大致了解一下,changeSize ,RenderScene,SpecialKeys 之间的关系吧

3

setupRC

这个函数,主要有以下功能,设置背景颜色,初始化固定着色器,图元设置,获取顶点数据,关闭批理。setUpRC主要为了后续的渲染做数据准备工作。


4

changeSize

主要是为了设置程序的视口,在第一次运行或者窗口被人为的变化时调用

    glViewport(0,0, w, h);

RenderScene

这个函数是渲染的最终实现者

1.清理一个或者一组特定的缓存

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT);

2.设置固定的着色器

    shaderManager.UseStockShader(GLT_SHADER_IDENTITY,vRed);

3.提交着色器

triangleBatch.Draw();

4.交换缓存区

    glutSwapBuffers();


5

SpecialKeys函数

当用户手动切换上下左右键时,系统调用本函数。本函数的作用是,重新计算各个顶点的坐标,提交给批处理类,发出重新渲染命令。

示范代码

你可能感兴趣的:(OpenGL绘制正方形实现过程)