Light Propagation Volume
簡介一個全新的真實感渲染算法,由德國著名遊戲製造商及遊戲引擎開發商Crytek在2009年度CG盛典SIGGRAPH09大會上提出。
這項技術可提供全局照明(Global Illumination)和規模照明(Massive Lighting)兩種功能。在它們的作用下能明顯改善光照質量,其中後者是在相對較小的空間內提供多種光源的一種光照技術,可用於房屋山洞等多種場景。
Crytek聲稱,“我們的技術是第一種可用於實時程式且無需像現有遊戲引擎那樣進行預先計算的高度並行互動式漫射全局光照方法,也是第一種為漫射全局照片引入光傳播的技術,這種技術擁有較高的穩定性、拓展性,而這對遊戲等運行程式來說是至關重要的。試驗證明,即使是在現有主機硬體(PS3/X360)上也能高效地使用這種方案”。
後於2010年的i3d會議上,Crytek又提出了“層次化光傳播體”(Cascaded Light Propagation Volumes)技術,不僅對原有算法進行改進使之支持簡單的遮擋與反射,且將其變為層次化細分的版本。
1、生成“反射陰影映射”(Reflect Shadow Map(RSM),即在經典陰影映射紋理中存儲物體的空間位置、法線等)。
2、將RSM信息用球面調和(Spherical Harmonics)係數方式注入一個體紋理(Volume Texture, or 3D Texture)中,該體紋理的每個“格子”(體素)存儲一個二階球面調和係數向量。(因此CryTek聲稱該算法是基於所謂“格子波爾茲曼”(Lattice-Boltzman)方法的)
3、在體紋理中進行傳播:對每個格子,收集周圍6個格子中的球面調和係數相加作為當前格子新的係數向量;反覆這樣疊代足夠次數。
4、最後將傳播完的體紋理套用到場景上(可以用於延遲著色(Deferred-Shading)或者前向著色(Forward Shading))。