4OpenGL编程基础.ppt_第1页
4OpenGL编程基础.ppt_第2页
4OpenGL编程基础.ppt_第3页
4OpenGL编程基础.ppt_第4页
4OpenGL编程基础.ppt_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机辅助设计及图形学第4讲 OpenGL基础,华中科技大学CAD中心 吴义C,1,主要内容,OpenGL的主要功能 OpenGL的绘制流程 OpenGL的基本语法 OpenGL的GLUT工具 VC开发OpenGL,2,OpenGL图形软件包,OpenGL是SGI(Silicon Graphics Inc.)公司对IRIS GL进行改进,扩展可移植性,形成的一个跨平台开放式图形编程接口。 目前,OpenGL标准由1992年成立的独立财团OpenGL Architecture Review Board(ARB)以投票方式产生,并制成规范文档公布。,3,OpenGL图形库

2、的特点,非面向对象 非实体造型核心 动态库,OpenGL的主要功能,模型绘制 模型观察 颜色模式 光照模型 字体、位图和图像处理,5,OpenGL的主要功能(OpenGL PG.pdf),纹理映射 实时动画 交互技术 反走样、雾化、融合 细分显示 NURBS,6,OpenGL的绘制流程工作方式,7,图 OpenGL图形处理系统在计算机系统中的层次结构,一个完整的窗口系统的OpenGL图形处理系统的结构为:最底层为图形硬件,第二层为操作系统,第三层为窗口系统,第四层为OpenGL,最上面的层为应用软件。,OpenGL的绘制流程流水线,8,图 一条简化的OpenGL绘制流水线,OpenGL命令将被

3、放在一个命令缓冲区中,这样命令缓冲区中包含了大量的命令、顶点数据和纹理数据。当缓冲区被清空时,缓冲区中的命令和数据都将传递给流水线的下一个阶段。,OpenGL内部处理过程,OpenGL的基本语法3.2版本相关库,10,OpenGL核心库:gl(41个函数) OpenGL实用程序库: glu(115个函数) OpenGL编程辅助库:aux OpenGL实用程序工具包(OpenGL utility toolkit,GLUT):glut Windows专用库:wgl,OpenGL的基本语法命名规则,11,OpenGL函数都遵循一个命名约定,即采用以下格式: 例如函数glColor3f(),gl表示这

4、个函数来自库gl.h,color表示该函数用于颜色设定,3f表示这个函数采用了三个浮点数参数。,OpenGL的基本语法数据类型,12,表2.1 OpenGL的数据结构,OpenGL程序实例头文件包含,13,利用OpenGL实现图形绘制,首先要引入OpenGL核心库以及其他需要使用的库的头文件。 GLUT保证了gl.h和glu.h被正确包含。 #include #include ,OpenGL程序实例GLUT窗口管理,14,初始化( glutInit ) 创建窗口( glutCreateWindow) 设定窗口的显示模式( glutInitDisplayMode) 指定窗口的位置和大小( glu

5、tInitWindowPosition和glutInitWindowSize ) 指定窗口的显示内容函数( glutDisplayFunc) 运行框架( glutMainLoop),OpenGL程序实例绘制图形,15,指定窗口背景色( glClearColor) 颜色管理,使用RGB颜色模型。一种颜色用红、绿、蓝三种颜色成分混合而成,每种颜色成分使用0.0到1.0之间的任意有效浮点数来表示颜色值。,OpenGL程序实例绘制图形,16,表4 OpenGL的一些常用混合色,OpenGL程序实例VC窗口绘制,17,像素设定 int ChoosePixelFormat( HDC hdc, CONST PIXELFORMATDESCRIPTOR * ppfd ); BOOL SetPixelFormat( HDC hdc, int iPixelFormat, CONST PIXELFORMATDESCRIPTOR * ppfd );,渲染环境 HGLRC wglCreateContext( HDC hdc ); BOOL wglMakeCurrent( HDC hdc, HGLRC hglrc );,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论