【文章摘要】Carsten Dachsbacher在其斯图加特大学的个人页面上发表了一篇与Crytek共同创作的论文《实时间接光照中的渐进光照传播Cascaded Light Propagation Volumes for Real-Time Indirect Illumination》,其在文章总透露Crysis 2所采用的Cryengine 3引擎集成了此种光照算法。这种算法没有任何预渲染的GI,合适运用于动态场景。
Carsten Dachsbacher在其斯图加特大学的个人页面上发表了一篇与Crytek共同创作的论文《实时间接光照中的渐进光照传播Cascaded Light Propagation Volumes for Real-Time Indirect Illumination》,其在文章总透露Crysis 2所采用的Cryengine 3引擎集成了此种光照算法。这种算法没有任何预渲染的GI,合适运用于动态场景。具体实现方法如下:
首先初始化表面间接光照和低频直接光照的LPV。
从镜头角度对场景表面部分进行取样,用于计算遮挡物对光照传播的影响和间接阴影。
从初始化的LPV进行光学传播。
从使用GV和RSM(Reflect Shadow Map 反射阴影映射)的效果对比我们可以发现,左边使用GV的算法从镜头视角出发阴影有缺失。
Crytek Sponza的Techdemo场景为37x15x22立方米的空间,光照、镜头和物体为全动态,大约有26.2万多边形,GTX285在1280x720分辨率使用LPV算法速度可达58FPS。(具体视频演示下载: http://www.crytek.com/fileadmin/user_upload/inside/presentations/2009/Global_Illumination.zip)
LPV同样适用于光滑的反射表面,次场景为26.6万多边形,GTX285在1280x720分辨率使用LPV算法速度可达110FPS。
使用间接光照和没有使用的画面对比
首先初始化表面间接光照和低频直接光照的LPV。
从镜头角度对场景表面部分进行取样,用于计算遮挡物对光照传播的影响和间接阴影。
从初始化的LPV进行光学传播。
![Cryengine 3新的全局光照算法简介](http://images.enet.com.cn/2010/0221/17/r_7160596.jpg)
从使用GV和RSM(Reflect Shadow Map 反射阴影映射)的效果对比我们可以发现,左边使用GV的算法从镜头视角出发阴影有缺失。
![Cryengine 3新的全局光照算法简介](http://images.enet.com.cn/2010/0221/99/r_7165216.jpg)
![Cryengine 3新的全局光照算法简介](http://images.enet.com.cn/2010/0221/25/r_7165388.jpg)
Crytek Sponza的Techdemo场景为37x15x22立方米的空间,光照、镜头和物体为全动态,大约有26.2万多边形,GTX285在1280x720分辨率使用LPV算法速度可达58FPS。(具体视频演示下载: http://www.crytek.com/fileadmin/user_upload/inside/presentations/2009/Global_Illumination.zip)
![Cryengine 3新的全局光照算法简介](http://images.enet.com.cn/2010/0221/44/r_7162744.jpg)
LPV同样适用于光滑的反射表面,次场景为26.6万多边形,GTX285在1280x720分辨率使用LPV算法速度可达110FPS。
![Cryengine 3新的全局光照算法简介](http://images.enet.com.cn/2010/0221/14/r_7162037.jpg)
使用间接光照和没有使用的画面对比
![](http://images.enet.com.cn/end.gif)