网站大量收购独家精品文档,联系QQ:2885784924

《05图形实验.pptVIP

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学实验 参考书 计算机图形学实验教程(OpenGL版),李胜睿等编著,机械工业出版社 NeHe教程 OpenGL官方站点: 红皮书、蓝皮书(上面站点有下载) 三维图形显示流程图 第一部分 OpenGL概述 Open GL原先是Silicon Graphics Incorporated(SGI公司)开发的图形接口。 OpenGL已成为跨平台的开放式三维图形编程接口 1992年,Open GL1.0正式发布。 Open GL ARB分别在1995、1998、2001、2002、2003年发布了1.1、1.2、1.3、1.4、1.5版本。 OpenGL特点 应用广泛 跨平台性 高质量和高性能 出色的编程特性 网络透明性 OpenGL的主要功能: 绘制模型: 各种变换: 着色模式: 光照处理: 纹理映射: 选择和反馈: 位图和图像: 制作动画: Windows下OpenGL编程常用的函数库: OpenGL图形库-----函数以gl开头,可以实现比较简单的绘制功能,这些函数可以运行在现在任何主流操作系统中。 OpenGL实用库-----函数以glu开头,其函数功能更高级一些,如绘制复杂的曲线曲面、高级坐标变换、多边形分割等,这些函数可以运行在现在任何主流操作系统中。 OpenGL辅助库-----函数以aux开头,它们是一些特殊的函数,包括简单的窗口管理、输入事件处理、某些复杂三维物体绘制等函数,它只能在Win32平台下运行。 OpenGL实用工具开发库----函数以glut开头,它们提供更为复杂的绘制功能。 Windows专用函数库-----以wgl开头,负责OpenGL与Windows窗口系统的连接。 如何在windows下利用Visual C++6.0调用OpenGL: 安装VC++6.0(如需详细的帮助文件,还安装MSN)。 将opengl32.lib,glu32.lib,glaux.lib文件放到vc下的Lib目录里,如:c:\Program Files\Microsot Visual Studio\VC98\Lib。 将gl.h,glu.h,glaux.h文件放到vc下的Include\GL目录里,如: c:\Program Files\Microsot Visual Studio\VC98\Include\GL。 将opengl32.dll,glu32.dll文件放到system目录里,如:C:\WINDOWS\system32 注:若想使用glut库,则相应的glut32.lib,glut.h,glut32.dll文件要分别放入上面所说的目录里。这三个文件系统不自带。 在程序的开头include头文件:gl.h,glu.h,glaux.h,glut.h (如果需要的话) 链接器中加入对应的库文件:opengl32.lib,glu32.lib,glaux.lib,glut32.lib (如果需要的话) OpenGL的工作顺序 构造几何要素(点、线、多边形、图像、位图),创建对象的数学描述;在三维空间上放置对象,选择合适的场景观察点。 计算对象的颜色,这些颜色可能直接定义,或由光照条件及纹理间接给出。 光栅化,把对象的数学描述和颜色信息转换到屏幕的像素。 OpenGL程序结构 基本语法: 基本函数使用gl作为函数名的前缀,如glClear( ); 实用函数使用glu作为函数名的前缀,如gluSphere( ); 辅助函数使用aux作为函数名的前缀,如auxInitPosition( ); 专用函数使用wgl作为函数名的前缀,如wglCreateContext( ); 基本常量名以GL开头,如GL_LINES; 实用常量名以GLU开头,如GLU_FILL; 某些函数后可以接不同的后缀以支持不同的数据类型和格式,如glVetex{234}{sifd}{v}(coords); 变量类型,如Glfloat,Glvoid,其实就是C中的float和void。 状态机制: OpenGL各种执行的命令都是在某种状态或模式模式下进行的,这些状态和模式一直有效地保持到改变它们之后。 许多状态变量可以通过glEnable( ),glDisable( )这两个函数来设置成有效或无效状态。 绝大部分状态变量都有一个默认值,在被设置成有效状态之后,可以用glGetBooleanv( ),glGetDoublev( ),glGetFloatv( ),glGetIntegerv( )来获取某个状态变量的值。 有些状态变量有特殊的查询函数,如glGetError( )。 使用glPushAttrib( )和glPopAttrib( ),可以存储和恢复最近的状态变量值。 程序的基本框架: 第一部分是初始化部分。主要是设置一

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档