欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

# opengl学习之路(1)

程序员文章站 2022-07-04 18:49:56
...

opengl的编写主要依靠c++ 所以要精通c++
现在开始学习

glutInit(&argc,argc);//对 GLUT 进行初始化,这个函数必须在其它的 GLUT 使用之前调用一次。其格式比较死板,一般照抄这句 
glutInit(&argc,argv)就可以了.
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);设置显示方式,其中GLUT_RGB表示使用RGB颜色,与之对应的还有GLUT_INDEX (表示使用索引颜色)。GLUT_SINGLE 表示使用单缓冲,与之对应的还有 GLUT_DOUBLE(使用双缓冲)。
glutInitWindowPosition(100, 100);设置窗口左上角的位置 数值是像素大小
glutInitWindowSize(400, 400);设置窗口的大小
glutCreateWindow("窗口名字")//根据前面设置的信息创建窗口。参数将被作为窗口的标题。窗口被创建后, 并不立即显示到屏幕上。需要调用 glutMainLoop 才能看到窗口。
glutDisplayFunc(&myDisplay)//设置一个函数,当需要进行画图时,这个函数就会被调用
一般就是创建一个  void myDisplay(){}函数 然后把自己想画的放里面就行


一整套为
int main(int argc, char *argv[])
{
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
 glutInitWindowPosition(100, 100);
 glutInitWindowSize(400, 400);
 glutCreateWindow("第一个 OpenGL 程序");
 glutDisplayFunc(&myDisplay);
 glutMainLoop();
 return 0;
}
glClear 清除。GL_COLOR_BUFFER_BIT 表示清除颜色,glClear 函数还可以清除其它的东西
glClear(GL_COLOR_BUFFER_BIT);
glRectf,画一个矩形。四个参数分别表示了位于对角线上的两个点的横、纵坐标。
 glFlush,保证前面的 OpenGL 命令立即执行(而不是让它们在缓冲区中等待)。其作用跟 fflush(stdout) ?类似。