- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
固定功能管线
第1 章 固定功能管线
在计算机图形学的开始阶段,读者可使用图形API生成项目。由于本书主要强调OpenGL方面的
图形学内容,因而对应API隶属于OpenGL范畴。本章将首先回顾OpenGL 1.x版本的图形管线。如果
读者曾使用过其他API ,其风格可能与OpenGL方案十分接近,这一类API均采用固定功能管线,或者
是针对顶点和片元包含固定操作集的管线。本书的其余部分将考察OpenGL 2.x版本的着色器内容及其
使用方式,并据此生成固定管线难以实现的视觉效果。
传统的视见方案
当通过OpenGL开发图形应用程序时,将定义几何体、视见机制、投影方案以及多种外观属性。
其中,对象几何体可通过其顶点、法线及其图形图元定义且常位于glBegin-glEnd语句对之间,该语
句对常包含顶点、直线、压缩几何体或多边形。另外,视见以及投影均通过特定的函数加以定义。
相应地,对象外观可通过定义颜色、着色、材质、光照以及纹理贴图获得,此类信息通过固定功能
OpenGL系统以较为直观的方式进行处理,对应操作出现于软件或图形卡中。
一种最为简单的OpenGL考察方式是将其视为两个连接操作:顶点处理操作和像素处理操作。在
OpenGL 固定管线中,各个操作均包含预定义操作集合。这里,读者应深入理解几何体以及输入指令
在管线中的工作方式。当与着色器结合使用时,理解管线的执行方式将变得十分重要。相应地,读者
所编写的着色器程序将控制上述操作,因而其重要性不言而喻。
顶点操作
当创建场景几何体时,需要定义相关图元、顶点以及作用于各个顶点之上的操作,进而在屏幕
2 图形着色器——理论与实践 (第2 版)
· ·
空间内生成对应像素。随后,经确定的图元将确定所显示的填充 模型空间
建模函数
像素,任何定义的外观信息都将用于定义像素在像素处理操作中 模型坐标
的着色方式。顶点处理过程中的几何体部分遵循图1.1所示的流程 建模转换
图。在确定后的图元中,针对于分组信息中的各个独立顶点,将 世界空间
执行几何体处理操作。这里,分组信息仅在顶点完成顶点处理操 应用程序坐标
作之后加以使用。 视见转换
顶点操作的第1阶段定义了场景的基本几何体,该阶段的输 眼睛空间
眼睛坐标
入数据为顶点定义集 (glVertex*、glNormal* 以及glTexCoord*函
数所调用的内容)和分组定义 (glBegin()和glEnd() 函数所调用的 投影转换
内容)。随后,将生成几何体的各部分结构,或在自身的模型空 剪裁空间
标准化设备坐标
间内建模。这里,坐标空间可为任意形式,进而方便地定义顶点
视口转换
以及模型关系。建模函数通常用于模型空间内的数学操作。如前
所述,几何体可能会包含法线向量、纹理坐标、顶点坐标、图元 屏幕空间
像素坐
文档评论(0)