




已阅读5页,还剩59页未读, 继续免费阅读
(计算机应用技术专业论文)3d游戏图形引擎若干关键技术的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖北工业大学硕士学位论文 摘要 随着游戏产业的飞速发展,3 d 游戏引擎的研究受到了前所未有的关注。一个 好的3 d ;3 1 擎是构成一款高性能游戏的基石,它包含了物理学,计算机图形学,人 工智能等多个学科的研究成果。它所包含的通用且高效的图形处理能力也逐渐被 诸如计算机辅助设计和虚拟现实等应用领域重视和使用。 3 d 游戏引擎又是一个庞大的有机整体,包含了图形子系统,物理子系统,输 入子系统,声音子系统等等。其中图形渲染子系统是整个引擎系统的核心部分 图形渲染子系统把模型、动画、光影、特效等所有效果实时计算出来并展示在屏 幕上。可以说图形渲染子系统在游戏引擎的所有部件当中是最复杂的,它的强大 与否直接决定着图像的最终输出质量。 本文围绕3 d 图形引擎中的若干关键技术展开讨论和研究,首先分析了国内外 图形引擎技术的现状及发展。在此基础上,提出了本课题的研究目的和研究意义。 然后本文介绍了3 d 图形引擎的基本框架,以及各个子部件在渲染流程中起到 的作用,同时结合图形学知识对渲染管线中的重要步骤进行了详细说明。 接着针对大规模地形可视化的问题进行了研究,分析了地形数据的分块和调 度策略;介绍了当前主流的地形生成和简化技术,在此基础之上讨论了基于四叉 树的地形逻辑表达和存储方法:提出了一种动态的视点相关的l o d 地形简化方法, 同时结合平截头体技术较好地解决了地形网格裂缝问题。 最后本文论述了真实感场景的生成原理,详细讨论了各种光照模型,纹理映 射模型在仿真渲染中的应用,在这基础之上具体分析了三个真实感特例的生成方 法。同时结合d i r e c t x 技术,面向对象程序设计的设计思想,对上述的相关技术和 方法进行了测试和验证。 关键词:3 d 图形引擎,渲染管线,层次细节,真实感场景,大规模多分辨率地形 湖北工业大学硕士学位论文 a b s t r a c t a l o n g 、析t l lr a p i dd e v e l o p m e n to f g a m ei n d u s t r y , t h er e s e a r c h e so n3 dg a m ee n g i n e h a v er e c e i v e du n p r e c e d e n t e da r e n t i o n a3 de n g i n ew i t hg o o dp e r f o r m a n c ei st h e e o m e r s t o n eo fae x c e l l e n tg a m e i t sd e v e l o p m e n td e p e n d so ns o m er e s e a r c h i n gr e s u l t s i nm a n yd i s c i p l i n e ss u c ha sp h y s i c s ,c o m p u t e rg r a p h i c s ,a ia n ds eo n i t sg e n e t i ca n d e f f i c i e n tg r a p h i c sp r o c e s s i n ga b i l i t yi sp a i da t t e n dt oa n di sg r a d l l a l l yu s e di ns o m e d o m a i n sl i k ec a da n dv 3 dg a m ee n g i n ei sah u g eo r g a n i ci n t e g e r , w h i c hi n c l u d e sg r a p h i c ss u b s y s t e m , p h y s i c a ls u b s y s t e m i n p u t ss u b s y s t e m , s o u n ds u b s y s t e ma n d5 0 o i lt h eg r a p h i c s r e n d e r i n gs u b s y s t e mi st h ec o r eo f w h o l ee n g i n es y s t e m i tc a l c u l a t e sa l lo f t h er e a l t i m e e f f e c t sl i k em o d e l ,a n i m a t i o n ,l i g h t sa n do t h e rs p e c i a le f f e c t s ,t h e nd i s p l a y st h e mo nt h e s c r e e n i tc a nb es a i dt h a tt h eg r a p h i c sr e n d e r i n gs u b s y s t e mi st h em o s tc o m p l e xp a r ti n t h ew h o l ee n g i n es y s t e m i t sp o w e rd i r e c t l yd e t e r m i n e st h ef i n a lo u t p u tq u a i l t y f o c u s i n go ns o m ek e yt e c h n o l o g i e so f3 d g a m eg r a p h i c se n g i n e ,t h i sp a p e rm a d e s o m es t u d ya n dd i s c u s s i o n f i r s t l y , i ta n a l y z e dp r e s e n ts i t u a t i o na n dt h ed e v e l o p m e n to f d o m e s t i ca n df o r e i g ng r a p h i c sa l g i n e ,b a s e do nt h i s ,i t a l s op r e s e n tt h ep u r p o s ea n d s i g n i f i c a n to f t h er e s e a r c h t h e nt h i sp a p e ri n t r o d u c e dt h eb a s i cf r a m e w o r ko f3 d g r a p h i c se n g i n e ,d i s c u s s e d t h ef u n c t i o no fe v e r ys u b s y s t e mi nr e n d e r i n gf l o wa n di l l u m i n a t e ds o m ek e ys t e p si n r e n d e r i n gp i p e l i n eu s i n gc o m p u t e rg r a p h i c sk n o w l e d g e a l t e r 曲a t h i sp a p e rh a sc o n d u c t e dt h er e s e a r c hi nv i e wo ft h el a r g e s c a l et e r r a i n v i s i b i l i t y , a n a l y z e das t r a t e g yt od i v i d i n ga n di m p o r t i n gt e r r a i nd a t a ;i n 订o d u c e ds o m e i m p o r t a n tt e c h n o l o g i e st og e n e r a t ea n ds i m p l i f yt h et e r r a i n ,b a s e do nt h i s ,t h ep a p e r d i s c u s s e dl o g i ce x p r e s s i o na n ds t o r a g ef o rt e r r a i nu s i n gq u a d t r e e ;c o m eu pw i t l lan e w l o d a l g o r i t h mw h i c hi sd y n a m i ca n dv i e w - d e p e n d e n ta n ds o l v et h ec r a c k e rp r o b l e mo f t e r r a i ng r i d a tl a s t ,t h i sp a p e re l a b o r a t e dt h ep r i n c i p l et og e n e r a t ee x t r a v e n t r i c u l a rs c e n ew h i c h h a sr e a l i s ma n da p p l i c a t i o no fl i g h tm o d e la n dt e x t u r em o d e li ne m u l a t i o nr e n d e r i n g b a s e do nt h i s ,t h i sp a p e ra n a l y z e ds o m em e t h o d st og e n e r a t et h r e es p e c i a lr e a l i s m e x a m p l e s a tt h es a m et i m e ,u s i n gd i r e c t xt e c h n o l o g ya n do o pp a a e m , t h i sp a p e r t e s t e dt e c h n o l o g i e sa n dm e t h o d sm e n t i o n e db e f o r e k e yw o r d s :3 d g a m ee n g i n e ,r e n d e r i n gp i p e l i n e ,l e v e lo f d e t a i l ,r e a l i s ms a 2 r l e , l a r g e - s c a l ea n dm u t i - r e s o l u t i o nt e r r a i n 佩;j l 主工案火港 学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立进行研究工作所取 得的研究成果。除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经 发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方 式标明。本声明的法律结果由本人承担。 学位论文作者签名:下j 禾小铂日期:函啊年y 月;1 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留 并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授 权湖北工业大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采 用影印、缩印或扫描等复制手段保存和汇编本学位论文。 学位论文作者签名:降小磊 日期:c ;| 回年厂月3 1 日 钳) 呷朔 嚣 湖北工业大学硕士学位论文 1 1 研究背景及意义 第1 章引言 目前中国的游戏产业正处在一个迅猛发展的时期,2 0 0 5 年网络游戏用户达到 2 6 3 4 万,比2 0 0 4 年增长了3 0 1 ;网络游戏市场实际销售收入达到3 7 7 亿元人 民币,比2 0 0 4 年增长了5 2 6 。网络游戏的发展为电信业、信息产业、商业和出 版业等周边产业带来的直接收入超过3 0 0 亿元。另据中国社会科学院和社会科学 文献出版社对外发布的 显示,2 0 0 6 年全球网上 游戏营业额有望达5 6 亿美元,2 0 0 6 年中国网络游戏市场整体规模将达8 3 4 亿元 人民币。2 0 0 5 年,全国从事游戏自主研发的团队由2 0 0 4 年的7 3 家增长到1 2 0 多 家。增幅为3 7 ;开发的大中型网络游戏达到1 9 2 款,较之2 0 0 4 年的1 0 9 款,增 幅达7 6 。游戏研发人员从2 0 0 4 年的4 0 0 0 多人,增长到1 2 6 0 0 人,增幅超过2 0 0 9 6 随着游戏产业的迅猛发展,国内开发拥有自主知识产权的3 d 游戏引擎,特别 是3 d 图形引擎的呼声越来越高,因为3 d 图形引擎是整个3 d 游戏产业的核心技术, 它的发展总是伴随着计算机软硬件领域的最新研究成果,其品质的高低直接决定 着游戏质量和价值。并且随着3 d 图形引擎的发展,它在建筑虚拟、城市规划、g i s , 场景游历、效果场景制作、城市规划、房地产开发、虚拟教育、展馆展示、古迹 复原、交通线路设计、等各个方面也都有了越来越广泛的应用。 然而目前国内对3 d 游戏图形引擎的研究还是停留在初级阶段,暂时无法和国 外成熟的产品相比,导致国内的游戏开发费用增加了很多,并且不利于国内游戏 在国际游戏市场上的竞争。所以对3 d 游戏图形引擎的研究势在必行,具有重大的 战略意义和明显的现实意义。 1 2 国内外研究状况 1 2 1 国外3 d 图形引擎的发展 ( 1 ) 引擎的诞生 1 9 9 2 年,3 dr e a l m s 公司和a p o g e e 公司发布了德军司令部( w o l f e n s t e i n 3 d ) ,其大小只有2 兆多,但这部游戏却开创了第一人称射击游戏的先河,最为重 要的是它在x 轴和y 轴的基础上增加了一根z 轴,在由宽度和高度构成的平面上 湖北工业大学硕士学位论文 增加了一个向前向后的纵深空间,这根z 轴对那些看惯了2 d 游戏的玩家造成的巨 大冲击可想而知“1 。 同期,i ds o f t w a r e 公司推出了一款非常成功的第一人称射击游戏毁灭战士 ( d o o m ) 。d o o m 引擎在技术上大大超越了w o l f e n s t e i n3 d 引擎。德军司令部中 的所有物体大小都是固定的,所有路径之间的角度都是直角,也就是说你只能笔 直地前进或后退,这些局限在毁灭战士中都得到了突破。尽管游戏的关卡还 是维持在2 d 平面上进行制作,没有“楼上楼”的概念,但墙壁的厚度可以为任意, 并且路径之间的角度也可以为任意,这使得楼梯、升降平台、塔楼和户外等各种 场景成为可能。 ( 2 ) 引擎的发展 i ds o f t w a r e 公司陆续推出的q u a k ei i ,采用了一套全新的引擎,可以更充 分地利用3 d 加速和o p e n g l 技术,在图像和网络方面与前作相比有了质的飞跃。 当q u a k ei i 独霸整个引擎市场的时候,e p i cm e g a g a m e s 公司的虚幻( u n r e a l ) 问世了。其震撼力完全可以与人们第一次见到德军司令部时的感受相比。u n r e a l 在推出后的两年之内就有1 8 款游戏与公司签订了许可协议,它的应用范围还涵盖 了教育、建筑等其它领域。 ( 3 ) 引擎的革命 游戏的图像发展到虚幻这里己经达到了一个新的高度,但引擎技术对于 游戏的作用并不仅局限于画面,它还影响到游戏的整体风格。 两部划时代的作品同时出现在1 9 9 8 年,v a l v e 公司的半条命和 l o o k i n g g l a s s 工作室的神偷:暗黑计划对后来的作品以及引擎技术的进化造 成如此深远的影响。 曾获得无数大奖的半条命采用的是q u a k e 和q u a k ei i 引擎的混合体,v a l v e 公司在这两部引擎的基础上加入了两个很重要的特性:一是脚本序列技术,这一 技术可以令游戏以合乎情理的节奏通过触动事件的方式让玩家真实地体验到情节 的发展,这对于诞生以来就很少注重情节的第一人称射击游戏来说无疑是一次伟 大的革命;第二个特性是对人工智能引擎的改进,敌人的行动与以往相比明显有 了更多的狡诈,不再是单纯地扑向枪口。1 。这两个特点赋予了半条命引擎鲜明 的个性,在此基础上诞生的要塞小分队、反恐精英和毁灭之日等优秀 作品又通过网络代码的加入令半条命引擎焕发出了更为夺目的光芒。 2 湖北工业大学硕士学位论文 从2 0 0 0 年开始3 d 引擎朝着两个不同的方向分化,一是如半条命、神偷 和杀出重围那样通过融入更多的叙事成分和角色扮演成分以及加强游戏的人 工智能来提高游戏的可玩性,二是朝着纯粹的网络模式发展,在这一方面,i d s o f t w a r e 公司再次走到了整个行业的最前沿,在q u a k ei i 出色的图像引擎的基础 上加入更多的网络成分,推出了一款完全没有单人过关模式的纯粹的网络游戏一 雷神之锤3 竞技场,它与e p i c 公司稍后推出的虚幻竞技场一同成为引擎 发展史上的一个转折点。 ( 4 ) 国外最新研究成果 虚幻引擎3 是一个面向下一代游戏机和d i r e c t x9 个人电脑的完整的游戏开 发平台。提供了游戏开发者需要的大量的核心技术、数据生成工具和基础支持。 虚幻引擎3 的设计目的非常明确,每一个方面都具有比较高的易用性,尤其 侧重于数据生成和程序编写的方面,因此美工只需要程序员的很少量的协助,就 能够尽可能多地开发游戏的数据资源,同时这个过程是在完全的可视化环境中完 成的,实际操作非常便利。与此同时,虚幻引擎3 还能够为程序员提供一个具有 先进功能的,并且具有可扩展性的应用程序框架( f r a m e w o r k ) ,这个框架可以用于 建立、测试和发布各种类型的游戏。具有以下特点: 6 4 位色高精度动态渲染管道 g a r m | a 校正和线性颜色空间渲染器提供了完美的颜色精度,同时支持了各种后 期特效例如光晕,镜头光环和景深等效果。 在最新的一代显示芯片发布的过程中,我们注意到了一个非常明显的特点,就 是新一代的显示芯片已经不再满足于传统的3 2 位色深,转而需要更加高精度的颜 色范围,这一点在n v 4 0 和8 4 2 0 身上都能非常明显的看出来。在n v 4 0 上,这种技 术被称为h p d r 技术,而在8 4 2 0 身上,这种技术也有所体现。 支持当前所有的基于像素的光照和渲染技术,包括使用法线贴图技术的参数 化的p h o n g 光照、虚拟位移贴图、光线衰减函数、采用预计算的阴影遮罩技术 以及使用球形h a r m o n i c 贴图的预计算的凹凸自阴影。 高级的动态阴影 虚幻引擎3 提供对下列3 种阴影技术的完全支持: a 采用动态模板缓冲的阴影体积技术,能够完整支持动态光源,这样就能在 场景中所有物体上精确地投射阴影; 3 湖北工业大学硕士学位论文 b 能够让动态的角色在场景中投射出动态的、柔和的模糊阴影,这个过程是 通过使用1 6 x 超级取样的阴影缓冲实现的; c 采用了拥有极高质量和极高性能的预先计算出的阴影遮罩,从而可以将静 态光源的交互现象离线处理,同时保留了完整的动态高光和反射效果。 u n r e a le n g i n e3 是首款支持s h a d e rm o d e l3 0 的游戏引擎,后者是微软 d i r e c t x c 9 0 中所提供的一项重要特色功能。目前,只有n v i d i a 的g f o r c e5 系列 图形芯片才支持s h a d e r m o d e l3 0 。 1 2 2 国内3 d 图形引擎的研究现状 国内的3 d 游戏引擎的研究起步较晚,基本还是基于国外一些开源引擎在作进 一步的研究与发展。随着2 0 0 0 年初,中国网络游戏市场的发展,国内3 d 引擎的 研究开始迅速发展起来。虽然到目前,国内还没有出现严格意义上的完全自主研 发的3 d 引擎,但基于国外引擎基础上延伸的一些3 d 引擎也开始日趋成熟。比如 目标软件的g f x 3 d 引擎,盛大的3 d 引擎,网易的3 d 引擎,锦天科技的a u r o r a 引 擎等,还有一些游戏工作组的3 d 引擎,比如o r i g o 系列等。 目前国家相关部门也开始注意到游戏引擎的重要性,并且于2 0 0 3 年将网络游 戏技术研究这类文化产业纳入“8 6 3 计划”,隶属于“中文处理与人机交互技术综 合示范应用”专题,也是“十五”期间,8 6 3 项目在信息技术领域、计算机软硬技 术主题下的课题之一。一些重点院校也在积极筹备开设游戏引擎设计方面的专业。 1 3 论文研究内容及组织结构 本文一方面简要介绍了3 d 游戏图形引擎的工作流程,渲染管线;一方面研究 了3 d 图形引擎中几个关键性技术的实现,包括有:室外大规模地形数据的调度和 分块策略,大规模多分辨率地形的生成和简化技术以及室外真实感场景的生成方 法。 本文的章节安排如下: 第1 章引言。介绍了本文的研究背景以及研究意义,针对本课题的国内外的 研究概况。 第2 章图形渲染引擎技术背景。介绍了3 d 图形引擎的详细的渲染流程,以 及各个子部件在渲染管线中的作用,并结合了d i r e c t x 技术加以说明。 第3 章基于分块技术的地形可视化。分析了大规模多分辨率地形的存储,分 4 湖北工业大学硕士学位论文 块以及调度策略;介绍了用于存储地形的数字高程模型,比较了d e m 模型的几种 网格表现方法的优缺点;提出了一种视点相关的地形分块和调度策略。 第4 章基于四叉树的l o d 地形简化技术。比较了当前主要的两种地形简化技 术v o x e l 和l o d 技术的优缺点;提出了一种视点相关的动态l o d 地形简化方法, 并详细论述了用此方法生成和简化大规模地形的流程;同时结合本文程序演示验 证了该方法的有效性和效率。 第5 章场景仿真渲染技术的研究。从光照,纹理映射,镜头眩光,运动模糊 等各个方面研究了生成真实感场景的方法。 第6 章总结与展望。对论文所做的工作进行了总结,并提出了系统还存在的 不足以及需要进一步研究的问题。 湖北工业大学硕士学位论文 第2 章图形渲染引擎技术背景 3 d 图形引擎是游戏引擎的核心部件,直接影响到一款游戏产品的视觉和性能 表现。它通过一系列的渲染流程将虚拟世界中的各个元素展现在用户面前,本章 就3 d 图形引擎的基本构成,3 d 渲染管线的流程进行了比较详细的说明。 2 13 d 图形引擎概述 3 d 图形引擎系统即3 d 游戏引擎的图形渲染内核,为3 d 游戏中的场景、人物、 动画等视觉模式提供图形表现;它由多个单独但又相互联系的图形子系统构成, 通过实时计算、物理模拟、映射技术等多种方式对游戏的图形表现、物理表现、 运行效率提供核心支持 图形渲染内核为3 d 引擎的关键部件,根据不同的游戏需要,图形系统的结 构会有很大不同,一般意义上来讲,图形渲染内核分为以下几个部份: ( 1 ) 基础几何渲染器 负责图形渲染的基础渲染模块。根据被渲染物件的几何模型,通过一定的方 式,实现基础渲染功能。 ( 2 ) 光照渲染器 对游戏中的场景、物件,通过实时计算、光照映射等方式进行光照渲染。通 常的光照渲染器可以支持诸如:环境光,平行光,点光源等多种类型的光照渲染。 ( 3 ) 映射部件 基于纹理的映射部件包括多种方式:环境映射、光照映射、立方体映射、凹 凸映射等。而映射部件根据不同的游戏引擎需求,呈现不同的状态。有的游戏中 没有单独的映射部件,而是根据需要将不同映射技术离散地应用于各个渲染功能 中”。 ( 4 ) 粒子子系统 粒子子系统是3 d 游戏图形表现中一个强有力的武器。由粒子子系统生成的 各种效果,比如爆炸、大规模植被、瀑布、魔法特效、天空特效、光影特效等, 是表现游戏豪华视觉享受的基础。 6 湖北工业大学硕士学位论文 ( 5 ) 图形渲染优化部件 图形渲染优化部件包括层次细节技术、网格优化技术、裁剪器等多种优化方 式。对游戏能以优异的视觉效果适应更多的运行硬件终端有非常重要的作用。虽 然有的优化技术直接应用于具体的渲染,但还是应该单独列出来作为图形渲染内 核的一个重要部件。 根据游戏需求的不同,可能还会有一些特殊的图形部件的出现,但一般意义 而言,上述的5 个部分是一个强大的图形渲染引擎所不可缺少的。并且每一个部 分都得需要一个接口来方便地实现改变设置、位置、方向、以及其他可能与系统 相关的属性配置。 2 23 d 图形引擎渲染管线 图形渲染流程由多个阶段组成,最基本的处理流程称3 d 管线( 3 dp i p e l i n e ) , 其大部分的功能集中在硬件当中,如下: ( 1 ) 应用程序场景 场景几何数据库遍历 对象的运动,观察相机的运动和瞄准 对象模型的动画运动 3 d 世界内容描述 对象的可见性检查,包括可能的遮挡剔除 细节层次的选择 ( 2 ) 几何变换 一般的几何变换( 平移,旋转,缩放) 从模型空间到世界空间的变换 从世界空间到观察空间的变换 视点相关的投影变换 细节接受,拒绝或者剔除 背面剔除 透视分割,变换到剪裁空间,并剪裁 变换到屏幕空间 ( 3 ) 三角形生成 背面剔除( 或者在光照计算之前的观察空间中完成也可以) 斜率角度计算 扫描线变换 ( 4 ) 渲染并光栅化 着色处理 纹理映射 7 湖北工业大学硕士学位论文 光照处理 雾效果处理 a l p h a 透明度测试 深度缓冲 抗锯齿处理 显示最终光栅图形 图形渲染流程由多个阶段组成。各个阶段之间是线性的串联关系,前一阶段 的输出是下一阶段的输入。前一阶段没有完成,下一阶段不会启动。因此,图形 流程的效率将由最耗时的阶段决定,这个阶段通常被称为速度瓶颈,在游戏引擎 编程中则需要特别优化”1 从处理对象上看,实时图形渲染流程可分为三大阶段,即物体层、顶点层和 像素层。具体的绘制引擎实现将被进一步细化多个子阶段。物体层应用程序驱动 在软件中实现,如碰撞检测、可见性判断、变形动画等。顶点层的大部分过程在 硬件中实现。最后一个阶段在图形硬件中将最顶点层生成的数据着色为最终的图 像,处理过程如下图所表示: 厂 物体层 、 厂 顶点层 、 厂 象素层 、 逮模与相机生 场景圈组织 深度缓冲泊隐 援 l t 象索光照明计 动一变形 光照明计算 算 l h nt , 一 投蟛变换与势 可见性计算纹理姨射 裁 且 弋 碰籀探测说区变换 颜色融合 , 图2 1 基于对象的渲染流程 上述流程图是对3 d 渲染流程较为全面的介绍,结合本论文中讨论的技术重点 以及渲染管线的流程,以下几个步骤是3 d 渲染过程中的关键,也是本文重点讨论 8 湖北工业大学硕士学位论文 的地方: ( 1 ) 从模型空间到世界空间的变换 局部坐标,也叫模型坐标,是3 d 实体在其局部坐标系中的坐标。也就是 说创建3 d 物体时,通常有自己的一组局部轴,物体的中心位于局部坐标系的 原点。建立好所有的3 d 模型后,要将其放置到世界坐标系中。 世界坐标系是虚拟空间中所有3 d 物体的共同坐标系,表示着虚拟空间中 的实际位置,物体将在虚拟空间中进行移动和变换。世界坐标表示的是绝对 位置而不是相对位置。 从模型坐标到世界坐标的交换通常分为2 个步骤: 将模型坐标的中心点移动到世界坐标的中心点。 将模型坐标系顺时针或者逆时针旋转,使得模型坐标系的x ,y 轴分 别与世界坐标系的x ,y 轴重合。 由上述的2 次变换,可以得到相应的变换矩阵,进而可以将3 d 模型的顶 点坐标转换到世界坐标系统中。 ( 2 ) 虚拟相机模型 。 相机模型并不是3 d 渲染管线中的一个步骤,但是流水线的后续步骤依赖 于相机模型。相机模型分为欧拉相机模型和u v n 相机模型。无论使用哪种相 机模型,都需要视距、视野、远近裁减面,一定宽度和高度的视口( 表示实际 的光栅窗口) 。相机模型示意图如下: + y : : : : 图2 2 虚拟相机模型 9 吃 湖北工业大学硕士学位论文 视景体 定义了相机能够拍摄到的空间。视景体可以通过水平和垂直方向的视 野参数来定义,这两个参数的取值范围长为6 0 1 3 0 度。另外还有远近裁剪 面,只有位于这两个裁剪面之间的物体才是可见的,其他物体都看不到1 4 l 。 远、近裁剪面 远近裁剪面垂直于观察方向,决定了那些物体将被渲染到图像中。换 句话说,比远裁剪面更远或比近裁剪面更近的物体都不会被渲染。 视平面投影面 视平面是一个数学意义上的平面,3 d 图像被投影到该平面上,以便能 够在2 d 计算机屏幕上渲染图像。 视距 视距是指视点到视平面的距离,即图2 2 中的d 视景物墙 上图中的棱锥就是由远近裁剪面和视景体堵定义的。棱锥的四面就是视 景体墙。视景体墙也被用于裁剪物体,不在视景体墙内的物体也是看不到 的,将被裁剪掉。 ( 3 ) 世界坐标到相机坐标的转换 世界坐标到相机坐标的变换指的是对世界坐标系进行移动,使得相机位于 世界坐标系的原点,镜头指向+ z 轴方向。这种变换过程分为平移和旋转。 平移变换 如果有一个经过简化的游戏世界,只有一个物体和一个相机,相机的 位置为( c a mx ,c a my , c a m _ z ) ,相机的角度为( o ,0 ,o ) 。将相机移到世界坐 标( o ,0 ,0 ) 处,要确保位于( w o r l dx ,w o r l d _ y , w o r l dz ) 的物体相对于相机的 位置保持不变。因此如果相机移到( o ,o ,0 ) 处,为保持物体和相机的位置不 变,物体要移至l j ( w o d dx - c a mx ,w o r l dy - c a m _ y , w o r l d _ z - c a m _ z ) 处。相机 和物体之间的相对位置不变,也就是说,相机镜头中的风景依旧。 旋转变换 在上一步中,我们假设相机的观察角度为( o ,0 ,o ) ,现在我们假设相机 的观察角度为( o ,a n g _ v , o ) ,因此镜头不再指向+ z 轴。因此我们要将相机 的朝向旋转到与+ z 轴平行,且要使物体与相机之间的距离和角度不变,则 必须将相机绕y 轴旋转- a n g j ,同时对所有的物体顶点也要绕y 轴旋转 一a n g _ v 。这样物体与相机之问的相对位置保持不变,但是物体在世界空间 i o 湖北工业大学硕士学位论文 中的绝对位置发生了变化。 ( 4 ) 物体剔除 物体剔除指的是对于不必要渲染的图形进行,以免在整个流水线中对其 进行处理。物体剔除可以在世界空间中进行,也可以在相机空间中进行。这 是3 d 引擎流水线中最重要的步骤,因为在大多数情况下,只有几个物体位于 场景中,其他物体要么在视野范围外,要么在观察者后面,不需要对他们处 理【4 埘。 物体剔除采用包围球测试的原理:对世界空间中的每个物体,创建一个 将其包围起来的球体。然后只对球心( 单个点) 执行世界坐标到相机坐标变换, 并判断球体是否位于视景体内,如果不在视景体内则丢弃它包围的整个物体。 接下来,执行背面消除,并对余下的不是背面且在视景体内的多边形执行世 界坐标到相机坐标的变换。如果球体的一部分在视景体内,再进行其他的测 试,其测试过程如下图所表示: _ + z 0 p 黼一 x + y 俯视图y = o 平面+ 】r 图2 3 边界球剔除法 上图是一个x - z ,视野为9 0 度的平面俯视图,对于y - z 平面,测试方法也一 样。在2 d 空间中,给定一个圆,圆心为p 1 ( x 1 ,z 1 ) ,4 个点定义了其x 和z 方向的 边界。分别为p 2 ( x l ,z l + m a x _ r a d i u s ) ,p 3 ( x l ,z l - m a x _ r a d i u s ) ,p 4 ( x l + m a x _ r a d i u s 锄,p s ( x l m a x _ r a d i u s ,z 1 ) 。则有如下的推论: 如果这5 个点都位于视景体内,则包围球完全位于视景体内;如果这5 个点 湖北工业大学硕士学位论文 都位于视景体外,则包围球完全位于视景体外。 使用包围球测试物体剔除存在的局限性:如果包围球部分位于视景体内, 并不意味着物体也部分位于视景体内。这是因为包围球可能并没有很好的代表 物体。例如:有一个非常长的物体的包围球以及一个视景体。包围球部分位于 视景体内,但物体完全在视景体外。但也不是说包围球测试不管用,而只是说 它存在一定的局限性,无法剔除所有位于视景体外的物体。有时候需要使用与 物体形状更匹配的包围几何体。 ( 5 ) 背面剔除 背面剔除指的是删除背向视点的多边形。这种测试通常是在世界空间而不 是相机空间进行,这样可通过背面消除删除大量的多边形,避免对它们进行世 界坐标到相机坐标变换。因此背面消除要在物体剔除之后和世界坐标到相机坐 标变换之前进行【5 一。 背面测试的工作原理:以统一的方式,顺时针或逆时针都可以,对构成每 个物体的所有多边形进行标记,然后计算每个多边形的面法线,并根据观察向 量v 对这条法线进行测试,如果面法线和观察向量之间的夹角不超过9 0 度则多 边形对观察者而言是可见的,否则剔除。 ( 6 ) 相机坐标到透视坐标的转换 相机位于原点,且观察角度为0 度,需要定义一个视景体,用于表示通过 相机的虚拟镜头可以拍摄到的范围。视景体是由近裁剪面和远裁剪面以及水平 和垂直视野定义的。位于视景体内的物体将被渲染到屏幕上。 透视变换指的是将物体的顶点投影到视平面上,给定视平面与投影点r 相机 视点) 之间的距离d ,可以计算出物体上任何一点和视点之间的连线与视平面的 交点,其变换过程如下: 1 2 湖北工业大学硕士学位论文 + z l e f th a n d e ds y s t e m 远裁剪i 懒呵么 夕曼 。妒州一_ 1 r 视点( o 0 j0 ) + 】 r 图2 4 透视变换 简单的说,透视投影是将视景体内用相机坐标表示的点变换到视平面上, 以便下一步将其变换为屏幕坐标。 ( 7 ) 透视坐标到屏幕坐标的转换 透视坐标到屏幕坐标变换是指将视平面映射到屏幕,是3 d 流水线的最后一 个阶段。它将视平面坐标进行缩放,变成屏幕坐标。而且,大多数光栅屏幕的 原点位于左上角,y 轴的方向与标准2 d 笛卡尔坐标系相反。当然,如果在透视 交换中,视平面的大小与视口相同,则无需执行缩放操作,但在大多数情况下, 需要执行平移,并反转y 轴,因为在投影时,我们假设视平面的中心为原点, 其+ x 轴指向右方,+ y 轴指向上方,而光栅屏幕的原点位于左上角,y s 方向与 此相反。因此,无论在什么情况下,都需要执行某种形式的视口变换【弘1 0 】。 2 3 本章小结 本章结合计算机图形学知识简要说明了3 d 图形引擎的工作流程,渲染原理, 为下面几章内容的介绍作一个铺垫。 湖北工业大学硕士学位论文 第3 章大规模地形存储及调度 3 1 基本的地形模型 在3 d 图形引擎中,通常用数字地面模型来对大规模场景进行建模,数字地面 模型d t m ( d i g i t a lt e r r a i nm o d e l ) 最初是由美国学者m i l l e r 教授为了实现高速公路的 自动设计由1 9 5 6 年提出来的。d t m 被用于各种铁路、公路、输电线路的设计中, 在工程中被用来计算面积、体积、和坡度。还可以被用来绘制等高线、坡向图、 透视图等。在地理信息系统中,可以用来进行土地利用状况分析、合理规划、洪 水预测等 1 l , l 列。 r m 是地表形体等多种信息的一个数字表示,它是定义在某一区域d 上的 m * n 维的矩阵,其形式为:d t m = z i | iii _ 1 ,2 m ,j = l ,2 n ) ;其中z i i i 为网格节点上的高度、资源、土地利用、人口分布等多种信息的定量或定性描述。 若只考虑d t m 的高度分量,就称其为数字高程模型d e m ( d i 西t a le l e v a t i o nm o d e d 或d h m ( d i g i t a lh e i g h tm o d e l ) 。d e m 是d t m 的简化形式,二者还是有一定区别的。 数字高程模型( d e m ) 是建立数字地面模型( d t m ) ,最终生成三维地形的基础,它不 仅可以非常直观地表示一个地区的地形、地貌,而且也为各种地形特征的定量分 析和不同类型专题图的自动绘制提供了基本数据 d - 1 5 】。反之,可以由d t m 来生成 d e m 。数字高程模型( d e m ) 在生产中具有很高的生存价值,并且d e m 也是d t m 的基础。本文中的室外场景的大规模地形的数据建模用高度图的方式实现了数字 高程模型。 常用的数字高程度模型有2 种,规则网格模型( o r i d ) 和不规则网格模( t i n ) ,还 有比较特殊的一种是在规则格网数据的基础上按照一定的规则进行三角化得到的 三角形格网。三种网格如图3 1 所示: ( a ) 规则网格( b ) 基于规则网格的三角形网格( c ) 不规则的三角网 图3 1 三种地形网格模型 1 4 湖北工业大学硕士学位论文 3 1 1 规则网格模型 规则网格是人们普遍采用的一种d e m 表示方法,为了减少数据的存储量及便 于使用管理,可利用一系列在x ,y 方向上等间隔排列的地形点的高程z 来表示 地形,形成一个矩形格网d e m 。任意一个点p i j 的平面坐标可以根据该点的行、列 号i j 推算出来。这些基本信息包括d e m 的起始点( 一般为左下角) 坐标) ( o 、y o 。d e m 网格在x 方向与y 方向的间隔d x ,d y 及d e m 的行、列数n y 、n x 等如图点p i j 的平面坐标( x i ,y i ) 为: x i = x o4 - i + d x 0 = 0 ,l ,2 n x 1 )( 3 1 ) y :i = y o + j d y( i = o ,1 2 n x - i )( 3 2 ) d r ( x o ,t o ) 巴, d xx 。 图3 2 规则网格体系 规则格网的特征数据点是规则排列的,即具有简单的空间关系,除了一些基 本信息如总的行列数、单元格大小外,规则格网的高程值可以用一个矩阵来表示, 而且数据的处理非常方便,因此现在的应用比较广泛。但是采用规则网格d e m 的 缺点是数据冗余大,对于整个区域而言,采样点的密度都是一样的,不能准确表 示地形细节的变化。这样在地形简单的地区容易出现大量数据冗余,而在地形复 杂的地区分辨率比较低。理想情况下是在数据点复杂的区域密度大一些,平坦的 地区密度小一些。因此针对这种情况,人们又提出了对规则网格系统的改进,采 样间隔随地形复杂程度的变化而变化,在地形简单的地区间隔大,在地形复杂的 地区采用小的间隔1 16 1 7 】。 3 1 2 不规则三角形网模型 不规则三角形网( t r i a n g u l a t e di r r e g u l a rn e t w o r k ,简称t i n ) 适用于采样点不规 则分布的情况下,它直接利用原始的离散采样点来表示地形表面,t i n 将所有的采 样点连接成许多连续的三角形,三角形的形状和大小取决于不规则分布的采样点 的密度和位置。t i n 网格的建立应基于最佳三角形的条件,即应尽可能保证每个三 湖北工业大学硕士学位论文 角形是锐角三角形或者三边的长度近似相等,避免出现过大的钝角和过小的锐角。 t i n 网格的数据存储方式与矩形网格d e m 的存储方式不同,它不仅要存储每个点的 高程,还要存储其平面坐标、网点连接的拓扑关系、三角形及邻接三角形等信息。 t i n 模型与规则网格模型的不同之处是能随地形的起伏变化而改变采样点的密度 和决定采样点的位置,因而能够克服地形起伏不大的地区产生冗余数据的问题, 同时还能够按地形特征点如:山脊、山谷线、地形变化线和其他能够按精度要求 进行数字化的重要地形特征,并获得d e m 数值1 1 8 - 2 0 i 。采用不规则网格的方法能够 较好的表示复杂地形,利用它来绘制三维立体图具有较好的显示效果。其缺点是 数据结构复杂,不便于规范化管理,难以与矢量数据和栅格数据进行联合分析, 而且不规则三角网计算的实时性不如规则网格模型。 3 1 3 过渡模型 基于规则格网三角化得到的三角形格网模型可以看作一种过渡模型,一方面 其采样数据点与规则格网相同;另一方面它只采用部分的数据点来表征形,数据 点间具有比较掩蔽的空间关系,这一点与1 1 n 相似。这种地形模型与g r i d 相比, 表示地形的效率更高,能以较少的数据点表示相同细节程度的地形;与t i n 相比, 它能更快地构建地形三角形格网。因此,这种地形模型在一些地形实时显示系统 中得到大量应用。 相比之下,规则网格的顶点数目和三角形数都较多,但是利于剪裁和简化且 具有更高的效率。而且在计算机中矩阵的处理非常方便,因此,在工程应用中, 尤其是在三维地形可视化方面,一般都采用规则d e m 网格。本文所实现的三维 地形演示模型就采用了这种过渡规则网格模型,再利用l o d 简化技术,结合视点 相关和平截头体技术就可以很好地对地形进行简化和实时的浏览 3 2 高度图模型 本文基于d e m 模型,采用了一种地形处理技巧高度图来存储三维地形数据, 高度图是将等高线的原理应用于实际三维图形的技巧。在等高线中,高度值表现 为等高线的颜色值:在高度图中,高度值表现为0 2 5 5 之间的明暗值,相当于灰 度图。高度图技巧的使用方法是:首先将想要制作的三维地形数据制作为只包含 二维高度信息的高度图形,然后利用高度图信息重新制作为三维图形,高度图模 型如下图所表示: 1 6 湖北工业大学硕士学位论文 ( a ) 高度图( ”由高度图得到的三维地形图 图3 3 高度图模型 高度图的主要原理就是将二维信息转化为三维顶点信息,一般情况下,x y 平
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-广东-广东工程测量工三级(高级工)历年参考题库典型考点含答案解析
- 2020-2025年二级造价工程师之土建建设工程计量与计价实务高分通关题型题库附解析答案
- 2020-2025年高级经济师之工商管理高分通关题库A4可打印版
- 2025年中级卫生职称-主治医师-精神病学(中级)代码:340历年参考题库典型考点含答案解析
- 2025年驾驶证考试-货车理论考试-货车驾驶证(科目一)历年参考题库含答案解析
- 2025年通信专业技术-通信专业技术(中级)-中级通信专业技术(交换技术实务)历年参考题库含答案解析(5套)
- 2025年职业技能鉴定-铁路职业技能鉴定-铁路职业技能鉴定(铁路接触网工)技师历年参考题库含答案解析(5套)
- 2025年职业技能鉴定-热工职业-热工自动装置检修职业技能鉴定(中级)历年参考题库含答案解析(5套)
- 2025年职业技能鉴定-供水供应工-供水供应工证(中级)历年参考题库含答案解析(5套)
- 2025年综合评标专家-海南-海南综合评标专家(工程勘察、工程设计类)历年参考题库含答案解析(5套)
- 全业务竞争挑战浙江公司社会渠道管理经验汇报
- 护理副高职称答辩5分钟简述范文
- 幼小衔接资料合集汇总
- GB/T 42195-2022老年人能力评估规范
- GB/T 4909.4-2009裸电线试验方法第4部分:扭转试验
- GB/T 15155-1994滤波器用压电陶瓷材料通用技术条件
- 复变函数与积分变换全套课件
- 做一名优秀教师课件
- 企业标准编写模板
- 商场开荒保洁计划书
- DBJ 53-T-46-2012 云南省城镇道路及夜景照明工程施工验收规程
评论
0/150
提交评论