OpeGL自学文档.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OpeGL自学文档

12.6 多媒体知识讲座(内容见讲座文稿) 12.7 OpenGL 编程基础 12.7.1计算机图形处理软件 通用编程软件包:常常是图形库,提供了生成各种图形、实现图形的处理和输入输出操作、控制和处理各种图形设备以及交互过程中的各种事件,如OpenGL。 专用编程软件包:一般由程序员在开发时使用。专用应用图形软件包是具有图形处理能力的交互式图形软件系统,为非程序员提供的而且往往应用于某个或某些领域,如AutoCAD、3DS MAX等。专用应用图形软件包使用范围广,使用人员众多。 12.7.2 Windows图形环境介绍与图形软件开发(略) 12.7.3 OpenGL介绍 1、OpenGL基本概念 OpenGL(Open Graphics Library, 即开放性图形库) 是以SGI的GL三维图形库为基础制定的一个开放式三维图形标准。SGI在1992年7月发布了1.0版。OpenGL规范由ARB(OpenGL Architecture Review Board,OpenGL结构评审委员会)负责管理,目前加入OpenGL ARB的成员有SGI、Microsoft、Intel、IBM、SUN、Compaq、HP等公司,它们均采用了OpenGL图形标准,许多软件厂商以OpenGL为基础开发自己的产品,硬件厂商提供对OpenGL的支持。由于OpenGL的广泛应用,它已经成为一个工业标准。 2、OpenGL的设备独立性 OpenGL独立于硬件设备、窗口系统和操作系统,使得以OpenGL为基础开发的应用程序可以在各种平台间移植。OpenGL可以运行在当前各种流行操作系统之上,如Windows95/98、Windows NT/2000、Linux、Mac OS、Unix、OS/2等。特别需要指出的是,由于Microsoft公司在其Windows95或更高版本的操作系统和Visual系列高级语言开发环境中捆绑了OpenGL标准,使得OpenGL在微机中得到了更为普遍的应用。 3、OpenGL的编程语言 OpenGL可以与各种编程语言紧密接口。各种流行的编程语言如C、C++、Fortran、Ada、Java等都可以调用OpenGL中的库函数。 4、OpenGL的主要功能 (1)绘制与建型:提供了绘制点、线、多边形、球、锥、多面体、茶壶等复杂的三维物体以及贝塞尔、NURBS等复杂曲线或曲面的绘制函数。 (2)各种变换:提供了平移、旋转、变比和镜像四种基本变换以及平行投影和透视投影两种投影变换。通过变换实现三维的物体在二维的显示设备上显示。 (3)着色模式:提供了RGBA模式和颜色索引两种颜色的显示方式。 (4)光照处理:在自然界我们所见到的物体都是由其材质和光照相互作用的结果,OpenGL提供了辐射光(Emitted Light)、环境光(Ambient Light)、漫反射光(Diffuse Light)和镜面光(Specular Light)。材质是指物体表面对光的反射特性,在OpenGL中用光的反射率来表示材质。 (5)纹理映射(Texture Mapping)alpha数据。位图和图像:提供了一系列函数来实现位图和图像的操作。位图和图像数据均采用像素的矩阵形式表示。 (6)制作动画:提供了双缓存(Double Buffering)技术来实现动画绘制。双缓存即前台缓存和后台缓存,后台缓存用来计算场景、生成画面,前台缓存用来显示后台缓存已经画好的画面。当画完一帧时,交互两个缓存,这样循环交替以产生平滑动画。 (7)选择和反馈:OpenGL为支持交互式应用程序设计了选择操作模式和反馈模式。在选择模式下,则可以确定用户鼠标指定或拾取的是哪一个物体,可以决定将把哪些图元绘入窗口的某个区域。而反馈模式,OpenGL把即将光栅化的图元信息反馈给应用程序,而不是用于绘图。 (8)其它。此外,OpenGL还提供了反走样技术,能够实现深度暗示(Depth Cue)、运动模糊(Motion Blur)、雾化(Fog)等特殊效果。 12.7.4 OpenGL介绍的绘制流程和原理 OpenGL指令从左侧进入OpenGL,有两类数据,分别是由顶点描述的几何模型和由像素描述的位图、影像等模型,其中后者经过像素操作后直接进入光栅化。评价器(Evaluator)用于处理输入的模型数据,例如对顶点进行转换、光照,并把图元剪切到视景体中,为下一步光栅化做好准备。显示列表(Display List)用于存储一部分指令,留待合适时间以便于快速处理。光栅化将图元转化成二维操作,并计算结果图像中每个点的颜色和深度等信息,产生一系列图像的帧缓存描述值,其生成结果称为基片(Fragment)。基片操作主要的有帧缓存的更新、测试、融合和屏蔽操作,以及基片之间的逻辑操作和抖动(D

文档评论(0)

phltaotao + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档