三维实时渲染算法测试平台的研究与设计.docVIP

三维实时渲染算法测试平台的研究与设计.doc

  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文档。上传文档
查看更多
三维实时渲染算法测试平台的研究与设计.doc

三维实时渲染算法测试平台的研究与设计   摘要:图形渲染是整个图形学发展的核心。近些年来,在计算机辅助设计,影视动漫以及各类可视化应用中都对图形渲染结果的高真实感提出了更高的要求。一个高性能的交互式图形系统则由三维实时渲染算法来决定,而将一系列算法组合起来就能构成一条渲染管线。提出了三维实时渲染算法测试平台,通过软件生成一条渲染管线,消除硬件差异性,对各种基于该管线算法进行性能对比,通过合适的算法,实现了从三维模型到高质量二维图像的转换,实验结果表明,该平台在效率和显示效果上是可行的。   关键词:三维;实时渲染;算法测试;平台   中图分类号:TP399.9 文献标识码:A 文章编号:1009-3044(2013)32-7354-04   计算机图形学狭义上是一种研究基于物理定律、经验方法以及认知原理,使用各种数学算法处理二维或三维图形数据,生成可视数据表现的科学[1]。计算机图形学经过将近40年的发展,已进入了较为成熟的发展期[2]。目前,其主要应用领域包括计算机辅助设计与加工,影视动漫,军事仿真,医学图像处理,气象、地质、财经和电磁等的科学可视化等方面[3]。   三维实时渲染系统的核心,就是设计一条合理高效的渲染管线[4]。渲染管线设计是图形学研究的重要领域[5]。由于计算机硬件配置和性能的不一致,造成了不同的应用环境,三维实时渲染系统的效果可能会不一样,造成渲染速度和图形质量上也存在差异[6]。为了尽量消除硬件差异性,则就需要通过软件来实现三维实时渲染系统[7]。   1 三维实时渲染管线的设计   在三维实时渲染系统中,管线的作用至关重要,它决定了应用程序流畅地显示图像[8]。通过软件来实现三维管线四个阶段的算法,即应用程序、几何、三角形生成和光栅化,这就是基于软件的三维实时渲染管线[9]。该文选择了一个由Caligari的造型软件tureSpace生成的三维飞机模型,并通过软件实现了三维实时渲染管线。   1.1 实时三维渲染流水线的实现   实时三维渲染流水线主要经过以下步骤实现:1)Geometric database traversal;2)模型变换;3)背面剔除;4)视点变换;5)光照;6)投影变换;7)视体裁减;8)屏幕映射;9)扫描转换;10)着色。实时三维渲染流水线如图1所示。   其中第一步为Geometric database traversal,从.cob数据文件读取三维模型顶点和边的信息;第二步是模型变化,就是将从模型空间到世界空间的转换[10],由三个矩阵T(t)、R(r, α)、S(r,s)组成,则转换公式为:   [Mmw=T(t)R(r,α)S(r,s)] (1)   第三步为背面剔除,主要是检查模型的每个三角形是面对还是背对视点[11]。假设照相机的位置为x,三角形的三个顶点为别为s0,s1,s2,如果   [((s1-s0)×(s2-s0))?(s0-x)0] (2)   成立,那么该三角形背对照相机,即视点,它应该被剔除。   第四步为视点变换,就是将照相机平移到世界坐标原点,使观察参考坐标系(VRC)的三个轴u、v、n旋转到分别与x、y、z轴的方向一致[12]。   第五步为光照,就是对三维场景采用不同光源进行光照处理,则在三维模型表面产生不同光照效果。   光照处理方程为[13]:   [i=aglob?mamb+k=12(mamb?skamb+max((n?lk),0)mdiff?skdiff+max((n?hk),0)mshimspec?skspecskc+sklskpos-p+skqskpos-p2)] (3)   式中mamb表示材质环境分量、samb表示光源环境分量、mdiff表示材质的漫反射颜色、sdiff表示光源的漫反射颜色、mspec表示材质的镜面反射颜色、sspec表示光源的镜面反射颜色、spos是光源位置、sc控制固定衰减、sl控制线性衰减、sq控制二次衰减。环境光和全局光源参数aglob。   第六步为投影变换,就是将三维场景中的所有相关物体投影到某个平面或某种简单体上,为下一步裁剪和绘制做好准备。变换过程通过一个变换矩阵实现[14]。   第七步为视体剪裁,采用Cohen-Sutherland算法对三维空间中的线段进行裁减。   第八步为屏幕映射,该步首先进行平移,随后进行缩放,再进行平移。   第九步为扫描转换,该步是为了生成水平底边三角形。   第十步为着色,是为上步得到的平面三角形赋上颜色。通过常数着色处理、平面着色处理和Gouraud着色处理三种方法来进行对比,得到更好的效果[15]。   2 测试平台运行结果分析   通过选择或对比不同的算法,找到了将本文中的三维场景转化为二维图像

文档评论(0)

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

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

1亿VIP精品文档

相关文档