个人学习备忘而已。
#include "GL/glut.h"
#include "stdlib.h"
void
myDisplay(void)
{
glClear(GL_COLOR_BUFFER_BIT); //函数的作用是用当前缓冲区清除值
/*
GL_COLOR_BUFFER_BIT:
当前可写的颜色缓冲
GL_DEPTH_BUFFER_BIT:
深度缓冲
GL_ACCUM_BUFFER_BIT: 累积缓冲
GL_STENCIL_BUFFER_BIT: 模板缓冲
*/
glRectf(-0.5f,-0.5f,0.5f,0.5f); //画一个矩形!矩形!矩形!矩形!四个参数分别表示了位于对角线上的两个点的横、纵坐标。
glFlush(); //刷新OpenGl命令队列,如果不调用此方法,那么重新绘制的图形将无法显示。即刷新opengl界面获得新显示结果。
}
int main(int argc,char
*argv[])
{
glutInit(&argc,argv); //初始化GULT库,必须具有int和char两个参数
glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE); //设置初始显示模式
/*
GLUT_RGB
0x0000 指定 RGB 颜色模式的窗口
GLUT_RGBA 0x0000 指定 RGBA 颜色模式的窗口
GLUT_INDEX
0x0001 指定颜色索引模式的窗口
GLUT_SINGLE 0x0000 指定单缓存窗口
GLUT_DOUBLE 0x0002
指定双缓存窗口
GLUT_ACCUM 0x0004 窗口使用累加缓存
GLUT_ALPHA 0x0008 窗口的颜色分量包含 alpha
值
GLUT_DEPTH 0x0010 窗口使用深度缓存
GLUT_STENCIL 0x0020
窗口使用模板缓存
GLUT_MULTISAMPLE 0x0080 指定支持多样本功能的窗口
GLUT_STEREO 0x0100
指定立体窗口
GLUT_LUMINANCE 0x0200
窗口使用亮度颜色模型
*/
glutInitWindowPosition(100,100); //窗口位置
glutInitWindowSize(400,400); //窗口大小
glutCreateWindow("First
OpenGL"); //创建一个顶级窗口,ASCII的字符串作为窗口名
glutDisplayFunc(&myDisplay);
//glutdisplayfunc不断调用mydisplay函数。
glutMainLoop(); //用于启动程序,并使程序不断在运行不退出,即进入消息循环
return
0;
}
原文:http://www.cnblogs.com/bitfirefly/p/3613199.html