Site icon 8bit.media

擱淺項目: 將Houdini和UE4結合到環境藝術中

Spread the love

達米安·拉帕(Damien Lappa)討論了“擱淺項目”(Standing Project)的管道,這是一個有機的環境,靈感來自傳說中的小島製作公司(Kojima Productions)的遊戲。

介紹

我叫達米安·拉帕(Damien Lappa)。我最初來自愛沙尼亞的首都塔林,目前在Ubisoft Paris擔任環境藝術家。

我進入遊戲行業的旅程始於位於芬蘭Kouvola的XAMK大學的遊戲設計學位。我一直對攝影和遊戲都充滿熱情,在我的早期學習中愛上3D環境藝術是一個時間問題。

加入育碧之前,我曾在外包工作室-Ringtail Studios和elite3d工作。到目前為止,我已經為多個項目做出了貢獻,包括《鮮血與真相》,《狂怒煉獄2》,《極速快感:熱焰》和湯姆·克蘭西的《火線獵殺:絕境》。

發現胡迪尼Houdini

一段時間以來,SideFX Houdini被集成為用於多個方面的遊戲開發工具。改變遊戲規則的最大方式之一是Houdini Engine的發布,它使工程師能夠在內部工具或第三方軟件解決方案(包括3dx Max,Maya,UE4等)內部搭建過程流程的橋樑。

在某些情況下,如果您的概念在短時間內不斷變化,那麼執行過程可以成為一個不錯的解決方案。有多個DCC軟件包可讓您使用其某些功能,例如3ds Max和Maya,但在某些時候它可能會變得不一致,如果最終有數據過載,則可能必須將其收起以確保文件安全。

我第一次看到Houdini是在幾年前。它僅用於有限的方面,但足以激發我的好奇心,可以更深入地進入過程工作流。在製作Ghost Recon Breakpoint的過程中,我開始更加熱衷於學習Houdini,在那裡他大量參與了許多主題,包括世界建設。

學習Houdini成為我個人的挑戰。作為一名藝術家,我將其視為一種工具,使我可以通過多種創造性方式創建環境,這些環境具有無損工作流程,其規則和交互作用均在大型和微型範圍內進行。通過數字資產(HDA)將Houdini引擎應用於Maya或Unreal Engine之類的程序包,使我可以重用並適應特定需求,並且存在各種各樣的可能性,並且在SideFX的支持下,用於gamedev的大多數複雜工具甚至更多比以往任何時候都易於訪問。

如今,Houdini每天都成為我在其他工具中使用的主要軟件。 

擱淺項目:關於項目

毫無疑問,該項目的靈感來自死亡擱淺。自遊戲發布以來,我一直跟隨著該遊戲的開發團隊進行令人難以置信的工作,研究其世界設計非常榮幸。

創建過程從遊戲的簡單屏幕截圖開始,在此過程中,我從其他地方獲得了一些啟發,包括現實生活中的圖像以及其他諸如Doom Eternal,Ghost Recon Breakpoint或Far Cry 5的項目。

最終,目標不僅是構建環境,而且還通過將Houdini和Unreal Engine鏈接在一起來創建和調整規則係統。

地形生成

對於許多人來說,地形的創建有時可能是一個複雜的過程,需要多個步驟和調整,尤其是當您要創建更原始的東西時。使用Houdini,可以僅使用幾組節點來生成任何詳細的表面,從而從頭開始創建基本地形。

我喜歡在程序生成過程中使用的一種技巧稱為Pareidolia,它被稱為識別雲中熟悉的形狀。如果您被困住並且不知道從哪裡開始,就會產生噪音,您的大腦將更有可能開始發現一些有趣的形狀,這些形狀可以內置到合成物中。

此過程的起點是創建幾個Heighfield節點,並儘快將其保存為數字資產(HDA)。在幾分鐘之內,您可以創建景觀的基礎,您可以隨時返回該景觀並添加更多規則。在此階段,我還建議根據坡度和曲率將第一個遮罩集成為圖層。設置得越早,就越容易添加更複雜的邏輯,例如樹木,路徑或河流,以及對遮罩的調整,這些調整將更加受到控制。

虛幻引擎4允許在沒有任何紋理的情況下將風景遮罩與圖層屬性集成在一起,並在風景材料中使用其樣本。在此早期階段,它不僅使您有機會粗略地了解第一步,而且可以重用它,並在單個文件中將地形帶到最終結果。

河系

創建景觀基礎之後,我必須建立生成過程的第一套規則:河流系統。

