在3D電腦圖形中,全球照明(Global Illumination, GI)是指一系列用來增加3D場景中真實感的算法。這些算法不僅考慮來自光源的直射光(直接照明),還考慮光線被場景中其他表面反射的情況(間接照明)。理論上,反射、折射和陰影等效果都屬於全球照明的範疇,因為它們涉及到物體之間的相互影響,而非僅僅依賴於直接光源的照明。
由全球照明算法渲染的圖像往往比僅使用直接照明算法的圖像看起來更具真實感。
全球照明算法的應用使得3D場景的燈光效果更加豐富,然而這些圖像在計算上通常比較耗費資源,因此生成的速度會較慢。舉例來說,常見的一種方法是計算場景的全球照明,並將其信息與幾何結構一起存儲(如輻射度算法)。這種存儲的數據可以用於從不同視點生成圖像,從而在執行場景漫遊時避免重複進行耗時的燈光計算。
輻射度、光線追蹤、光束追蹤、锥形追蹤、路徑追蹤、體積路徑追蹤、Metropolis光傳輸、環境遮蔽、光子映射和簽名距離場等都是用於全球照明的算法示例。
這些算法模擬了散射間接反射,這是全球照明的一個重要組成部分;然而大多數算法(除輻射度外)也模擬了鏡面反射,這使它們能更準確地解決燈光方程,從而提供更加真實的照明效果。用於計算場景中光能分布的算法與工程設計中的熱傳遞模擬使用有限元方法密切相關。
在實時3D圖形中,準確計算全球照明仍然是一項艱巨的挑戰。為了適應實時運算的需求,全球照明的散射間接反射組件通常會用一個“環境”項來近似,也稱為“環境照明”或“環境顏色”。雖然這種近似方法(也被稱為“作弊”,因為它並非真正的全球照明方法)在計算上比較簡單,但單獨使用時往往無法提供足夠真實的效果。
環境照明被認為會“壓平”3D場景中的陰影,使整體視覺效果顯得平淡無味。
然而,正確地使用環境照明可以成為補償計算能力不足的一種高效方式。例如,許多專業的3D程序中使用的算法不斷進步,以有效地模擬全球照明。這些算法是對渲染方程的數值近似。眾所周知的計算全球照明的算法包括路徑追蹤、光子映射和輻射度。
另一種模擬真實全球照明的方法是使用高動態範圍影像(HDRIs),也稱為環境圖,這些圖像可以環繞和照亮場景。這一過程被稱為影像基照明。
影像基照明利用環境中的光線信息,能夠顯著改善3D場景的真實感。
隨著科技的進步,越來越多的算法和技術被開發出來,以便在保持計算速度的同時,提高全球照明的效果。這些方法的發展對於虛擬實境、遊戲設計及動畫製作等領域的影響深遠,未來或許能為創造更具沉浸感的體驗鋪平道路。
全球照明不僅能優化視覺效果,也能讓觀眾與作品之間產生更深的聯繫。隨著這些技術的不斷進步,我們是否可以期待一個完全真實的虛擬世界的到來呢?