#include <GL/glut.h>
void MyDisplay(void);
int main(int argc, char **argv)
{
//设置窗口的大小
glutInitWindowSize(400, 400);
//设置窗口在屏幕的位置
glutInitWindowPosition(500, 200);
//设置显示格式: GLUT_RGB<使用RGB颜色> GLUT_DOUBLE<使用双缓冲>
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
//对GLUT进行初始化,格式死板,记住即可
glutInit(&argc, argv);
//根据当前设置的信息创建窗口,参数是窗口的标题。注意:glutMainLoop(),才可以看到创建的窗口
glutCreateWindow("OpenGL first test!");
//设置一个函数,当需要画图的时候,这个函数会被调用,这样说不准确,准确的说法初学者不好理解,
//暂且这样说吧
glutDisplayFunc(MyDisplay);
glClearColor(0.1, 0.3, 0.6, 0.0); /* Blue background */
//进行消息循环
glutMainLoop();
return 0;
}
void DrawRect()
{
//绘制一个矩形,四个参数分别表示位于对角线上两个顶点的横纵坐标,
//绘制一个矩形,四个参数分别表示位于对角线上两个顶点的横纵坐标,左下角到由右上角
glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
}
void MyDisplay(void)
{
//清除。GL_COLOR_BUFFER_BIT 表示清除颜色,当然了,还可以清除其他东西,这里不做过多介绍
glClear(GL_COLOR_BUFFER_BIT);
DrawRect();
//表示让前面的OpenGL命令立即执行(而不是让它们在缓冲区等待),
glFlush();
}