(计算机应用技术专业论文)基于动态光照的大规模草丛场景实时渲染技术.pdf_第1页
(计算机应用技术专业论文)基于动态光照的大规模草丛场景实时渲染技术.pdf_第2页
(计算机应用技术专业论文)基于动态光照的大规模草丛场景实时渲染技术.pdf_第3页
(计算机应用技术专业论文)基于动态光照的大规模草丛场景实时渲染技术.pdf_第4页
(计算机应用技术专业论文)基于动态光照的大规模草丛场景实时渲染技术.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(计算机应用技术专业论文)基于动态光照的大规模草丛场景实时渲染技术.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

a b s t r a c t m o d e l i n ga n dr e n d e r i n go f t h en a t u r a ls c e n e si sa ni m p o r t a n tr e s e a r c ha r e ai nt h e f i e l do fc o m p u t e rg r a p h i c s a n dg r a s s ,a sa nu b i q u i t o u sp a r t o fn a t u r es c e n e s ,i t s m o d e l i n ga n dr e n d e r i n gt e c h n o l o g yh a s b e e nt h eh o t s p o tf o rr e s e a r c hc o m m u n i t yf o ra 1 0 n gt i m e b u td u e t oh u g en u m b e ro fg r a s sb l a d e sa n dh i g hc o m p l e x i t yo fg e o m e t r y a n dl i g h t i n g ,r e a l t i m eg r a s sr e n d e r i n gh a sb e e nac h a l l e n g i n g t a s k t h i st h e s i sp r e s e n t sar e a l t i m eg r a s sr e n d e r i n gm e t h o dw i t hh i g hp e r f o r m a n c e a n dc o n v i n c i n gv i s u a le f f e c tb a s e do nc u r r e n ts t a t eo ft h ea r tr e s e a r c hmc o m p u t e r g r a p h i c s b o t hd o m e s t i ca n do v e r s e a s t op r o v i d e ag r o w t he n v i r o n m e n tf o rt h eg r a s s , t l l i st h e s i sf i r s tp r e s e n t sa nl o dt e r r a i nr e n d e r i n gm e t h o db a s e do ne f f i c i e n t a n d c r a c k p r o o fq u a d t r e es u b d i v i s i o n ap r o c e d u r a lm o d e l i n gm e t h o db a s eo np a r t i c l e s y s t e mi sa d o p t e dt og e n e r a t eg e o m e t r i cm o d e l so f t h eg r a s sb l a d e sa n dat h r e e - l e v e l l o d g r a s sr e n d e r i n gs y s t e mi sd e s i g n e db a s e do nt h eg e o m e t r i c m o d e l s t h et h r e e l e v e l sa r eg e o m e t r yr e n d e r i n gf o rt h en e a r e s td i s t a n c e ,v o l u m er e n d e r i n gu s i n gb o t h h o r i z o n t a l 锄dv e r t i c a ls l i c e sf o rt h em e d i a nd i s t a n c e ,a n dv o l u m er e n d e r i n gu s i n g o n l yh o r i z o n t a ls l i c e sf o rt 1 1 ef a r t h e s td i s t a n c e t h eg r o w t ho fg r a s so nt h et e r r a i n l s i m p l e m e n t e db yr e n d e r i n gm u l t i p l ei n s t a n c e so f as i n g l eg r a s sp a t c h ,w i t hr a n d o m o r i e n t a t i o n st oe l i m i n a t ep e r i o d i cp a t t e r n s s e a m l e s st r a n s i t i o nb e t w e e nl o d l e v e l si s r e a l i z e db vd e n s i t yc o n t r o lm e t h o d f o rv o l u m er e n d e r i n g , d y n a m i cl i g h t i n ge f f e c t s a r ea c h i e v e db yu s i n gb t f s f o rg e o m e t r yr e n d e r i n g , d y n a m i cs h a d o w sa r eg e n e r a t e d b yp r o j e c t i n gg r a s sb l a d e so n t ot h et e r r a i n t h er e a l - t i m eg r a s sr e n d e r i n gs y s t e mi sd e s i g n e d a n di m p l e m e n t e du s i n g o p e n g la n dg l s li nv i s u a lc + + t h es y s t e mm a k e se x t e n s i v e u s eo fg p ut om e e t t h er e a l t i m er e q u i r e m e n ta n df r e ec p u f o ro t h e rt a s k s r e s u l t ss h o wt h a to u rs y s t e m h a sa c l l i e v e dh i g hr e n d e r i n gp e r f o r m a n c ea n dc o n v i n c i n gv i s u a l e f f e c tw i t hg o o d p a r a l l a xe f f e c t k e yw o r d s :g r a s sr e n d e r i n g ;t e r r a i nr e n d e r i n g ;l o d ;v o l u m er e n d e r i n g ;b t f m 408 3眦37i 川1茎茎y 第一章绪论。 目录 1 1 研究目的和意义1 1 2 国内外研究现状1 1 3 本文主要工作3 1 4 本文内容安排3 第二章常用草丛渲染方法 2 1 基于几何的渲染方法5 2 1 1 粒子系统5 2 1 2 赫密特曲线法:7 2 2 基于图像的渲染方法8 2 3 基于体切片的渲染方法1 0 2 4 草丛建模方法小结l l 第三章基于四叉树的l o d 地形渲染 1 3 3 1l o d 技术简介1 3 3 2 基于四叉树的地形算法。1 4 3 2 1 四叉树的层次结构1 4 3 2 2 数据表示1 5 3 2 3 节点评价系统1 7 3 2 4 裂缝问题1 7 第四章草丛渲染的算法设计 1 9 4 1 草丛的层次细节( l o d ) 1 9 4 2 基于粒子系统的几何建模2 0 4 3 体渲染2 1 4 4 草丛的密度管理2 5 4 5 层次细节问的平滑过渡2 7 4 6 地形管理3 0 4 7 光照和阴影3 3 4 8 体渲染中的切片纹理坐标计算3 5 第五章草丛建模与渲染系统的实现3 9 5 1 系统的开发和运行环境3 9 5 2 系统模块设计3 9 5 3 草丛建模模块设计3 9 5 3 1 草叶几何模型的基本数据结构4 0 5 3 2 草丛几何模型生成的算法描述4 0 5 3 3 草丛生成器g r a s sg e n e r a t o r 的运行结果4 2 5 4 草丛渲染模块设计4 3 5 4 1 基于几何的渲染4 3 5 4 2 体渲染4 5 5 5 最终实现结果4 7 第六章总结与展望。5 2 参考文献5 3 攻读硕士学位期间的研究成果。5 5 j ! i :谢! ;6 学位论文独创性声明5 7 学位论文知识产权权属声明。5 7 第一章绪论 1 1 研究目的和意义 第一章绪论 在计算机图形学领域,大规模自然景观的建模和渲染是一个重要的研究课题, 广泛应用于虚拟现实、飞行仿真、战场仿真、绘图学、视频游戏、生态系统仿真等 领域。草丛渲染作为大规模自然场景渲染的重要组成部分,其建模表示和实时渲染 一直是计算机图形学研究领域的热点。随着各个学科研究水平的提高,特别是计算 机图形学领域的飞速发展,虚拟草丛模拟得到了更加广泛的应用,其主要应用领域 如下: 1 ) 娱乐:用于电子游戏中虚拟场景的生成、影视特效和三维动画场景的制作等。 2 ) 计算机辅助设计:用于城市规划和生活区设计以及园林设计等。 3 ) 商业:用于在网上展示产品、与客户交互等的电子商务、广告创意的制作等。 4 ) 教育:用于制作电子出版物、草丛生长模拟软件以及游戏和教育的儿童启蒙 软件等。 但是由于草丛形态上的多样性、结构上的高度复杂性和自然场景中纷繁复杂的 光照现象,基于动态光照的大规模草丛场景的渲染一直是一个具有挑战性的课题。 大规模草丛场景具有很多细节元素,其复杂性主要来自几何复杂性和光照复杂性。 几何复杂性体现在场景中巨大的草叶数量,渲染这些草叶需要使用大量的图元。而 光照复杂性体现在室外环境光照射和光在草叶之间的多次反射现象,模拟这些现象 需要使用复杂的计算公式。虽然近年来计算机硬件设备,特别是c p u 和g p u 取得 了迅速的发展,但严格遵循自然景观中的几何和光照复杂性渲染草丛仍然不能达到 实时性的要求。因此需要设计近似算法在渲染效果的真实性和实时性之间做折衷。 图形处理单元g p u 近年来得到了飞速发展,使得图形绘制真实感提高到了新的 水平,特别是s h a d e r 的出现,进一步扩展了g p u 的可编程能力。通过取代了固定渲 染管线中的变换、光照等部分,程序员可以自己控制顶点变换、像素颜色、纹理采 样和光照等,极大地增强了g p u 绘制出来的三维图形的表现力。因此研究如何充分 利用当前图形硬件的特点,使绘制算法更好地发挥g p u 的可编程性能,在满足实时 性前提下尽量提高渲染效果和逼真程度,对于提高大规模草丛场景的实时绘制速率 是非常有意义的。 1 2 国内外研究现状 在计算机图形学领域,草丛渲染作为户外真实感场景渲染的重要组成部分,其 青岛 到提高渲染效率的目的。其基本思想是将草丛的几何模型替换为平面布告板,并将 草丛的快照作为纹理贴到布告板上,这种方法能显著的提高渲染效率,但视觉效果 较差。 2 0 0 4 年k u r tp e l z e r 3 】提出了一种新的实时渲染草丛的方法。文章采用多个多边 形交叉成星形的b i l l b o a r d 方式来提高场景的真实感。s h a d e r 编程实现了直接对顶点 进行操作,使得草丛按着正弦方式运动以实现草丛随风波动的效果。2 0 0 5 年m u s a w i r a s h a h t 4 】提出采用双向纹理函数( b i d i r e c t i o n a lt e x t u r ef u n c t i o n ) 方法渲染草丛。采用 双向纹理函数渲染出来的草丛比传统的b i l l b o a r d 更加有立体感,从而提高了场景中 草丛的逼真度。 2 0 0 6 年k 6 v i nb o u l a n g e r 5 】在总结前人的经验基础上提出了新的基于动态光照的 大规模草丛场景渲染渲染方法。他按照l o d 的方法把场景分成三个不同的区域,各 自按照不同的方法渲染,分别是几何渲染、带有像素光照的体渲染和带有像素光照 的二维纹理渲染。层次细节划分是以草从距离观察者的距离为依据,距离观察者较 近的,采用几何渲染法,仔细刻画草叶的形状,对于中间距离的区域草丛采用体渲 染法,离观察者最远的采用贴水平纹理的方法,并且三层之间实现了无缝衔接。这 种方法可以渲染出近处草丛的几何形状细节和阴影,远处草丛也有很好的视差效果。 国内对草丛渲染的研究相对较晚,大多数的室外场景渲染研究都是集中在地形 和森林方面,专注于草丛建模的研究很少。张文辉【6 】在2 0 0 8 年使用单个、多个和任 意位置的植被b i l l b o a r d 技术,用于室外场景渲染,极大简化了三维物体的建模,在不 降低图形真实感的条件下提高了图形的渲染速度。 对于大规模草丛场景的实时渲染,则在近两年才开始有人研究。2 0 0 8 年刘吲7 】 使用 3 】中的思想实现草丛渲染,将草簇多边形交叉成星型,并利用c g 程序实现对 顶点和片元的操作,用多个三角函数实现草丛波动。该方法利用g p u 可编程技术, 分担了c p u 的计算工作,提高了渲染效率,并提出了静态阴影蒙图技术,实现了较 逼真的阴影明暗效果。凌飞【8 1 2 0 0 9 年在他的文章中研究了大规模草本植被渲染的算 2 第一章绪论 法并实现了一个基于g i n g k o 图形引擎的大规模草丛渲染系统。在草丛几何建模中, 他提出了一种基于2 d 草图勾勒和3 d 变形的建模方法。该方法与其它几何建模方法 相比,在真实感和交互动画方面有较大的优势。 1 3 本文主要工作 本文将综合应用多种草丛渲染技术,研究在满足实时性前提下提高渲染效果逼 真程度的大规模草丛场景渲染的近似方法。以视觉效果和实时效率为主要目的,着 力保证草丛形态的逼真度和真实感。 本文在总体上采用 5 】中的草丛渲染方法,使用层次细节( l o d ) 技术,根据观察 者的视距在三种渲染方法之间切换:近距离使用基于几何的渲染方法;中距离使用 基于竖直和水平切片的体渲染方法;而远距离则使用水平切片体渲染方法,并研究 草丛密度管理算法和各种渲染方法交接处的平滑过渡算法以及光照与阴影生成算 法。各种算法的程序充分利用目前可编程g p u 的功能。本文的研究工作主要有以下 6 个方面: 1 ) 地形的生成。设计一个l o d 的地形渲染算法,按照四叉树算法生成地形网 格,满足实时渲染要求,支持三维场景漫游。 2 ) 草丛建模。以粒子系统过程化建模法创建三维草丛几何模型,刻画草丛几何 特性,并以此作为后期渲染草叶基础。 3 ) 草丛渲染。根据观察者距离采用l o d 技术完成三个层次细节的草丛实时渲 染。近距离选用几何渲染,中距离选用基于切片的体渲染,远距离选用水平 纹理映射。 4 ) 密度管理,通过用户定义密度图和密度阀值相结合的方法完成密度管理,并 由此实现三个层次细节的平滑过渡。 5 ) 动态光照效果。支持环境光和平行光。 6 ) 动态阴影效果。生成动态阴影,渲染草丛投影到地面上的阴影,并随光照方 向变化。 1 4 本文内容安排 第二章介绍几种草丛渲染的基本方法,并对各种方法进行比较。 第三章介绍基于四叉树的l o d 地形渲染方法,优化数据存储,解决地形裂缝问 题,完成地形场景的渲染,为后期草丛渲染做好基础。 第四章详细介绍草丛建模和渲染的具体算法,包括粒子系统建模算法、各个层 次细节的渲染方法、地形管理、动态光照、阴影生成、密度管理和各个层次的平滑 3 :0t-i 7-p_- 青岛人学硕十学位论文 过渡。并且提出了一些针对渲染过程中出现的问题的解决方法,如随机翻转、地形 轮廓等。 第五章介绍建模与渲染系统的设计与实现,并对系统的运行结果进行了分析。 第六章总结主要工作,并展望未来的研究方向。 4 第二章常用草丛渲染方法 第二章常用草丛渲染方法 在当今的计算机图形处理能力条件下,草叶数量的海量性加上其几何复杂性光 照复杂性,使得在大规模草丛的实时渲染成为了计算机图形学中的难点课题之一。 为了解决这一问题,学者们对草叶建模方法做出了大量的研究,提出了许多建模技 术以简化草丛模型的方法,为大规模草丛的实时渲染奠定了基础。 草丛的渲染方法可以分为两类:基于几何的渲染方法和基于图像的渲染方法。 其中,基于几何的渲染方法主要描述草叶模型中各点之间的空间位置关系,主要的 方法有:粒子系统法,赫密特曲线法等。基于图像的渲染方法主要是通过使用纹理 图片来描述草丛的外观,从而达到减少草丛模型的几何细节数目和复杂程度的目的, 并在绘制时将其映射到简单的几何图元上,这样既保持了渲染逼真程度又减少了渲 染的计算量。 2 1 基于几何的渲染方法 基于几何的渲染方法可以达到对草丛精确的描述和表示,对纹理映射、光照动 画等效果也提供较好的支持。但是渲染海量草叶所需要的计算量就当前的图形硬件 来说,渲染的帧率达不到实时渲染的要求。而且当观察者距离草丛很远的时候,为 只有一个像素的草叶渲染很多的三角形面片也是没有必要的。尽管如此,基于几何 的渲染方法依然是草丛渲染不可或缺的建模方法,尤其是当观察者距离很近,需要 精确描述草叶几何形状的时候。 2 1 1 粒子系统 w t r e e v e s 于1 9 8 3 年提出的粒子系统模型是一种典型的过程化建模方法 9 1 。 粒子系统( p a r t i c l es y s t e m ) 的核心思想是采用大量形状简单的微小粒子通过特定的控 制和运动过程产生一系列的动画,从而用于模拟自然界中如烟雾、水流、火花、落 叶、云、雾、雪等模糊的和不规则的对象。 粒子系统中的每一个粒子都具有一定生命期,粒子经历产生、运动和消亡等过 程使粒子系统可以生成一个完整的场景【l0 1 。在粒子系统中,新粒子产生时赋予它一 定的初始属性,这些属性包括粒子生成速度、粒子寿命、粒子质量、粒子尺寸等参 数。在粒子的运动过程中,根据相关算法或者运动规律对粒子的属性进行更新,并 检查粒子是否已经超出了生命周期。一旦粒子超出其生命周期就将这些粒子剔出模 拟过程。图2 1 所示为一个通用的粒子系统模型。 5 图2 1 通用粒子系统模型 r e c v o s 和b l a u 】在1 9 8 5 的文献中提出了以粒子系统为基础的草丛建模方法。 该算法的核心思想是利用重力粒子系统中粒子的运动轨迹作为草叶的骨架形状,进 而完成草叶整体的建模过程。 图2 2 描述了采用重力粒子系统进行草丛建模的基本步骤,粒子系统以初速度 v d 在t o 时刻向垂直向上以一定偏移角范围内的随机方向产生粒子并以该时刻粒子的 坐标作为草叶的根部。在粒子的演化过程中,以重力因素作为粒子运动的控制参数, 并以固定的时间间隔记录下粒子的坐标位置,直到该粒子的生命周期结束。最后, 将记录的各个坐标点连接起来便形成了单个草叶的走势形状。通过记录粒子的运动 轨迹,粒子系统法不但可以很精确的描述出自然界中的大量草叶的走势形状,而且 由于粒子系统法是过程化建模方法,所以该方法对于一些草丛动画特别是草丛生长 动画提供很好的支持。 图2 2 粒子系统建模法 d e u s s e n 【1 2 】等人在2 0 0 2 年提出了一种基于粒子系统静态特征的草丛建模方法一 一点云模型。这个概念最初是由l e v o y 和w h i t t e d 【1 3 】在1 9 8 5 年提出,其基本思想是 尝试用点的集合来代替三角形面片,并以点的集合作为渲染的基础图元完成建模和 渲染过程。d e u s s e n 等人将基于点云模型的粒子系统应用在草丛的建模之中,具体的 建模方法是将模型细分。模型被细分后,成为更小的子模型,细分后的子模型又可 6 第二章常川草丛渲染方法 分为两类:由点近似组成的模型和由线段近似组成的模型。建模算法将含有1 1 个三 角形面片的子模型转换为含有2 n 个顶点的点云模型。在实际渲染中,草丛模型中的 三角面片,一部分由点近似,另一部分由线段近似。 2 1 2 赫密特曲线法 样条曲线是由一系列给定点控制的光滑曲线,由于草叶形状细长光滑在重力作 用下呈纵向微微弯曲的外形特征,使用样条曲线完成草叶建模和渲染也成为一种常 见的基于几何的草丛建模和渲染方法。赫密特( h e r m i t e ) 曲线是一种能够拟合草叶建 模实现草叶边缘轮廓信息可视化显示的一种样条曲纠1 4 】。赫密特睦线是通过两个端 点以及这两个端点的切向量来唯一定义的曲线。通过改变这四个参数的值,就可以 控制赫密特曲线的形状。 图2 3 赫密特曲线建模法 图2 3 描述了三次赫密特曲线的性质以及利用赫密特曲线进行草叶建模的基本 思想,从图中可以看到,以三次赫密特曲线的走势能较好地模拟出自然界草叶弯曲 平滑的形态特征。三次赫密特曲线的控制点分别为该段曲线的起始p o 和终止点p l , m o 和m 1 分别为相应点的切线值。对于曲线上的从起始点p o 到终止点p l 任意一点 的坐标p ( 力,有: p o ) = ( 2 t 3 3 t 3 + 1 ) p o + 0 3 2 t 2 + f ) m o + 0 3 一t 2 ) m l + ( 一2 t 3 + 3 t 2 ) e 2 - ( 1 ) 其中p ( o ) :p o ,p ( 1 ) :e ,掣( o ) :m 。,掣( 1 ) :m 川“o ,1 】 u u g u e ! r r a z ”】等人在2 0 0 3 年以基于赫密特曲线建模方法渲染近距离草丛并辅之以 l o d 的调度策略在中远距离结合其它草丛建模方法实现了大规模草丛场景的实时 渲染。王长波、彭群型1 6 j 等人在2 0 0 6 年提出了一种基于骨架线扫描和张量积b e z i e r 体f f d 变形技术的建模方法实现了对多种形态草丛动态的建模。他们提出的建模方 法是对基于赫密特等样条曲线实现草叶形状静态建模的重要补充,进一步完善了样 条曲线建模方法在草丛建模中的理论体系。该建模技术算法在实现上分为两步:首 7 青岛人学硕十学位论文 先以现实中不同草叶的图片作为抽取样本,从中抽取出沿纵向中轴走向的两维竖向 骨架线和由l o d 层次决定的若干横向骨架线。然后,根据f f d 变形的思想【1 7 】将抽 取到的草叶骨架嵌入一个f f d 网格之中,通过对骨架线的缩放得到三维空间中的草 叶骨架线最终轮廓形状。这种方法与赫密特曲线建模方法相比更能够逼真地模拟出 草叶的外部轮廓。除此之外,该建模方法f f d 变形所需的柔性包围体采用的是立方 b e z i e r 体,这使得二维空间中的直线经过f f d 变形之后将成为三维空间中的b e z i e r 曲线,从而保证了变形后的骨架线能满足三次样条曲线的相关性质。同时,采用立 方b e z i e r 体的f f d 变形方法是一种全局变形方法,其参数设置和变形控制相对简单, 为各种草叶动画的实时渲染提供了良好的模型基础。 2 2 基于图像的渲染方法 基于几何的建模方法能够精确的描述草丛丰富的细节,但是如此精细的表示将 产生数量巨大的三角形面片,给场景渲染带沉重的负担。在当今的计算机图形硬件 水平下,大规模草丛场景实时渲染中完全使用基于几何建模方法的渲染达不到实时 渲染的帧率要求。因此如何在大规模草丛场景渲染中简化草丛建模,提高渲染效率 便成为了草丛渲染领域研究的热点。 基于图像的渲染技术( i m a g eb a s e dr e n d e r i n gi b r ) 是上世纪九十年代兴起的一 种渲染技术【l 引。该技术通过一些预先渲染好的图像( 或环境映照) 来生成不同视点处 的场景画面。与传统渲染技术相比,它的优点是图形渲染与场景中对象的复杂度无 关,而只与生成图像的分辨率有关。此外该方法使用的预存图像既可以是计算机合 成的,也可以是实拍照片,因此可以获得较逼真的渲染效果。基于图像的渲染技术 把物体空间的复杂度转换为图像空间的复杂度,通过增大存储空间提高渲染效率【1 9 1 。 由于草丛的复杂度通常很高,所以基于图像的渲染技术适合大规模草丛的实时渲染。 最简单的一种基于图像的绘制方法就是直接将一张描述草丛的二维纹理映射到 地表之上。该方法将三维草叶模型简化为一张二维纹理图,放弃了草丛的几何光 照、深度等信息,因此仅应用在渲染离观察者位置非常远的场景之中【引。g a l i n 和 p o u l i n 2 0 l 在2 0 0 5 年对上述二维纹理映射方法做出了重要改进,他们采用描述表面几 何和光影细节的双向纹理函数( b t f ) 代替传统的简单二维纹理并将其与视点相关的 深度图相结合,在给定的视点和光照条件下合成出了效果非常好的草丛纹理。 另外一种基于图像的渲染方法就是广泛应用于早期的游戏和虚拟现实系统中的 布告板( b i l l b o a r d ) 技术【2 。该技术主要用于复杂物体的简化绘制,例如火焰、草丛、 树木、云朵等。布告板技术是将物体的几何模型简化为平面布告板,并将物体的纹 理贴到布告板上。在草丛渲染中,纹理和简单多边形的渲染取代了几何草丛模型的 渲染,提高了渲染的效率,半透明的纹理映射机制通过合理的混合处理可以表现出 8 第二章常川草丛渲染方法 较逼真的草丛形态。但是这种方法对草丛表示过于简单,丢失了大量的几何细节和 光照阴影信息,并且缺少景深视差信息,使得在观察者移动时,特别是从草簇的上 方观察时,场景显示出严重失真。 针对简单布告板方法的这些缺陷,人们丌始研究采用多个布告板的方法来提高 模型的细节和视差效果。2 0 0 4 年k u r tp e l z e r 3 1 提出了一种新的实时渲染草丛的方法, 对简单和告板技术做出一个重要改进。该方法采用的是以草簇为渲染单位来减少渲 染所需多边形,每个草簇用多个竖直的多边形交叉构成三角形或者星形结构,并在 渲染时把二维草丛纹理图通过纹理映射和a l p h a 通道测试贴到这个结构上来提高场 景的真实感。由于该方法采用星形布告板技术使得模型有了一定的视差信息,提高 了场景的真实感。 ntn 图2 4 三个布告板交叉的星形结构 图2 4 展示了三个布告板相交叉组成的新的布告板技术。每一个草簇的多边形 面片可以采用三个面片相互以6 0 度角交叉形成的星型结构,以垂直于地表的方式散 落在地表来表示草丛的随机生长位置。在观察者漫游时,通过水平方向观察到的场 景将更真实,有视差效果。 自然界中的草丛是会受外界作用力的影响的,在外力的作用下要产生运动。针 对草叶的动画k u r tp e l z e r 在论文中还提出了基于这种星形布告板技术的三种变形方 法。 一7 ,黟。努-,。,# i j j 二一j 。 , ,“r ;f 。f乒一罐? :i , 。女一 。 ;一燃锄嘭,; “镓锄鹂慧+ - , ,:哥二毪爱,一, :昭2 荔, ( a ) 上方顶点同时平移( b ) 上方顶点随机平移 图2 5 三种动画变形方法 9 ,簪襞罐: ,j 酾- x j ,;。:? + 碱- - 黟。? j 。篾l ,蠢,觯 ( c ) 分簇随机移动 青岛人学硕十学位论文 图2 5 所示即为k u r tp e l z e r 所提出的三种动画变形方法。图2 5 ( a ) 描述的变形是 草簇根部顶点不变,每个草簇上方顶点平移一个相同的向量,该方法可以降低了变 形的计算量,但是因为每一草簇中每个上顶点都移动相同的偏移向量而造成较明显 的人工痕迹;图2 5 m ) 描述的变形是各个顶点分别偏移不同的偏移量所表现出的随 机变形,这种方法可以通过顶点着色器( v e r t e xs h a d e r ) 完成逐顶点计算。但是由于各 个顶点移动的偏移向量不同并且具有随机性,不能保持草簇的长度和厚度,所以这 种变形会扭曲图像使其变得不真实;图2 5 ( c ) 描述的变形,综合了以上两种变形方法 的优点,以单独的草簇为单位进行变形,同一草簇内部上顶点做相同的偏移,不同 的草簇有着不同的偏移向量,从而提供了更好的草丛动画效果。 2 3 基于体切片的渲染方法 长久以来,二维纹理图一直被用来做物体表面纹理映射,对于水平的物体表面, 这样的模拟效果比较真实。但是对于象草丛、皮毛这样的材质,由于其内部元素之 间存在相互遮挡关系,在光照作用下它们的表面材质要由视点位置和光照决定。为 了渲染这类材质的物体,k a j i y a 和k a y l 2 2 j 在1 9 8 9 年提出体纹理( v o l u m e t r i ct e x t u r e ) 的概念,他们将复杂的模型表面分割为许多双线性的小块,在每一个采样块上都有 一个体纹理附着在上面。他们推荐渲染这种体纹理的技术是光线跟踪,光线跟踪是 一个图像空间的直接体渲染算法,对需要成像的图像空间,视点投射一条光线穿过 图像的像素,沿着这条光线,离散的体数据会等间距的被再次采样,根据采样点周 围的8 个体数据可以采样出该采样点所对应的颜色信息。 在草丛渲染时,除了要正确处理大量近处的几何数据,还要对中远距离的草丛 做出逼真的近似。由于体渲染可以有效地处理拥有较多细节的复杂物体,提供高效 的中远距离逼真效果,所以它可以应用于距离观察者中远距离的草丛渲染上。物体 的体渲染可以提供图像渲染所不能提供的全视差:当观察者移动时,草叶之间的相 互位置关系可以被正确的渲染,而不是像布告板技术那样平整呆板。 n e y r c t t 2 3 】在19 9 5 年提出了一种多层次的渲染方法,这种方法当观察者距离草丛 较远时提供一种粗糙的描述,而当观察者接近草丛时提供更加细致的描述,体数据 以八叉树存储,该方法通过对场景划分层次提高了实时渲染效率。n e y r o t 借鉴了 k a j i y a 关于双线性采样块的理论,通过重复使用采样块渲染出了大规模的草地场景。 为了将采样块坐标映射到场景地形上,n e y r e t 在算法实现中建立了三个坐标系统: 世界坐标系、地形坐标系和纹理坐标系。在用光线跟踪算法进行绘制时,把光线的 世界坐标变换成地形坐标,进入纹素后再变换成体纹理坐标。 光线跟踪算法虽然能取得较高的精细度,但是其渲染时的计算量非常大,如果 没有好的硬件支持,基于光线跟踪的体渲染仍然无法满足实时渲染的需求。为了提 1 0 第 二章常州草丛渲染方法 高渲染效率,人们研究出了一些新的体渲染方法。m e y e r 和n e y r e t 2 4 1 在1 9 9 8 年采用 一种新的表示方法一一用一组切片( s l i c e ) 用来简化建模。这种方法在2 0 0 4 年被 d e c a u d i n 和n e y r e t t 2 5 】采用,用来渲染森林场景。这种方法的优势是用很少的二维纹 理图来近似体纹理,通过渲染这些二维纹理图来提高渲染效率。为了将一小片草地 转化为体纹理数据,基于标准硬件加速渲染管道可以被用来加快体纹理切片生成过 程。在算法中,体纹理被转化为三个方向的二维纹理切片序列:两个正交于场景地 面的竖直方向和一个平行于场景地面的水平方向。实时渲染中,通过对这些切片按 照顺序渲染来达到对体渲染效果的近似。 2 4 草丛建模方法小结 本章介绍了几种基本的草丛渲染技术,各种技术方法都有各自的优势和适用范 围。由于自然界草丛丰富的几何复杂度和光照复杂度,各种建模方法都是对所要描 述对象的简化建模,以次完成对草丛模型的近似。 首先,基于几何的建模算法是最能从近距离刻画草叶形状外观的算法,虽然对 草丛做出了一定的简化,但是通过对草叶整体走向和骨架的把握,精细地刻画了草 叶的基本形态和自然外貌。总的来说,基于几何的建模方法可以精确的表现草丛模 型各方面的细节。但是由于渲染所需的草丛模型几何数据量较大,基于几何的建模 方法只适用于局部或者小规模的草丛的实时渲染。 其次,基于图像的建模方法将用于表示物理外观的采样纹理图通过半透明的纹 理映射将其映射在简单多边形表面上,替代了大量的草丛模型,从很大程度上降低 了计算量。体渲染法将三维纹理信息通过对二维纹理切片序列的渲染表现出来,所 以提供了真实的三维视差。 表2 1 是各种渲染算法的特性说明和比较,在论文后续章节中我们将综合各种 草丛渲染方法,通过不同的层次细节将它们综合起来完成整个草丛场景的渲染。 青岛人学硕+ 学位论文 表2 1 各种草丛渲染方法的比较 渲染方法代表方法特点 过程化建模,能较好的支持动画,适于描述 基于几何的 粒子系统 近处草丛细节,表现精细 渲染 参数化控制,方便建模,描述近处草丛细节, 赫密特曲线 外观表现精细 建立模型简单,所用多边形少,没有视差效 基于图形的 简单布告板技术 果,人工痕迹大,适于细节少处渲染 渲染建立模型简单,数据量较少,有一定的视差 星形布告板技术 效果 光线跟踪法 计算量较大,渲染效果好,质量高,适用于 体渲染 离线渲染 数据量较大,渲染效率较高,但有一定的边 二维纹理切片 缘效果,适于中间距离渲染 1 2 l 第三章基丁四义树的l o d 地形渲染 第三章基于四叉树的l o d 地形渲染 地形渲染作为构建大规模草丛场景甚至是自然场景渲染的重要组成部分,一直 是图形学领域里的热点问题之一。为了较逼真地反映地形地貌,需要对地形进行大 量的采样,通过对这些采样点的三角化可获得地形的表面模型。但由于采样数据的 海量性和冗余性,大规模地形的处理和渲染非常困难【2 6 】。如何简化地形并加快渲染 速度成为实时地形渲染系统的关键,而层次细节技术( l o d ) 实现的多分辨率地形正 是解决这些问题的重要方法【27 1 。本章节介绍的基于四叉树的l o d 地形渲染方法, 在不影响画面视觉效果的前提条件下,将地形分为多个分辨率,通过一个合理的节 点评价系统和裂缝问题解决方案,建立并实现了一个满足实时地形渲染要求的模型。 该模型通过逐次简化地形的表面细节和视景体裁减来减少场景的几何复杂性,从而 达到提高绘制算法效率的目的。 3 1l o d 技术简介 大规模场景的实时绘制,既需要保证得到的渲染效果非常逼真,又要满足系统 交互的实时性要求。尽管图形渲染的硬件水平近几年有了显著的提高,但是还不能 够满足所有复杂场景的实时绘制要求。为了解决场景复杂度和实时性之间的矛盾, 研究人员提出了很多图形生成加速和近似方法。其中层次细节技术( l e v e lo f d e t a i l , 简写为l o d ) 己经被广泛用于各种大规模场景的实时渲染系统中。 层次细节技术是在不影响画面视觉效果的前提条件下,根据物体模型的节点在 显示环境中所处的位置和重要性,决定物体渲染的资源分配,降低非重要物体的细 节度,从而获得高效率的渲染运算的一种技术【2 引。在层次细节技术中,会为同一个 物体建立几个不同层次细节度的模型。如图3 1 所示,对于同一模型可以用不同数 量的多边形面片来刻画,得出的精细程度也是不同的。当物体远离观察者时,人的 眼睛将看不到那么多精细的几何形状,所以可以用较少的多边形面片来渲染物体, 这样就在保持物体外观视觉效果基本不变的情况下,减少了所需的计算量。如图3 1 的模型,最左边的模型是有最高的层次细节的全分辨率模型,而最右边的模型则经 过了相当的简化。当观察者距离较近时可以绘制全分辨率模型,而随着观察者距离 增加适当减少模型细节,最终到达最简化模型。 1 3 青岛人学硕十学位论文 图3 1 层次细节图 将l o d 技术应用在大规模地形实时渲染中,在近距离区域绘制高精度模型地形 块,而在远处采用低精度地形块,从而有效地降低绘制地形多边形面片数量,在保 证图形实时显示的前提下,较好地协调场景真实感与绘制速度之间的矛盾。 3 2 基于四叉树的地形算法 本文提出的四叉树算法主要通过以下两种方法减少渲染所需多边形面片数量: 一是层次细节技术,即根据观察者的位置、视线方向,选择不同分辨率的地形。如 离观察者近的选择较高的细节程度,反之则选择较低的细节程度。另一个是可见性 剔除技术,即只绘制处在观察者视野内的场景,从场景中剔除当前视点不可见的区 域。本文提出的基于四叉树的l o d 地形渲染算法,是在传统的l o d 算法基础上增 加了地形四叉树标志矩阵和节点评价系统,并较好的解决了不同分辨率交界处的裂 缝问题。 3 2 1 四叉树的层次结构 四叉树是指每个非叶子节点都有四个子节点的树,在二维空间中,如果把树的 根对应于整个图像,那么对图像的四等分可以看作是根的四个子节点,还可以继续 对这四个子节点进行划分,直至每个像素节点,也就是四叉树的叶子节点。采用四 叉树的概念来描述一个多分辨率地形,就是从整个完整的地形出发,递归地把地形 不断的分割成相等的四个区域,分割的深度越大,则得到的分辨率越高。即分割深 度每提高一层,采样密度就提高一倍啪1 。在四叉树算法中,为保证递归渲染能把地 形分成相等的四个部分,要求地形的长和宽相等,采样间隔必须均匀。 利用四叉树数据结构表示地形划分时,四叉树中每个节点都对应地形中的一块 矩形区域。在四叉树的分层结构中,较上层的节点因为涉及的采样点较少,其表示 的地形分辨率较低,地形表示的误差也大;底层的节点涉及的采样点较多,因此具 有较高的分辨率。图3 2 显示了本算法的四叉树地形划分结构,图中相同背景填充的 矩形具有相同的层次细节,颜色越深,划分越细,分辨率越高,所对应的地形层次 1 4 第三章基丁四义树的l o d 地形渲染 细节也就越高。 图3 2 地形四叉树划分 基于这种四叉树的划分,观察者在场景旱进行漫游时,地形网格可以根据视点、 视线方向和顶点误差值动态生成,并依据视景体对四叉树进行裁剪。如图3 3 所示, 其中红色的区域为观察者能看到的部分,从图中很容易看出观察者能看到的只是视 锥体覆盖的节点,其余的的节点则根本不需要考虑。因此,在节点递归分割时只花 很少的代价就可直接把这些看不到的区域简单的丢弃掉。通过视景体裁减和四叉树 l o d ,只在观察者的视野范围内进行绘制,并且根据距离的远近调节不同的四叉树 层次细节,最近的区域渲染最高分辨率的地形,并随着距离增加减小层次细节度, 大大减小了渲染的时空开销,提高了渲染速度。 3 2 2 数据表示 fffi r y r r j;i l弋 式 、0 ;z 7 。 ,: ; 、 ; li f f 一 i 蔓。麓。:曩 7 。 ; ,: r r r r 1襞 r r 毒; 沙l :簿嚣赫 。; | r r f 图3 3 地形网格视景体剪裁 本算法的地形数据来自于高度图,通过读取高度图中的黑白灰度啪1 来获得地形 的高度信息。高度图是一张灰度图,灰度图中每个像素的灰度值代表对应点处的高 1 5 青岛人学硕十学位论文 度值,白色的像素对应最高点,黑色的像素对应最低点,其余灰度代表中间的高度 值。即高度图上任意一点伍,) ,) 处有函数值z ,如式3 ( 1 ) : z = f ( x ,j ,)3 - 0 ) z 可作为地形中的高度值。创建地形时,如图3 4 所示,以叫平面为地形所处平面, 将地形平面划分成力甩个均匀的矩形,x 方向和y 方向被均匀分成甩等份。每个矩 形再分为2 个三角形绘制,区域

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论