- 1、本文档共134页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3_OpenGL绘图
多媒体开发与编程 3 OpenGL图形绘制 基本概念 基于Glut开发OpenGL程序 *基于Win32 API 开发OpenGL程序 基于MFC开发OpenGL程序 引言 OpenGL能干什么? 游戏设计 引言 OpenGL能干什么? 古墓丽影 引言 OpenGL能干什么? 引言 OpenGL能干什么? 引言 OpenGL能干什么? 引言 OpenGL能干什么? 实物模型 引言 OpenGL能干什么? 宇宙星球 引言 OpenGL能干什么? 过程演示 3.1 概述 一、发展简史 在计算机发展初期,人们就开始从事计算机图形的开发,但直到20世纪80年代末、90年代初,三维图形才开始迅速发展,涌现出各种三维图形工具软件包,比较典型的有SGI公司开发的IRIS图形库(IRIS Graphics Library,IRIS GL)。IRIS GL是一个工业标准的3D图形软件接口,功能虽然强大但移植性不好,于是SGI公司便在此基础上开发了开放图形库(Open Graphics Library,OpenGL)。OpenGL被设计成独立于硬件、独立于窗口系统、在运行各种操作系统的各种计算机上都可用的标准化接口,并能在网络环境下以C/S模式工作,已成为专业图形处理、科学计算等高端应用领域的标准图形库,任何软、硬件厂商均可自由使用,这让它备受业界人士的追捧,应用领域十分宽广,如军事、电视广播、CAD/CAM/CAE、娱乐、艺术造型、医疗影像、虚拟世界等。 3.1 概述 3.1 概述 二、性能与特点 (1)跨平台特性 (2)应用的广泛性 (3)网络透明性 (4)高质量和高性能 (5)出色的编程特性 3.1 概述 三、工作流程 整个OpenGL的基本工作流程如下图所示 3.1 概述 四、操作步骤 根据OpenGL的基本工作流程,可以归纳出在OpenGL中进行主要的图形操作直至在计算机屏幕上渲染绘制出三维图形景观的基本步骤: 根据基本图形单元建立景物模型,并且对所建立的模型进行数学描述。 把景物模型放在三维空间中的合适的位置,并且设置视点(viewpoint)以观察所感兴趣的景观。 计算模型中所有物体的色彩,其中的色彩根据应用要求来确定,同时确定光照条件、纹理粘贴方式等。 把景物模型的数学描述及其色彩信息转换至计算机屏幕上的象素,这个过程也就是光栅化(rasterization)。 在这些步骤的执行过程中,OpenGL可能执行其他的一些操作,例如自动消隐处理等。另外,景物光栅化之后被送入帧缓冲器之前还可以根据需要对象素数据进行操作。 3.1 概述 五、库函数 (1)基本库GL 这些函数都以“gl”为前缀,主要功能包括物体描述、平移、旋转、缩放、光照、纹理、材质、像素、位图、文字处理等。所有OpenGL 提供的操作都可以使用这些函数来实现,而且对于不同的软件和硬件平台,这些函数的使用是完全相同的,这个特性注定了OpenGL程序完美的可移植性。 (2)实用库GLU 基本的OpenGL不支持传统上同图形标准相关的一些几何对象,为了减少一些编程负担,OpenGL提供了实用库。这是OpenGL基本库的一套子程序,这些函数以“glu”为前缀,主要功能包括绘制二次曲面、NURBS曲线曲面、复杂多边形以及纹理、矩阵管理等。实用库中的所有函数全都是由OpenGL基本库函数来编写的,使用方法与基本库相同。 3.1 概述 GLUT: 对应于实用库GLU,OpenGL还有一个实用工具库——GLUT。GL是核心,GLU是对GL的部分封装,二GLUT是OpenGL的跨平台工具库。GL中包含了最基本的3D函数,而GLU似乎对GL的辅助,如果算数好,不用GLU的情况下,也是可以做出同样的效果。 相对来说,GLUT是基本的窗口界面,是独立于GL和GLU的。如果不喜欢用GLUT,则可以借用MFC和Win32窗口等来代替。但GLUT是跨平台的,这就保证编出的程序也是跨平台的。如果是用MFC或者Win32实现,则只能在windows操作系统上使用。 我们选用OpenGL的一个很大原因就是因为它的跨平台性,所以我们应该可以尽量的使用GLUT库。 3.1 概述 (3)辅助库AUX OpenGL是一个图形标准,在OpenGL中没有提供窗口管理和消息事件响应的函数,这样使用标准C 编写OpenGL程序很不方便。为了方便用户而提供了辅助库,包括31个函数,以“aux”为前缀,提供了一些基本的窗口管理函数、事件处理函数和一些简单模型的制作函数等,例如,定义窗口的大小、处理键盘时间、鼠标击键事件、绘制多面体等等。 见下表。 3.1 概述 三维物体绘制函数 3.1 概述 六、基本语法 OpenGL的数据类型定义可以与其它语言,如C/C
您可能关注的文档
最近下载
- 最美家庭事迹材料范文1500字(整理15篇).docx VIP
- 基金投顾系列(二):海外投顾代表之Vanguard-20200618-海通证券-19页.pdf VIP
- 人教版九上《Unit 9 I like music that I can dance to》作业设计.docx VIP
- 雨林木风GhostXPSP3WindowsXP系统YN201111.doc VIP
- 12-3DMine矿山工程软件自学教程.pdf VIP
- 2025年甘肃省白银市靖远县人民法院招聘司法辅助人员笔试备考试题及答案解析.docx VIP
- APQP第三版-附录表格B-E.xlsx VIP
- 中小学财务测试题答案.pdf VIP
- 20201228-海通证券-基金投顾系列(三):海外投顾代表之Fidelity.pdf VIP
- 00-精益生产跟精益工具.ppt VIP
文档评论(0)