论文部分内容阅读
全局光照对提升虚拟世界中场景的真实性至关重要。全局光照的离线渲染技术已经发展的非常成熟了,实时渲染技术在近几年也得到了快速的发展,尤其是在游戏领域发展。全局光照实时渲染也从最初静态场景的渲染开始转向动态场景。这使得最初通过预处理来减少全局光照算法计算量的方法变得不可行,给全局光照算法的模拟增加了难度。本文首先将重点介绍游戏引擎Cryengine3中采用的全局光照算法光传播体技术(Lightpropagationvolume,LPV)的原理和实现,并针对该算法无法处理场景中的光泽表面光照效果这一不足点进行改进。LPV技术是目前比较先进和成熟的针对动态场景的实时全局光照算法之一。该算法非常适合渲染游戏这样包含大量理想漫反射表面的场景,但是忽略了光泽表面的光照效果。因此本文对LPV算法做了如下改进:1.首先本文总结和扩展了LPV算法。通过在LPV算法迭代传播辐射热的过程中加入符合其传播架构的光线跟踪算法,消除了其不能处理光泽表面的限制。新方法提升了场景光泽表面的渲染效果。2.为了进一步提升含有大量光泽表面的动态场景的光照效果,本文提出了基于LPV的光子映射算法。我们利用LPV来代替光子图中的全局光子用以渲染场景中漫反射。利用LPV存储焦散光子来代替光子映射中的焦散光子图。最后利用该算法本文成功实现了对完全动态场景的焦散效果的渲染,而且未借助任何的预计算技术。