如果您對河流的基本創作感興趣,請查看Ben Schrijvers關於“地平線零黎明”中河流產生的演講。有很多有趣的技巧可以添加到多個場景中!

該函數本身基於數位資產內部暴露的曲線,該曲線會自動適應位置。對於此項目,我通過基本的固定隨機寬度簡化了河流,並通過網格為融合點添加了步進效果。如果您可以通過簡單的方式實現某些效果,請不要害怕這樣做!有時,它有助於快速概念化概念,並在以後重用它以添加更複雜的邏輯。

樣條曲線生成的數據用於修改圖層,以確保例如草永遠不會在水下生長。在此基礎上,我還創建了一層新的濕潤層,在著色器內部分配了一層濕潤層,通過添加一些常數來調整顏色的亮度和材質的粗糙度,從而為河岸增加了一些水分。

通過在地面和河流之間形成交點,它不僅可以創建新的遮罩,排除規則並分散屬於該區域的資產,還可以通過添加頂點顏色來顯示網格內部的泡沫和位移來影響網格本身。 UE4著色器。除此之外,借助SideFX Labs(以前是Gamedev Tool),設置流圖從未如此簡單。

簡而言之,流圖是具有方向信息的紋理,該紋理基於影響著色器內部的UV的2個浮點/通道,從而帶來流效果。就單個著色器中的可重用性而言,通過影響紋理和輸出,將其設置為功能可能變得非常有用。使用帶有頂點顏色的lerp作為混合的解釋可以很容易地為運動添加所需的複雜性,例如像水一樣具有泡沫效果。

如果您對製作流程圖感興趣,有很多不錯的教程,介紹如何使用不同的軟件解決方案來實現它,包括用手在Substance Painter中繪畫。Houdini之所以如此強大,是因為每當我對隨機分散的資產進行更改時,矢量的方向都會自動應用。

修飾風景

創造巨大的物體有時會變得非常繁瑣,尤其是在開放世界中。有很多方法可以修飾環境場景。其中之一是實例化預製資產,並使地形適應最終外觀以創建令人難以置信的景觀。另一種方法是使用程序化生成!

懸崖的創建靈感來自我最喜歡的Etienne Carrier關於《孤島驚魂5》程序世界構建的演講之一。如果您還沒看過,一定要看。這是Houdini在gamedev中的強大功能的最好例證之一!

為了生成坡度,我將遮罩從紋理轉換為3D對象,然後將其拉伸,將背面保持為一組,以影響最終的網格以移除背面。在大多數情況下,要創建有機對象,我將使用基於體素的轉換(VDB),然後根據UV添加由“ Quixel Megascans”中的“高度圖”紋理投影的位移。

我最近發現的另一個選擇是使用SideFX Labs團隊開發的Triplanar投影,該投影帶來了簡化的工具來構建更複雜的系統,並且如果需要,可以在以後隨時對其進行拋光。

用這種方法創建懸崖的主要缺點是獨特和大型物體的數量。要將生成的資產導出到引擎,需要通過Clip節點將網格劃分為更多的片段,以防止流式傳輸問題。但是,結果是,您可以基於單個紋理使地形變得異常獨特。

對我來說,使資產像塔一樣是最棘手的部分。創建具有未來派科幻色彩的形狀有時可能是一個費力的過程,以找到適合環境的合適輪廓。

最初,我的意圖是手工製造資產,但是通過反複試驗,我找到了一個有趣的解決方案。這個過程從生成一個形狀相似的虛幻城市開始,然後我從其他隨機片段中挑選了我最喜歡的城市。

該過程主要由兩個節點的組合構建:Polyextrude,具有基於每個圖元的隨機頂點顏色的附加屬性,以及SideFX Labs開發的Lot。我決定將其餘未選擇的城市形狀放置在很遠的地方,以添加其他輪廓。

霧和雲

胡迪尼(Houdini)最大的優點之一就是處理量大。不需要任何高級技能就能製造雲或霧。只需找到合適的形狀並將其轉換為雲,然後將結果渲染為紋理即可。

首先,足以從基礎網格物體開始直接創建一個體積,並在其空間上散佈點。由於霧是由複雜的空氣流組成的,因此這種網格的組合被重塑為一個體積,在這裡我開始通過VOP添加採樣噪聲以模擬其效果。

另一個選擇是使用簡單節點,例如“雲”和“雲噪聲”,但就我個人而言,我更喜歡堆疊一些VOPS,這使我可以添加“湍流”或“抗鋸齒”噪聲並相互混合。不要擔心,創建雲是一個非常有趣的過程!

