我的訂單|我的收藏|我的商城|幫助中心|返回首頁
搜維爾[www.gentlemenlisten.com]>服務>案例分享 應用研究>案例分享>游戲動畫

Lumen為《堡壘之夜:大逃殺》第四章帶來實時全局光照

文章來源: 作者:frank 發布時間:2023年02月03日 點擊數: 字號:

在Playstation 5、Xbox Series X和Xbox Series S平臺發布的《堡壘之夜:大逃殺》第四章已經默認啟用了Lumen。在PC和云游戲平臺,只要將“全局光照”的質量設為“高”或“史詩”,就能啟用Lumen,如果顯卡支持,還可以選擇使用硬件光線追蹤獲得更高的質量。

《堡壘之夜:大逃殺》第四章中的Lumen

在第四章之前,由于技術限制,《堡壘之夜》在次世代主機上使用的是虛幻引擎4的動態光照技術。我們只能使用距離場環境光遮蔽照亮環境,當藍色的天空光照泄漏到建筑物中時,會導致室內產生寒冷的感覺。在第四章中,Lumen高質量地計算了全局光照,重新帶來了溫暖的陽光反射和精細的間接陰影。

距離場環境光遮蔽與Lumen全局光照的對比。自動曝光已隨Lumen全局光照一起啟用。

有了精確的全局光照,室內區域會明顯暗于室外,因為天空光照被正確地阻擋住了,此時需要啟用自動曝光。

在次世代主機上,之前版本的《堡壘之夜》由于技術限制,只能通過屏幕空間反射(SSR)實現反射。這種效果只能反射屏幕上顯示的內容,不足以防止天空光照泄漏到建筑物中。SSR也只能在鏡面上提供良好的效果,所以粗糙表面上會缺少反射?!侗局埂返拿佬g師們一直在努力繞過這些限制,他們采用的方法是盡可能避免在室內使用會產生鏡面反射的材質!Lumen反射可以在光亮表面上提供精確的光線追蹤反射,即使是在室內,也能夠正確渲染金屬和光滑材質。美術師現在可以實時看到材質對光照做出的完整反應。

屏幕空間反射與Lumen反射在冰面上的對比。

Lumen反射在水面上也得到了廣泛應用,它們比SSR更清晰,而且不局限于只能反射屏幕中的可見內容。

屏幕空間反射與Lumen反射在水面上的對比。

《堡壘之夜:大逃殺》有許多需要用到動態光照的游戲事件,包括當日時間發生變化,玩家建造和破壞建筑物,以及打開門,等等。Lumen是完全動態的,可以對這些變化做出實時反應。為了降低成本,Lumen確實會將計算過程分攤到多個幀中,但《堡壘之夜》的目標是實現高幀率,這在最大程度上減少了隨時間積累的偽影。

通往第四章的旅程

隨著虛幻引擎5.0版本中的工作圓滿結束,我們將關注點轉移到了《堡壘之夜:大逃殺》第四章以及它帶來的挑戰。《堡壘之夜》在主機上的最低目標幀率為60FPS,每幀只占16.67毫秒,如果考慮到為動態分辨率留出的余裕以及激烈戰斗中的游戲成本,每幀的時間甚至會更少??紤]到各種渲染功能,動態全局光照和反射加起來只能占用4毫秒。這個預算非常低,因為對3A級游戲來說,僅僅在光線追蹤反射上花費4毫秒也是很常見的。所以要在不影響次世代光照質量的前提下,盡可能地做出各種優化。

首先,必須決定要在《堡壘之夜:大逃殺》第四章中使用哪種光線追蹤方法。由于之前在主機平臺發布了《黑客帝國覺醒:虛幻引擎5體驗》,并在其中啟用了使用硬件光線追蹤的Lumen,但是那個技術演示只有30FPS的預算。經過一些早期測試,最終確定了,Lumen的軟件光線追蹤需要達到60FPS的預算,因為它的追蹤成本較低。但是,軟件光線追蹤的近似性質帶來了一些挑戰,在植被質量和水面反射方面尤其明顯。

《堡壘之夜:大逃殺》第四章中出現了森林和被草地覆蓋的連綿山丘。在之前發布的Lumen項目中,沒有大規模的植被,所以還沒有機會處理這方面的工作。對植被的過度遮蔽是最嚴重的問題之一。

Lumen的軟件光線追蹤使用全局有向距離場表示場景表面。有向距離場僅能表示不透明表面,在其中穿行的光線只會給出兩種結果:命中或未命中。這會導致在被建模成聚合體的植被網格體上,將出現嚴重的過度遮蔽。因此虛幻引擎團隊開發了一種與有向距離場相交的新方法:光線每前行一步,都要做出是否相交的選擇。這使它成了一種隨機技術,也允許更加精確地對聚合幾何體進行建模,同時保留在場景其他部分表現良好的有向距離場表示法。

