OpenGL状态机
一,OpenGL是一个状态机matrix中包括:
model view (模型矩阵) worldpos(世界坐标,也称为顶点坐标)通过mv(模型矩阵)转到cameru摄像机下(根据右手坐标系,只有在Z的负方向才可以看得见)
projection (投影矩阵)将摄像机下的三维信息转换投影到二维屏幕上
glVertex3f(0.0f, 0.0f, -0.5f);//在世界坐标系下,通过模型矩阵,转到视口,其中最后一个参数就是在Z的负方向,取值越大摄像机越远,可观测点越多
二 -, color 当前颜色,绘制会从这里取当前颜色,而且只有一个
clear color 当前擦除颜色
point size 点大小
OpenGL流程
1.首先create Window
2.RC(OpenGL渲染设备),所有状态机状态未知,需要进行手动设置。
3. 根据要操作的对象,先选择它(glMatrixMode),然后再设置它
//初始化OpenGL的
/*画点需要先设置矩阵*/
glMatrixMode(GL_PROJECTION);//告诉显卡要操作投影矩阵
//设置投影矩阵,第一个参数是角度;第二个角度宽高比,写死的;第三个参数最近能看多远,最远能看多远
gluPerspective(50.0f, 800.0f / 600.0f, 0.1f, 1000.0f);
glMatrixMode(GL_MODELVIEW);//设置模型矩阵,用来确定摄像机能看到的
glLoadIdentity();//给它一个单位矩阵,不会对世界坐标进行任何影响,世界坐标系是多少,视口坐标也是多少