我在Unreal中使用霧的方式基本上是使用簡單的不透明的半透明著色器定位平面,並使用我在Houdini中的Mantra中渲染的圖像作為紋理進行設置。

回到流程圖,這是一個很好的例子,說明如何重用基本數學函數在環境中添加更多動態特性。對於“擱淺項目”場景,我已經使雲層急劇變暗,但是下次我一定會更加關注此主題。

散射物體

在準備好所有資產的這一刻,我結合使用了Houdini通過HDA在虛幻引擎4內部的多個實例的散射系統和內置草皮系統,將基於遮罩的微型道具帶入景觀材料中。

在某個時候,當您開始在一個數字資產中的兩個應用程序之間使用數據時,計算更改的時間可能變得非常大,尤其是如果您最終想要稍微調整基準時。對我來說,解決方案是使用文件緩存將系統分為多個數字資產,以在每個HDA中存儲和更新結果。

緩存文件提供了存儲大量資產數據的選項,因此允許在虛幻引擎4和Houdini之間建立交互。我決定不引用資產的ID,而是決定通過“對象合併”節點將其直接應用於UE4。如果要直接在Houdini中顯示它們,則處理分散在其中的實例可能會變得很棘手。公開文件緩存選項是攜帶元素並將其添加到地面投影的一種好方法,或者使它們成為流圖的障礙並為河流添加其他頂點顏色。

當設置了中型和大型資產時,我決定堅持使用虛幻引擎內部的一個稱為“景觀草類型”的功能,該功能用於設置卵石或苔蘚簇之類的微觀細節,並將其分配給主景觀著色器中的圖層樣本。設置非常容易,如果您具有遮罩數據,剩下的唯一事情就是分配正確的資產。

我有時注意到的一個常見錯誤是視覺信息的大量過載。當您展示這麼多微型道具的可能性幾乎無限時,請關注噪音。現實生活中充滿了微小的細節,但在遊戲世界中,有時您需要給出一些更大的比例,以免出現混疊效果或臨時抗鋸齒(TAA)消耗像素。保持良好的視線流引導玩家而不使所有內容都過於詳細也是一種好習慣。

場景組裝

因為我的目標是主要專注於Houdini和UE4之間的合作,所以我主要使用Megascans資產來組裝場景。建立Megascans掃描程序的團隊做了驚人的工作。使用可訪問的掃描資產可以使您更加專注於實驗。

儘管生成了網格,但我使用的大多數資產都直接來自UE4中的Icelandic庫。虛幻和Megascans之間的橋樑不僅為您提供了導出選項,而且還提供了一些基本功能,該功能可以在一秒鐘內預覽結果,然後使用您自己調整的參數(例如像素抖動偏移)替換為著色器。

最後,我只使用了一些著色器。最複雜的是針對“風景”和“河流”,其中紋理之間的轉換最豐富。其餘的是基本的PBR或Unlit Translucent。

照明和後期處理

建立燈光和後期處理可能會非常具有挑戰性。顏色分級可以改變整個情緒,也可以隱藏一些元素來講述更多故事。我嘗試使用“光源”盡快設置普通光源,並通過調整“指數霧”來試驗整體情緒。 

在某些情況下,僅擁有一個來源是不夠的。在此場景中,我使用了柔和的點光源,將溫暖設置為D50,而不是D65的整體溫度,從而在形狀之間添加了更多的對比度以在構圖內進行引導。

 我更喜歡盡量減少後期處理,僅調整色彩的飽和度並在需要時增加一些對比度。值得一提的著色器稱為銳化。我用它來帶回TAA採取的一些細節。這是最便宜的抗鋸齒方法之一,但是它的約束是由於模糊小像素而丟失了一些細節。

學習Houdini的資源

該程序非常複雜,但並不像最初看起來那樣瘋狂。可能性無窮,您可能會迷失於許多主題,例如VFX,建模,數據管理或合成。就個人而言,我建議您先直接關注某些主題。最初,我開始使用Houdini作為在Autodesk Maya中替換我的工具的橋樑,直到更多的節點開始引起我的注意。對於我來說,掌握該軟件還有很長的路要走,但是我無法想像沒有它的工作流程。

有無數不同的教程和課程。就個人而言,我建議從在https://www.sidefx.com/learn/上觀看最基礎的內容開始,並在嘗試建立新節點時嘗試嘗試節點。如果您遇到困難,請不要害怕在Google中搜索答案。您將為有多少解決方案感到驚訝。

我強烈建議您觀看的其他一些資​​源:

育碧巴黎環境藝術家Damien Lappa

Arti Sergeev進行的採訪

Exit mobile version