利用半透明隨機距離場相交解決植被上的過度遮蔽問題。

有些問題解決起來比較容易。Lumen使用屏幕追蹤添加軟件光線追蹤所缺乏的細節,但草地的細節太過豐富,致使這些屏幕追蹤引發了明顯的鋸齒問題。一種簡單的解決措施是略過植被上的屏幕追蹤命中點,這足以解決偽影問題。

通過略過植被命中點,解決屏幕追蹤在草地上產生的嚴重噪點問題。

軟件光線追蹤的另一個大問題是,在反射中你會看到,表面上緩存的光照有著較低的分辨率。Lumen為每個網格體維護了一個分辨率相當高的表面緩存,用來有效地為光線命中點提供光照,以此將它們合并到了一個更加模糊的體素化表示中。通過開發一個反向查找結構,允許直接對被光線命中的每個網格體進行表面緩存采樣,從而產生更精確的自發光光照和更清晰的水面反射。

當光線直接對Lumen的表面緩存進行采樣時,使用軟件光線追蹤將得到更加清晰的反射(為了取得可視化效果圖,屏幕追蹤已被禁用)。

說到水面反射,每當Lumen的屏幕追蹤被前景物體阻斷時,我們都會在被阻斷的地方看到垂直條紋偽影。對于運動中的角色來說,這種偽影非常容易分散觀看者的注意力。Lumen的屏幕追蹤無法知道物體的厚度,所以我們必須切換到軟件光線追蹤才能處理剩下的光線,這往往會導致顏色出現差異。這甚至還不如屏幕空間反射,屏幕空間反射使用的是一種成本更低,但不太精確的光線相交方法,但支持在前景物體后方繼續相交。即使是對于軟件光線追蹤的命中點,我們也能通過對屏幕顏色的采樣解決垂直條紋問題,這減少了顏色不匹配的現象。值得注意的是該解決方案目前并沒有添加到UE5.1版本中。

通過對光線命中點的屏幕顏色進行采樣,在最大程度上消除由屏幕追蹤和軟件光線追蹤之間的不匹配導致的垂直條紋現象。

質量方面的其他改進取得了出人意料的效果。為了符合四毫秒的預算,Lumen全局光照大幅降低了采樣率。這會使噪點變得更加明顯,并在游戲體驗中分散玩家的注意力。通過整合NVIDIA的時空藍色噪點技術,大幅減少了噪點。這項技術預先優化了噪點模式,當噪點在多個幀中積累起來時,可以迅速消除它們。這樣一來,無需追蹤更多光線,就能得到更加干凈的間接光照。

有了時空藍色噪點技術,在穿門而入的天空光照中,噪點變少了。

美術方向的控件

美術師可以通過一些手段管理間接光照的美術方向,例如定向光源中的“間接光照強度”。《堡壘之夜》的美術師將這個值設為2.0,這樣可以增強被反射的光線,給游戲帶來溫暖的感覺。但室內區域出現了一個問題:如果附近沒有窗戶或光源,使用精確的全局光照時,這個區域會變得非常暗。從室內走向室外時,這會導致曝光出現巨大波動。美術師可以通過放置更多光源解決這個問題,但會增加陰影成本。

Lumen的間接光照開發了新控件:后期處理體積中的“天空光照泄漏”和“漫反射顏色增強”?!疤炜展庹招孤笨梢栽谑覂壬晕⑻嵘h境光照的強度,限制曝光范圍,而“漫反射顏色增強”可以增強經過多次反射的間接光照。與添加更多光源不同,這兩個選項不會明顯增加GPU成本??紤]到可玩性,《堡壘之夜》的美術師最后使用了“天空光照泄漏”防止室內區域變得太暗。

泄漏進來的天空光照可防止區域變成純黑色。

精確的全局光照創造了高對比度光照,在這種情況下,單個曝光值無法取得良好的效果。圖像中的明亮區域(尤其是天空和被太陽照亮的表面)會曝光過度,而黑暗區域則曝光不足。虛幻引擎5.0引入了一個名為“局部曝光”的新功能,在《堡壘之夜》那些具有挑戰性的高動態范圍光照條件中,美術師用它保留了高光和陰影細節。

通過局部曝光保留高光和陰影細節,這是UE 5.0中的新功能。使用Lumen時,務必設置局部曝光!

性能

Lumen非常依賴通過虛幻引擎5的時序超級分辨率(TSR)功能對4K輸出進行時序上采樣。比起以質量明顯較低的設置在4K原生環境下運行Lumen,使用TSR在內部渲染1080P分辨率可以提供最好的最終圖像質量。

