论文部分内容阅读
最近几年,随着虚拟现实、3D仿真、3D电影和3D游戏等产业的蓬勃发展,人们开始研究如何高效制作绚丽逼真的3D图形效果,越来越多的3D绘制引擎如雨后春笋般浮现。目前,国外3D绘制引擎技术的水平要远远高于国内的水平,3D绘制引擎的研究对国内日益增长的3D应用需求意义深远。本文的核心研究内容是支持GPU光栅化实时全局光照算法的3D绘制引擎技术和应用,可以将其分为三个主要部分。一、本文设计并实现了一个扩展性和兼容性良好的3D绘制引擎HarryGE,该引擎框架包括资源管理器、场景管理器、场景编辑器和场景渲染器。资源管理器的主要作用是管理从外部硬盘导入的如模型、材质和纹理等各类资源文件;场景管理器的主要作用是规划和管理各个场景的元素实例;场景编辑器主要的主要工作是编辑各类元素实例的属性;场景渲染器是本文引擎的核心模块,它主要负责渲染每个场景中的元素实例,本文使用OpenGL/GLSL编程语言调用图形显卡渲染管线以实现渲染过程。除此之外,本文在HarryGE引擎框架上添加了各类3D渲染功能和效果,包括模型及其纹理材质导入和渲染、模型骨骼动画、随机地形生成、天空盒渲染、3D文字显示、3D声音播放、烟雾及粒子系统效果、多摄像机漫游和全局光照效果等。二、本文提出了基于GPU光栅化的光线和场景求交算法UGAB,该算法使用一个稀疏的均匀网格和三个精确的A-Buffer表示整个场景,然后利用3D-DDA线段扫描算法让光线在上述场景表示中跟踪相交物体,从而实现基于GPU的快速精确求交。除此之外,本文利用该算法提出了一个基于光栅化的光线跟踪框架,并基于该架构实现了各类常见的全局光照算法,譬如Ray casting、Whitted ray tracing(阴影、反射和折射)、AO和Path tracing。实验结果说明本文的光线跟踪算法UGAB能达到与Optix近似的精度,它相比基于均匀网格UG的光线跟踪算法使用更少显存获得更快求交速度,它相比基于稀疏体素八叉树SVO的光线跟踪算法能避免大量迭代运算而获得更高求交精度,该算法结合了UG和LDI算法的优缺点,它具有较高求交精度和较低存储消耗的特性。三、本文将该3D渲染引擎应用到人群疏散场景的仿真中,先提出了基于RVO改进的全局路径规划人群疏散算法,该算法分为局部碰撞避免和全局路径规划两部分,局部碰撞避免这部分本文使用的方法是RVO相对速度障碍物,全局路径规划这部分本文使用的方法是KD-Tree对场景空间划分,然后结合SPFA计算个体逃离疏散场景的最优路径。在改进的人群疏散算法基础上,本文先使用HarryGE引擎的编辑器将场景和人群个体模型初始化摆放在相应位置,然后使用实时计算出来的个体位置和速度数据传入引擎实现人群的更新。人群疏散算法的3D仿真结果说明了HarryGE引擎的实用性。综上所述,本文实现了一个基于实时全局光照效果的3D绘制引擎,为了验证引擎的实用性,本文将该绘制引擎应用于各类真实感3D场景的渲染中,其中包括人群疏散场景的仿真。