因为要做图形学的实验,又是要以OPENGL为基础,所以就稍微在网上查了一些资料。
我是带着目的去学习的,所以就没有打基础之类的学很深,浅尝。
今天试着搭简单框架,画出一个图形。大神请出门左转。
#include<gl/glut.h> #include<stdlib.h> void mydisplay(void) { glClear(GL_COLOR_BUFFER_BIT); //清楚各种缓冲(颜色,深度,模式等等),先不用管 glBegin(GL_TRIANGLES); glVertex3f(1.0,0.0,0.0); glVertex3f(0.0,0.0,0.0); glVertex3f(0.0,1.0,0.0); glEnd(); glFlush(); //强制刷新缓冲 } void main(int argc,char**argv) { glutInit(&argc ,argv); //初始化 glutInitWindowPosition( 200 , 100); //设置初始OPENGL窗口位置 glutInitWindowSize( 500,500); //设置初始窗口宽高 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); //设置窗口显示模式 /* 1:GLUT_RGBA或者GLUT_RGB。指定一个RGBA窗口,这是一个默认的颜色模式。 2:GLUT_INDEX。指定颜色索引模式。 这个显示模式还允许你选择单缓冲区或双缓冲区窗口。 1:GLUT_SINGLE.单缓冲区窗口。 2:GLUT_DOUBLE.双缓冲区窗口,这是产生流畅动画必须选的。 还可以指定更多,如果你想指定一组特殊的缓冲的话,用下面的变量: 1:GLUT_ACCUM.累积缓冲区。 2:GLUT_STENCIL.模板缓冲区。 3:GLUT_DEPTH.深度缓冲区。 */ glutCreateWindow("第一个OPENGL窗口"); //设置窗口名称 glutDisplayFunc(mydisplay); //调用显示窗口函数 glutMainLoop(); //让程序一直运行下去的循环函数 }