你可以配置Lumen,通過在平臺的設備配置文件中將“全局光照”質量和“反射”質量設置為“高”,在次世代主機上實現60FPS的目標,具體做法如下:

將Lumen全局光照和反射質量設置為“高”,目標幀率為60FPS

添加控制臺變量sg.GlobalIlluminationQuality=2

添加控制臺變量sg.ReflectionQuality=2

Lumen全局光照通過降低采樣率,使其遠低于常規標準(對光線的逐像素采樣率降到原來的十六分之一),達到降低質量級別的目的。當追蹤如此少量的光線時,間接光照的時間穩定性會降低,黑暗區域的噪點會變得更明顯?!疤炜展庹招孤蹦軌蛴行У仉[藏這些新出現的噪點。

60FPS設置下的Lumen對比30FPS設置下的Lumen。Lumen能夠更好地捕捉小細節,而且在30FPS的設置下,有著更高的時間穩定性,這在截圖對比中無法體現出來。

制作《堡壘之夜:大逃殺》第四章時,團隊對Lumen全局光照做出了許多小規模優化,但對提升速度幫助最大的還是將整套方法遷移至異步計算管線中,這樣可以節省0.8毫秒。Lumen的各種算法中有很多計算調度,在兩次調度之間,GPU會有很短的空閑時間,但這些時間會累加起來。

此外,光線追蹤的調度往往會出現長尾效應,少數光線完成調度的時間比其他光線更長。通過將這項工作遷移至異步計算管線,GPU能夠利用空白時間處理幀中的其他工作,這更充分地利用了GPU的處理能力。UE 5.2中將默認為主機平臺啟用異步Lumen。

Lumen的工作現在是在異步計算管線中進行的,這更充分地利用了GPU的計算能力。

在除水面外的其他地方,Lumen反射可將渲染分辨率降至一半,通過降低質量級別來控制預算,實現60FPS的目標。Lumen全局光照已經能夠產生粗糙的反射,但是Lumen反射需要追蹤額外的光線才能獲得清晰的反射效果。根據屏幕上有多少足夠光滑的材質需要反射光線,反射成本可能存在很大的變數。植被上的反射光線已經在基礎通道和陰影深度中產生了較高的成本,通過更頻繁地略過這些反射光線,實現了一項非常重要的優化,縮減了一到兩毫秒的時間,并且沒有造成明顯的質量損失。

Xbox Series S帶來了一個特殊難題。Xbox Series X的GPU性能達到了12TF,而Xbox Series S的GPU性能只有4TF,所以需要為它降低內部分辨率,但這樣做還不夠。團隊不想退回到使用距離場環境光遮蔽,這將大大改變外觀。因此他們開發了一種模式,讓Lumen全局光照提供粗糙反射,同時使用屏幕空間反射實現鏡面反射。通過禁用Lumen反射,最終他們節省了大約1毫秒的時間,比起僅使用屏幕空間反射所能實現的效果,這種方式為我們帶來了更出色的外觀。

即使為了實現可延展性而禁用了Lumen反射,Lumen全局光照仍會提供粗糙反射。

成功地在4毫秒的平均成本預算內整合了Lumen全局光照和反射,在次世代主機上實現了60FPS的幀率?!侗局梗捍筇託ⅰ返谒恼略诖问来鳈C上的平均內部分辨率到達了4K的55%-60%,同時穩定地實現了60FPS的幀率。

降低質量級別

《堡壘之夜》已登陸多個平臺,但只有最高端的平臺支持Lumen。游戲體驗需要做到盡可能相似,不應該讓美術師針對各個平臺重新設置光照。因此需要根據“全局光照”的質量設置調整環境光照:

史詩級和高級

啟用Lumen,提供全局光照

使用Lumen的天空光照泄漏,防止黑暗區域變成純黑色

啟用自動曝光,在室內產生正確的曝光

啟用局部曝光

中級

為大規模環境光遮蔽啟用距離場環境光遮蔽(而非Lumen)

為小規模環境光遮蔽啟用屏幕空間環境光遮蔽

禁用自動曝光

低級

天空光照無陰影

因為沒有任何形式的天空光照陰影,所以通過r.SkylightIntensityMultiplier=0.7降低天空光照強度,使其與中級質量更加匹配

本文轉自虛幻引擎官網~

電話:010-50951355 傳真:010-50951352  郵箱:sales@www.gentlemenlisten.com ;點擊查看區域負責人電話
手機:13811546370 / 13720091697 / 13720096040 / 13811548270 / 13811981522 / 18600440988 /13810279720 /13581546145

  • 暫無資料
  • 暫無資料
  • 暫無資料
  • 暫無資料
  • 暫無資料
www.av精品