接上回,RSM优化技术介绍后,我们本部分主要看一下,光栅GI三部曲中的LPV,这个算法算是很巧妙了,算法思路基于RSM上拓展到世界空间,可以说很具学习和思考价值,之前也简单实现过Global Illumination_Light Propagation Volumes (LPV)有兴趣的可以去简单了解下,本部分主要对LPV技术进行优化介绍与分析,学习自用,大佬勿喷。
一、LPV简述
老规矩,首先我们先来看一下LPV技术的原理以分析其性能卡点,具体的就不介绍,有兴趣的找原文,本部分只简单介绍:原始算法的思想仍是基于场景RSM缓冲区生成的虚拟光源,随后把光源数据注入到一个均匀的体积网格(3DTexture)中,该网格覆盖场景,每个网格用球谐编码代表一个位置、通量和法线的缓存数据。
我们可以将场景分为n * n * n个网格,每个网格都可以存储其相邻网格的总辐照度。具体能量传输公式可如下图所示:
其中,M是单元格的邻居数(6),P是迭代传播的次数(任意数)。下面是一个简化的单次网格传播的可视化过程:
接下来我