6.1 結論
本篇論文分析光傳播容積演算法,能即時運算出全域照明中的漫間反射,能 如此快速主要分析有三個原因,第一是網格結構的儲存光輻射資訊,第二是用低 階層的球諧函數來壓縮儲存資料,第三是用簡化且獨特的方式模擬傳遞光能量,
雖然因為簡化計算導致不像光線追蹤那樣精確,但還在可接受內誤差內,完成漫 間反射的效果。
論文中段把光傳播容積的系統實作出來,過程中遇到的資料結構的問題或是 演算流程上的細節也記錄在此,針對系統也做許多不同參數的測試,同時比較效 能與畫面的差異,而不同場景也會需要不同的參數,主要影響原因是場景的大小 與光容積的大小有關,如何搭配正確的參數也是一個值得研究的地方,並且需要 從畫面品質與效能之間取得平衡。
論文後段對光傳播容積與常見的光貼圖、光探頭做優勢比較,還有與光線追 蹤中的兩種方法做對照,同時與其他即時運算演算法做步驟與優劣的分析,也希 望未來能從此地著手,激盪出不同的計算方法,不外乎追求的就是更快速地計算 出更真實的圖片。
6.2 未來方向
I. 原系統的加速:
因為本論文所實作的光傳播容積系統步驟中,中間兩個步驟是直接由 CPU 運算而且未經加速的,如果能把他們利用 OpenGL 管線實行 GPU 加速,或是用
OpenCL 直接平行計算,就可以達到更即時的效果。
II. 光容積資料結構的應用:
例如混合計算加速,用光線追蹤來解決全域照明的焦散,再使用光傳播容積 輔助算出全域照明的漫間反射,兩者各自運算自己的強項,最後混合輸出圖片,
達到更快速的效果。
或是在光線追蹤中善加利用球諧函數的想法,像是雙向路徑追蹤法每當產生 的路徑越來越深時,計算量也會變得越來越重,當路徑太深或是打到的區域過於 複雜,可以考慮使用光容積的方法來代替,也就是說回傳的光輻射強度可以使用 儲存在空間中的光容積還原,因為路徑太深貢獻變少,所以用預估的光容積方法 應該也會相當適合。
III. 與其他即時運算的演算法做研究比較:
在光傳播容積演算法(09 年)之後,陸續也有不同的即時運算的全域照明演算 法,像是 Voxel-based global illumination [THGM11]、Voxel Cone Tracing[CNS11],
有些也已經實作在遊戲引擎上,雖然同樣用到網格的概念,但是用法不同、似乎 在細節上也有不錯的表現,因此有許多研究的價值和參考的地方。
參考文獻
相關研究論文
[CNS11] C Crassin, F Neyret, M Sainz : Interactive Indirect Illumination Using Voxel Cone Tracing. In Proc. of I3D, ACM (2011).
[DS05] C Dachsbacher, M Stamminger : Reflective shadow maps. In Proc. of I3D (2005).
[DK09] C Dachsbacher, J Kautz : Real-time global illumination for dynamic scenes.
In ACM SIGGRAPH 2009 Courses (2009).
[JKG16] J Jendersie, D Kuri1, T Grosch ; Precomputed Illuminance Composition for Real-Time Global Illumination. In Proc. of I3D, ACM (2016).
[KD10] A Kaplanyan, C Dachsbacher : Cascaded light propagation
volumes for real-time indirect illumination. In Proc. of I3D, ACM (2010).
[THG11] S Thiedeann, N Henrich, T Grosch, S Muller : Voxel-based global illumination. In Proc. of I3D, ACM(2011).
[Wan11] X Wang : Advanced Computer Graphics CS 563, VPL‐based Real‐Time
GI,Algorithm Light Propagation Volumes.
[WW93] J Wernecke, K Wollman : Open Inventor Mentor, 2nd Edition - Volume II,5.1.3. What is Real Time Ray-tracing?
相關研究網站
[1] Opengl-Tutorial:http://www.opengl-tutorial.org/
[2] Lighthouse3d.com:http://www.lighthouse3d.com/
[3] I3D 2010 Cascaded Light Propagation Volumes for Real Time Indirect Illumination:
http://www.crytek.com/cryengine/cryengine3/presentations/cascaded-light-propag
ation-volumes-for-real-time-indirect-illumination
[4] Crytek Light Propagation Volumes:
http://www.crytek.com/download/Light_Propagation_Volumes.pdf
[5] Unreal Engine Light Propagation Volumes:
https://docs.unrealengine.com/latest/INT/Engine/Rendering/LightingAndShadows
/LightPropagationVolumes/index.html
[6] LPV(Light Propagation Volume) by unityshader:
http://unityshader.hatenablog.com/entry/2014/05/10/040142
[7] Graphenix by linyizsh:
http://www.cnblogs.com/linyizsh/archive/2010/02/03/1662310.html
[8] BlackHC's Adventures in the Dev World:
http://blog.blackhc.net/2010/06/rotation-of-low-order-spherical-harmonics/
相關圖片來源
圖 2.1:WERNECKE J., WOLLMAN K.:Open Inventor Mentor, 2nd Edition - Volume
II,5.1.3. What is Real Time Ray-tracing?
圖 2.2:Global Illumination Wiki https://en.wikipedia.org/wiki/Global_illumination 圖 2.3.2:Spherical harmonics Wiki https://en.wikipedia.org/wiki/Spherical_harmonics 圖 2.3.2:Unity – Manual(LightProbes)
https://docs.unity3d.com/Manual/LightProbes.html
圖 3.2、圖 3.3.1、圖 3.3.2、圖 3.4.1、圖 3.5:
Advanced Computer Graphics CS 563, VPL‐based Real‐Time GI, Algorithm Light Propagation Volumes