當前位置:首頁 >教程首頁 > Unreal Engine >Unreal5關於lumen相關知識點分享

Unreal5關於lumen相關知識點分享

發布時間:2021-06-24 09:46:52

Hello,大家好,今天給大家分享Unreal5關於lumen相關知識點,我是木偶心沒。

感謝知乎Jiff的一張圖解釋了lumen的工作流程

0.png

稍微解釋一下就是Lumen分為了兩個部分,離線和實時運算

1、離線生成

離線部分就是首先為每個模型生成MeshCard。

1.png

MeshCard就是對每個mesh的捕獲位置。但是mesh不能太過複雜,比如一個房間的的地麵和牆等,需要被拆成單個mesh。以下這種就沒有辦法獲取精確mesh card。

2.png

然後Lumen在各個meshcard捕獲位置去獲取每個mesh的材質屬性等,並生成場景表麵的自動參數化Surface Cache。Surface Cache可以快速查找場景中光線命中點的照明。

為靜態模型生成Mesh Distance Field

Mesh Distance Field存儲的是3D空間中的點距離物體表麵最近的距離,就是軟光追的一個加速器。有些mesh可能沒有很好的距離場,並導致漏光的問題,所以可以直接在場景裏麵顯示mesh distance field來檢查問題。

3.png

然而在使用距離場mesh distance field之前,lumen會先使用屏幕空間追蹤。因為屏幕追蹤支持任何幾何類型,可用於掩蓋lumen場景和三角形場景之間的不匹配。並且屏幕空間追蹤精度高。

如果在未找到命中或光線從表麵後麵通過時就使用mesh distance field來進行軟光追。雖然lumen用mesh distance field去進行光線追蹤效果已經很好了,但是考慮性能問題,渲染器將mesh distance field合並為global distance field以加速追蹤,也就是,在每個mesh的前2米內使用mesh distance field去光線追蹤(detail tracing),剩下的就直接使用global distance field去追蹤整個場景(global tracing)。

4.png

上圖紅色表示Screen Trace,綠色表示mesh distance field,藍色表示Global distance field。

2、實時運算

Lumen Scene就是一個進行軟光追的低模場景,是很多的Mesh Card組成。

5.png

由於lumen scene隻對攝像機附近的世界而不是整個世界進行操作,所以lumen在渲染的時候依靠Nanite的LOD和多視圖光柵化來快速捕捉場景來更新surface cache。

Lumen是基於LOD來進行計算渲染的,所以如果傳統模型沒有LOD計算會非常慢。如果需要instance static mesh,它必須是Nanite而不是傳統模型,因為在Nanite的網格上會快很多(大概快了10-100倍)。

以下是Lumen在Nainte和lumen scene的渲染對比

6.png

然後使用AtlasTexture等來存儲meshcards上麵的光照信息,最後將緩存的光照信息進行最終的IndirectLighting計算。

在最後的渲染階段,Lumen非常依賴用Temporal Super Resolution在內部使用超低分辨率進行渲染,比如說在內部使用1080p的分辨率進行渲染,然後輸出4k的分辨率。但是需要注意的是,如果你在PC平時使用時,沒有調節Screen Percentage而使用默認的100,則在內部也會用4k分辨率去渲染。

7.png

3、其他

另外lumen的各種模型限製,材質限製和工作流程限製官網都有列出來

8.jpg

雖然lumen在unreal5中有兩種光線追蹤方法,軟光追和硬光追,但是由於兩者的一些限製,同時開效果會更好。

軟件光線追蹤,可以在任何DX11或更高版本的硬件上運行,並且可以選擇超快運行,但是隻支持有限的幾何類型。而硬件光線追蹤效果很好,但是消耗也非常高。並且硬光追對於PC來說,隻能用D3D12,顯卡最低配置Nvida RTX-2000和AMD RX-6000。

在early access的unreal5中,lumen支持使用的硬件光追的部分,也隻有reflection和部分Final Gather,所以在早期,我們需要同時使用軟光追的距離場和硬件光追來讓lumen工作。

另外硬件追蹤隻會用Nanite的proxy 進行計算。目前硬件光線追蹤作用的場景不能太大,不能多於10000個實例。

硬件光追比軟件光追慢大概一半,但是更準確。使用硬件光追的時候避免重疊的物體,如果從場景裏麵有複製粘貼出來的重疊mesh,則會計算速度會明顯變慢。

另外Lumen Reflections和Ray Traced Reflection(硬光追)的區別:

Lumen Reflection支持:

屏幕追蹤

軟件光線追蹤

動態GI的反射(via surface cache)

天光的移動陰影反射(via surface cache)

兩層Clear coat的反射

Ray Traced Reflections支持:

光照貼圖Lightmap Gi的反射

多次反彈的反射

未來會把更多Ray Traced Reflection的其他功能添加到Lumen Reflection中

來源:Thepoly公眾號

华体会hth体育网 賞析
  • 2101期學員李思庭作品

    2101期學員李思庭作品

  • 2104期學員林雪茹作品

    2104期學員林雪茹作品

  • 2107期學員趙淩作品

    2107期學員趙淩作品

  • 2107期學員趙燃作品

    2107期學員趙燃作品

  • 2106期學員徐正浩作品

    2106期學員徐正浩作品

  • 2106期學員弓莉作品

    2106期學員弓莉作品

  • 2105期學員白羽新作品

    2105期學員白羽新作品

  • 2107期學員王佳蕊作品

    2107期學員王佳蕊作品

專業問題谘詢

你擔心的問題,火星幫你解答

微信掃碼入群領福利

掃碼領福利最新AI資訊

點擊谘詢
添加老師微信,馬上領取免費課程資源

1. 打開微信掃一掃,掃描左側二維碼

2. 添加老師微信,馬上領取免費課程資源

×

同學您好!

您已成功報名0元試學活動,老師會在第一時間與您取得聯係,請保持電話暢通!
確定