opengl编程轻松入门

opengl编程轻松入门

ID:33885912

大小:1.04 MB

页数:45页

时间:2019-03-01

opengl编程轻松入门_第1页
opengl编程轻松入门_第2页
opengl编程轻松入门_第3页
opengl编程轻松入门_第4页
opengl编程轻松入门_第5页
资源描述:

《opengl编程轻松入门》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、OpenGL编程轻松入门先编译运行一个简单的例子,这样我们可以有一个直观的印象先编译运行一个简单的例子,这样我们可以有一个直观的印象。从这个例子我们可以看到OpenGL可以做什么,当然这个例子只做了很简单的一件事--绘制一个彩色的三角形。除此以外,我们还可以看到典型的OpenGL程序结构及openGL的运行顺序。例1:本例在黑色的背景下绘制一个彩色的三角形,如图一所示。#include#includevoidbackground(void){glClearCol

2、or(0.0,0.0,0.0,0.0);//设置背景颜色为黑色}voidmyDisplay(void){glClear(GL_COLOR_BUFFER_BIT);//buffer设置为颜色可写glBegin(GL_TRIANGLES);//开始画三角形glShadeModel(GL_SMOOTH);//设置为光滑明暗模式glColor3f(1.0,0.0,0.0);//设置第一个顶点为红色glVertex2f(-1.0,-1.0);//设置第一个顶点的坐标为(-1.0,-1.0)glColor3f(0.

3、0,1.0,0.0);//设置第二个顶点为绿色glVertex2f(0.0,-1.0);//设置第二个顶点的坐标为(0.0,-1.0)glColor3f(0.0,0.0,1.0);//设置第三个顶点为蓝色glVertex2f(-0.5,1.0);//设置第三个顶点的坐标为(-0.5,1.0)glEnd();//三角形结束glFlush();//强制OpenGL函数在有限时间内运行}voidmyReshape(GLsizeiw,GLsizeih){glViewport(0,0,w,h);//设置视口glM

4、atrixMode(GL_PROJECTION);//指明当前矩阵为GL_PROJECTIONglLoadIdentity();//将当前矩阵置换为单位阵if(w<=h)gluOrtho2D(-1.0,1.5,-1.5,1.5*(GLfloat)h/(GLfloat)w);//定义二维正视投影矩阵elsegluOrtho2D(-1.0,1.5*(GLfloat)w/(GLfloat)h,-1.5,1.5);glMatrixMode(GL_MODELVIEW);//指明当前矩阵为GL_MODELVIEW}

5、intmain(intargc,char**argv){/*初始化*/glutInit(&argc,argv);glutInitDisplayMode(GLUT_SINGLE

6、GLUT_RGB);glutInitWindowSize(400,400);glutInitWindowPosition(200,200);/*创建窗口*/glutCreateWindow("Triangle");/*绘制与显示*/background();glutReshapeFunc(myReshape);glutDispla

7、yFunc(myDisplay);glutMainLoop();return(0);}首先创建工程,其步骤如下:1)创建一个Win32ConsoleApplication。2)链接OpenGLlibraries。在VisualC++中先单击Project,再单击Settings,再找到Link单击,最后在Object/librarymodules的最前面加上OpenGL32.libGLu32.libGLaux.lib3)单击ProjectSettings中的C/C++标签,将Preprocessorde

8、finitions中的_CONSOLE改为__WINDOWS。最后单击OK。现在你可以把下面的例子拷贝到工程中去,编译运行。你可以看到一个彩色的三角形。我们先看看main函数。函数中以glut开头的函数都包含在glut.h中。GLUT库的函数主要执行如处理多窗口绘制、处理回调驱动事件、生成层叠式弹出菜单、绘制位图字体和笔画字体,以及各种窗口管理等任务。·glutInit用来初始化GLUT库并同窗口系统对话协商。·glutInitDisplayMode用来确定所创建窗口的显示模式。本例中的参数GLUT_S

9、INGLE指定单缓存窗口,这也是缺省模式,对应的模式为GLUT_DOUBLE双缓存窗口。参数GLUT_RGB指定颜色RGBA模式,这也是缺省模式,对应的模式为GLUT_INDEX颜色索引模式窗口。·glutInitWindowSize初始化窗口的大小,第一个参数为窗口的宽度,第二个参数为窗口的高度,以像素为单位。·glutInitWindowPosition设置初始窗口的位置,第一个参数为窗口左上角x的坐标,第二个参数为窗口左上角y的坐标,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。