標籤:
1 #include <GL/freeglut.h> 2 3 static void RenderSceneCB() 4 { 5 glClear(GL_COLOR_BUFFER_BIT); 6 glutSwapBuffers(); 7 } 8 9 static void InitializeGlutCallbacks()10 {11 glutDisplayFunc(RenderSceneCB);12 }13 14 15 int main(int argc, char** argv)16 {17 glutInit(&argc, argv);18 glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGBA);19 glutInitWindowSize(1024, 768);20 glutInitWindowPosition(100, 100);21 glutCreateWindow("Tutorial 01");22 23 InitializeGlutCallbacks();24 25 glClearColor(0.0f, 0.0f, 0.0f, 0.0f);26 27 glutMainLoop();28 29 return 0;30 }View Code
glutInit(&argc, argv);
初始化glut,可以在命令列中使用‘-sync‘ 和 ‘-gldebug’參數來進行調試錯誤。
glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGBA);
配置渲染參數,GLUT_DOUBLE:代表使用雙緩衝機制;GLUT_RGBA:渲染色彩採用格式。
glutDisplayFunc(RenderSceneCB);
註冊渲染函數(每一幀都會調用)
glClear(GL_COLOR_BUFFER_BIT);
glutSwapBuffers();
渲染時,先清除之前的渲染資料,然後把後台渲染資料切換到前台完成重新渲染
freeglut第一步