虛幻引擎 5 中的 Lumen 是一個完全動態的全局照明和反射系統。它可以在虛幻引擎 5 中使用,因此創作者無需自行設置。它是為下一代控制臺和建筑可視化等高端可視化而設計的。那么它提供了哪些功能以及如何工作?
全局照明
當光離開光源時,它會照亮光可以到達的所有表面。這在計算機圖形學中稱為直接照明。在現實生活中,光并不止于此,它會從表面反射,呈現出相應的顏色,并照亮其他表面。從粗糙表面向各個方向反射的光稱為漫反射間接照明或全局照明。從光滑表面鏡面反射的光稱為反射。最終,光線到達眼睛或相機形成圖像。
過去,游戲的全局照明必須離線計算,因為計算量太大而無法實時計算。該離線過程稱為光照貼圖烘焙。在虛幻引擎中,光照貼圖使用CPU Lightmass或GPU Lightmass進行烘焙。靜態光照貼圖提供高質量的光照,但需要較長的構建時間。它們限制了游戲環境。改變間接照明(例如移動壁掛式電視)會導致照明不正確,如下兩張圖所示:
?
傳統上,具有動態場景的游戲依賴于基于輻照度探頭的照明和環境光遮擋等技術來近似全局照明。高質量的實時全局照明一直難以實現。
Lumen 實時模擬場景周圍的光線反射,通過自動更新間接照明來改變游戲世界。這意味著玩家可以破壞部分關卡、更改一天中的時間或淹沒部分關卡,并且照明將相應地發生實際變化。不會再有“照明需要重建”的消息。游戲開發者在虛幻編輯器中進行更改時不再需要重建光照 - Lumen 可以實時處理它。
Lumen 提供高質量的實時全局照明,包括滲色和間接陰影等效果。Lumen 支持無限數量的漫反射光反射,這對于具有明亮表面的場景(例如下面場景中的白色疼痛)非常重要。
Lumen不僅可以解決全局照明問題,還可以處理天空陰影問題。天空陰影導致室內環境比室外環境顯得更暗。?
?
Lumen 還可以準確地傳播來自燈和窗戶等發光材料的光,而無需任何額外的性能成本。然而,在出現噪聲偽影之前,發射區域的小度和亮度是有限的。從發射材料傳播光本質上比從手動放置的光源傳播光更困難。
?
Lumen 還可以解決半透明材質和體積霧的全局照明,但質量較低。在下面的示例中,發射標志網格動態地照亮體積霧。
反射
Lumen 可以動態計算任何粗糙度水平的表面的反射。這取代了對預先計算的反射技術(例如反射捕獲、平面反射和屏幕空間反射)的需求。
Lumen 僅僅解決從相機直接可見的動態全局照明是不夠的;Lumen 還提供動態 GI 和在反射中看到的陰影天光。這可以實現更真實、更準確的反射。
?
?
Lumen反射可以準確地模擬涂層材料,例如汽車油漆,其外涂層具有鏡面反射,同時內層也具有更光滑的反射。這使得涂層材料的反射更加真實。
?
Lumen 中的光線追蹤
Lumen 利用光線追蹤來計算照明效果。它使用場景的近似版本來實現更快的光線交叉。可以通過切換到流明場景視圖模式來查看該場景。此視圖顯示當 Lumen 跟蹤光線以計算全局照明和反射時,場景在 Lumen 中的顯示方式。
?
默認情況下,Lumen 使用網格距離場,這是一種軟件光線追蹤技術。這是因為它不需要支持硬件光線追蹤的顯卡。距離場以允許光線快速相交的方式表示網格表面。
?
?
Lumen 中的軟件光線追蹤還使用全局距離場,將所有網格合并到一個距離場中。即使有許多重疊的網格,這也能提供非常快速的光線交叉——這是使用大量詳細的 Megascans 資源時的常見情況。Epic在 Nanite 之地和遠古之谷技術演示中僅使用全局距離場演示了 Lumen,因為這些場景中存在大量網格重疊。
表面緩存視圖
當光線照射到表面時,Lumen 必須評估材料和入射光,這是昂貴且低效的。多條光線可能會擊中同一點,并且材質可能有許多紋理查找。為了優化這一點,Lumen 將表面信息緩存在其默認啟用的Surface Cache中。
表面緩存通過選擇捕捉每個網格的方向來填充,以便覆蓋所有表面。當玩家移動時,Lumen 會將附近的網格重新捕獲到表面緩存圖集中。納米幾何系統有助于加速這些渲染,盡管 Lumen 不需要它。然后,表面被照亮,包括多重反射全局照明和天空照明,這將在反射中看到。然后,表面緩存照明就可以加速全局照明和反射等功能。
Surface Cache 是 Lumen 中的一項關鍵優化,但也對內容有影響。只能支持具有簡單外部的網格 - 墻壁、地板和天花板應該是單獨的網格。將帶有家具的整個房間作為單個網格導入預計不會與 Lumen 配合良好。Lumen 需要單獨的網格來有效地緩存表面信息。
?
Surface Cache View 中的粉色區域缺乏全局照明覆蓋。它們在反射中會顯示為黑色,并導致與視圖相關的照明錯誤,因為只有流明屏幕跡線在那里處于活動狀態。
?
最終聚集和去噪
光線追蹤是一項要求很高的操作,因此我們無法追蹤很多光線。同時,屏幕上的每個像素都需要全局照明,其中考慮來自每個表面的光。我們無法追蹤所有方向的光線,因此我們必須追蹤一小部分。如果我們錯過了重要的光線方向,它將顯示為噪聲,因此我們必須策略性地確定跟蹤哪些方向并盡可能地重復使用跟蹤。
Lumen 使用基于輻射緩存的高級最終聚集算法來實現漫反射全局照明。Lumen 的最終聚集使用屏幕空間輻射率緩存來大大減少主屏幕的全局照明計算。縮小尺寸的間接照明與全分辨率材質數據集成,以創建全分辨率著色。
入射光在輻射緩存內進行過濾,這大大減少了噪聲并重復利用了附近像素之間的少量光線軌跡。這與普通的屏幕空間降噪器不同,因為我們仍在下采樣的輻射緩存空間中工作,這要高效得多。
?
Lumen 仔細地確定追蹤光線的方向。它檢查前一幀中具有明亮照明的方向,這種技術稱為傳入照明的重要性采樣。前一幀的光照用于引導當前幀中的光線追蹤位置,從而獲得與追蹤四倍光線相同的質量,同時運行速度更快。在下面的場景中,使用重要性采樣選擇白色光線。
?
最后,Lumen 將附近的照明與遠處的照明分開,并為遠處的照明追蹤更多的光線,以通過一種稱為世界空間輻射緩存的技術來減少噪音。當僅通過通過小窗戶射入的天空光來照亮室內房間時,這一點尤其有價值,并且對于室內環境中的 Lumen 質量至關重要。
?
對于粗糙表面上的反射,Lumen 重復使用屏幕空間輻射緩存,無需額外費用。這使得 Lumen 能夠在汽車油漆等光澤涂層材料上提供第二層反射,而無需執行兩次單獨的計算,這會使成本加倍。
所有這些采樣和降噪技術對于 Lumen 的高質量和高效率至關重要。雖然 Lumen 不是為直接照明而創建的,但由于最終聚集的保真度,有時可以使用發射幾何體完全照亮場景。在《黑客帝國:覺醒:虛幻引擎 5體驗》中,實驗性夜間模式僅利用流明全局照明和反射來傳播來自數百萬個發射窗網格的光線;藝術家沒有添加任何光源。
?
性能和質量
Lumen 主要依靠虛幻引擎 5 的時間超分辨率算法進行時間上采樣來實現 4K 輸出。與以明顯較低的質量設置在 4K 下本地運行 Lumen 相比,這可提供最佳的最終圖像質量。
當引擎使用全局照明和反射的高可擴展級別時,流明可以在下一代控制臺上達到 60 FPS,盡管這些設置的質量仍需要改進。
在其他方面,Lumen 可以通過以下方式提高質量:
- 提高后處理體積設置中的最終聚集質量利用硬件光線追蹤當光線照射到表面時利用命中照明來獲得更高的質量,而不是表面緩存
隨著設置的增加,Lumen 可以為高端建筑可視化提供高質量的實時全局照明和反射。
這就是關于虛幻引擎 5 中 Lumen 的全部內容。希望您喜歡這篇文章并掌握其功能和內部工作原理。
想要高效運行虛幻引擎5,可以試試贊奇云工作站
但是如果想要體驗一下Lumen的強大,那么本地電腦算力要求可不低哦,在實際運行ue會遇到電腦硬件配置不足帶不動軟件,前期硬件投入過大,還會遇到項目文件資產過大,項目耗時久,本地資源無法釋放的情況等,建議可以試試贊奇云工作站,云端制作快人一步。
贊奇云工作站可以為UNREAL 用戶提供云端制作輸出方案,提高工作效率。用戶在全國各地通過云工作站直接連接服務器,共享一套資產, 可以直接在云工作站上制作 / 修改工程文件,減少數據傳輸成本。
?
?
?