UE4 間接光照快取

2021-07-05 20:11:22 字數 1990 閱讀 3585

照亮環境

儘管lightmass可以生成靜態物件上的間接光照的光照貼圖,但像角色這樣的動態物件 也需要一種接收間接光照的方法。這個問題可以通過indirect lighting cache(間接光照快取)解決, 它在構建光照時使用lightmass生成的樣本來計算動態物件在執行時的間接光照。

elemental(元素)關卡中沒有應用間接光照快取的漫反射光照

應用了間接光照快取的漫反射光照

從高層次的角度來看:

使用r.cache.drawlightingsamples 1來視覺化地檢視lightmass生成的光照樣本。

這個工作流程的目標是進行盡可能少的內容設定。然而,有時候,這種放置方式 不能在浮在空中的區域上呈現足夠的細節,比如,乙個角色乘坐的公升降機或 飛行物。您可以把 lightmasscharacterindirectdetailvolumes 放在這些區域的周圍來獲得更多的細節。

這裡的這個花托是個interpactor,並顯示了 5x5x5大小的插值位置。

由於僅當物件進行了很大的移動導致光照樣本無效了時才會發生插值,因此快取會分離。注意,這些位置距離物件的邊界 是很遠的,這是為使得當該物件在世界中到處移動時可以產生連續的、穩定的光照。 大多數物件實際上會獲得 3x3x3 的插值位置。光照資料是2波段sh(就像光照貼圖一樣), 為法線貼圖提供了足夠的方向資訊,使其有效。之前,這個工作是由 dynamiclightenvironments 處理的。 這個實現的產生主要視覺效果差異是: 在乙個物件上不止有乙個樣本,插值時 沒有時間延遲。

間接光照快取也允許預覽沒有構建光照的物件。對於較小的物件,它的效果非常好, 對於像建築物或地面這樣較大的物件就不是很好了。當您移動乙個構建了光照的靜態網格物體時,它將會自動地 切換到間接光照快取,直到進行下一次構建光照為止。

這是複製的其中一根柱子,它在預覽時獲得間接光照,而不是黑色的。注意在遊戲中, 未構建光照的柱子仍然是黑色的。

照亮環境

儘管lightmass可以生成靜態物件上的間接光照的光照貼圖,但像角色這樣的動態物件 也需要一種接收間接光照的方法。這個問題可以通過indirect lighting cache(間接光照快取)解決, 它在構建光照時使用lightmass生成的樣本來計算動態物件在執行時的間接光照。

elemental(元素)關卡中沒有應用間接光照快取的漫反射光照

應用了間接光照快取的漫反射光照

從高層次的角度來看:

使用r.cache.drawlightingsamples 1來視覺化地檢視lightmass生成的光照樣本。

這個工作流程的目標是進行盡可能少的內容設定。然而,有時候,這種放置方式 不能在浮在空中的區域上呈現足夠的細節,比如,乙個角色乘坐的公升降機或 飛行物。您可以把 lightmasscharacterindirectdetailvolumes 放在這些區域的周圍來獲得更多的細節。

這裡的這個花托是個interpactor,並顯示了 5x5x5大小的插值位置。

由於僅當物件進行了很大的移動導致光照樣本無效了時才會發生插值,因此快取會分離。注意,這些位置距離物件的邊界 是很遠的,這是為使得當該物件在世界中到處移動時可以產生連續的、穩定的光照。 大多數物件實際上會獲得 3x3x3 的插值位置。光照資料是2波段sh(就像光照貼圖一樣), 為法線貼圖提供了足夠的方向資訊,使其有效。之前,這個工作是由 dynamiclightenvironments 處理的。 這個實現的產生主要視覺效果差異是: 在乙個物件上不止有乙個樣本,插值時 沒有時間延遲。

間接光照快取也允許預覽沒有構建光照的物件。對於較小的物件,它的效果非常好, 對於像建築物或地面這樣較大的物件就不是很好了。當您移動乙個構建了光照的靜態網格物體時,它將會自動地 切換到間接光照快取,直到進行下一次構建光照為止。

這是複製的其中一根柱子,它在預覽時獲得間接光照,而不是黑色的。注意在遊戲中, 未構建光照的柱子仍然是黑色的。

UE4 虛幻引擎,光照系統

光照系統 處理光照場景時,有些技巧可以幫助我們確定努力是否得到回報,比如從lit 光照模式 切換到lightingonly 僅光照 可以是我們了解光照的實際效果,杜絕其他一切干擾因素。另一種方法是設定 灰色球體 和 鍍鉻球體 這種簡單技巧,有助於我們判斷場景整體光照效果,包括 本影 反射 泛光和材質...

UE4時間相關函式

在進行遊戲構建時,我們通常會用到和時間相關的邏輯,在此稍微做下小結。當前ue4版本為4.15。基本上遊戲引擎都是以tick為中心運轉的,表現在玩家面前就是幀率了,ue4也是如此。在藍圖中要使用tick的話只要從灰色的tick上拖出呼叫就可以了,但是在c 中使用的時候需要注意的是,在預設的情況下,ti...

UE4室內光照技法製作解析

作者簡介 郭元昊,成都午時科技 擔任副總經理,技術總監。所使用軟體版本 ue4 4.9.0。最終效果圖 具體製作過程 一 陰影 在利用ue4製作室內場景時,我發現其實除了材質之外,其他時間都是在對燈光進行調節,與其說我們在模擬光,不如說我們在模擬陰影。因為陰影是否真實對場景來說太重要了,下面我就簡單...