大世界遊戲製作:《幽靈行動·荒野》程序化技術介紹

2021-01-15 GameRes遊資網

作者:Kerry 本文首發於知乎專欄「TA周刊」

這一次給大家帶來《幽靈行動·荒野》項目的大世界製作技術,總共分為四個章節。

本篇為第一個章節:程序化技術篇,分享者Benoit Martinez和Vincent Delassus 分享了關於程序化流程中的一些心得,其中包括之前不少讀者私信我關於Houdini與手動流程的結合以及成本、迭代等問題,希望能給大家帶來一些啟發。

最大的挑戰

巨大的開放世界最大的挑戰絕不僅是地形本身,還包括如此多樣的生物群落(11種)。每一種生物群落都要有與之匹配的且特定的景觀,植被,巖石,建築物等。

基本上來講,我們必須從頭開始制定管線流程和製作工具,因為這是一個開放的世界,因為它與自然景觀息息相關,並且地形非常重要。

最初,我們使用靜態網格模型來製作地形,1平方千米一塊地形Mesh(帶LOD)。

基於World Machine製作的高度圖,我們有一個Houdini流程來自動對地形進行分塊並生成對應的LOD,但是從Houdini到編輯器來回過程需要進行大量的維護工作,這點非常棘手,而且一點都不靈活。除了Benoit之外,當時沒有人在使用Houdini,因此他是唯一可以迭代的人。

顯然,在量產階段這種做法是行不通的,因此我們決定將重點放在開發定製化的地形編輯器上。功能需求方面,我們希望能夠直接在編輯器中以任何比例進行雕刻,能夠雕刻山脈的整體結構(宏觀)也能調整很小的地形細節(微觀)。最初,地形高度圖的解析度為1像素25釐米,但有時覺得精度太高了,這是一個非常繁重的數據量,因為碰撞體和導航mesh也需要同樣的精度。我們最終確定了1像素50釐米的高度圖解析度(也就是一米需要高度圖的兩個像素),同時由於我們還具有硬體曲面細分功能,這已經足夠了。

地形只是第一步,隨後需要在這上面填充美術資源,這個過程可能需要很多牛逼的美工來完成。由於許多原因,我們不想增加團隊規模(成本原因)。大型團隊通常意味著需要有非常細化的分工組織。我們是一個很小的團隊,我們知道如何合作,我們的流程非常敏捷,我們希望繼續保持這個優點。這就是為什麼我們決定在Houdini上投入更多資金來開發程序化/自動化的工具。

在美術資源製作方面,關鍵在於如何平衡3個要素:團隊–時間–工具。通常,您不能控制項目的開發時長,因為這是定死的。在我們的案例中,我們決定使用工具來提升生產力,而不是增加團隊規模(美工人數)。在巴黎,我們從未有超過15位水平的藝術家來創造所有資產和世界建築。

使用程序工具

自《幽靈行動:未來戰士》以來,我們一直在這裡試驗程序化方法。我製作的第一個工具只是幫助藝術家放置電線。藝術家正在導出一條曲線,然後再調整一下參數,就能在幾秒鐘內生成線杆和電線。

然後,我們進一步推進這種程序化邏輯到地形編輯環節,我們自動生成道路,並且添加細節和生成UV,同時凹陷地形做相應的匹配。

我們很快意識到,不僅程序方法有助於擺脫繁瑣的任務,而且還節省了時間。藝術家能夠專注於質量,有更多的時間來提高自己的水平。

使用Houdini,我們已經能夠重新定義工具創建過程。Houdini的學習曲線陡峭,但沒有您想的那麼難。houdini官方是在線上提供的大量資料,如果您對此很認真,則只需幾個月的時間就可以開始創建自己的工具。自從我開始學習Houdini的那一天起,我過去更多地是在藝術家方面,而不是技術方面。它完全重新定義了我處理美術資源的方式。

地圖規模

首先,我們去了玻利維亞幾個星期,全國各地有4個團隊。對我們來說,研究建築,景觀和植被非常重要。我們拍攝了大約15000張照片和15小時的視頻。在整個製作過程中,我們都依靠該資料庫來創建我們的工具並設計世界,以確保所有內容都是一致且真實的。

到目前為止,我們還沒有與外界討論任何關於世界規模的問題,因為我們希望玩家在沒有比較或期望的情況下進行探索。我們認為這與尺寸規模無關。它更多地是關於多樣性和您可以達到的細節豐富程度。但它仍然是育碧有史以來最大的動作冒險世界,大概需要花費幾個小時才能走遍整個地圖。

我們開始使用現實世界的位置數據進行原型製作。在最初的幾個測試中,我們只是獲取了真實海拔文件並在World Machine中對其進行了完善和細化。

就寫實性而言,效果還不錯,但缺乏多樣性。

獲取海拔數據很容易,但是我們缺少好的工具來編輯和組合它們。在Photoshop中編輯16bit和32bit的灰度圖是非常麻煩的,當時在包括World Machine在內的任何其他應用中也是如此。最後,我們只是在World Machine中使用噪聲和腐蝕從頭開始。這並不容易,但是我們想盡辦法來提高編輯的可控性,從而能設計出我們想要的地形。在最終生成的這張地圖中,沒有什麼是隨機的,每條河,每座山在哪兒都是有它存在的理由,整個設計和製作過程都有章可循。

我們希望得到從最高的山峰到底層叢林的雨水侵蝕效果。這是一個龐大的的模擬計算量。無法在一臺計算機上以這種解析度(64k x 64k)計算如此大的地形。

我們必須在World Machine上進行一些自定義開發。我們向WorldMachine的開發者Stephen Schmitt請求了一些額外的開發。他為分塊渲染系統添加了一個額外的變量接口,以便與用c#編寫的專用渲染場一起使用。

我們最終試用了World Machine,並每3天在80臺計算機上進行一次計算。

由於成本的原因,這些圖塊之間的訪問受到限制,因此另一個挑戰是在不同的機器之間需要確保產生一致的侵蝕。為了解決這個問題,我們先在一臺機器上以較低的解析度渲染大面積侵蝕土地,然後使用Tile系統在渲染農場中分配微侵蝕和其他昂貴的細節。它修正了90%的分塊接縫問題。但是當時版本的WorldMachine還不能做到百分百的完美。

我們將Houdini用於許多不同的事物。

在地形自動添加其他細節,例如道路和河流根據規則自動放置物體(貼花,森林,建築物等)創建特定美術資源這裡有個自動組合生成建築物的工具示例。

這個工具只是用來快速組建一些通用建築資源,細節要求不會太高,因此工具能很好地發揮作用。它有幫助你組合窗戶和門的大小,窗戶和地板的高度等,並匹配UV,而且會生成一些多邊形帶,以幫助在牆壁/地面交叉點上混合一些汙垢。然後手動添加所有細節(窗戶,門,支撐)。

Building+Tool(Houdini)

對於村落布局,我們採用了完整的程序化方法。

這個想法是要幫助藝術家,使他們有足夠的控制權來實現有趣的圖形分布,多樣性和美觀的居住環境。它為他們節省了足夠的時間以便手動添加細節。

無論程序生成的質量如何,它都不是完美的,並且需要藝術家幹預。您是如何解決的?

我們完全同意。我們學到的是不要過多地提及程序化,因為每個人都認為「程序化」就像是一個魔法按鈕,按一下就能獲得無聊而乏味的結果。對於程序化,我們更多地認為這是輔助藝術家解放生產力的工具,使他們在構建一個完整大世界擁有足夠的控制權。對於每種特定工具,我們都會與專門的藝術家緊密合作。他是決定該工具將如何發揮作用,他需要什麼以及他希望它如何工作的人。關鍵是能夠大規模構建並節省時間。然後,利用節省下來的時間,我們可以專注於細節和提高質量,因為這是程序化無法做到的。在使用程序化和手動之間也要取得平衡。在某些情況下,我們需要完全手動控制,並且我們將完全手動指定某些位置,而無需任何工具。我們可能想在某些地方設定Boss在村莊內的位置,然後我們可以使用程序化工具在其周圍創建村莊。

程序和手動不能很好地融合在一起。當您開始在程序化的基礎上手動修改,您必須鎖定它。如果不這樣做,您將在下次更新時丟失所有手動調整的結果。當然,我們有一些解決方法,但這並不是一件簡單的事。在大多數情況下,我的建議是在繼續手動操作之前要先鎖定程序化數據;或者設定一個手動區域,程序化構建的時候會繞過這塊區域。

最後,究竟哪些需要程序化、哪些需要手動完成,其實無所謂,主要看項目、團隊、美術的喜好等等因素共同決定。

如何管理一個大型項目

我們有4位Houdini藝術家(包括Benoit)。在製作過程中我們學到了很多東西。我們最終使用Houdini超出了我的預期。

我們了解到的是,構建(大量)工具會改變您的生產節奏

常規量產過程是線性的。您有一個團隊,從第一天開始,他們就製作資源並構建關卡/世界。

當您決定專注於工具時,您會經歷一些平穩階段。這並不容易,因為有時您只是不知道需要多長時間。但是,當該工具準備就緒時,只需幾天,您就可以推送新的大量的內容。最後,這比你僅用蠻力所達到的製作速度會更快,處理的內容量會更多。

這正是地形,河流,道路,鐵路,森林,定居點,礦山等等之類的製作流程所展示出來的實際收益。我們每一層的資源內容逐級疊加,整個世界就是這樣一層一層內容地疊加製作完成的。

Houdini團隊中的每個人都在使用一些特定工具:

Guillaume在所有後端上工作,並確保Houdini管線的可靠性和高效。他特別從事關於渲染農場的分布式計算。Erwin主要負責道路和村落分布。Twan負責建築工具,河流,田野和關於音效的工具以及gameplay等等。Benoit設法保持這些工具流程的健康高效的運行,並推動了建築學的運用,同時研究了植被,巖石,貼花和電源線等。

當您開始用Houdini進行場景製作的時候,您可能會犯的最大錯誤是嘗試在一個工具之內完成所有工作。一個功能任務對應一個工具,這樣維護會更容易。最難得部分是需要為每個工具正確定義輸入和輸出,以便工具之間能夠相互引用數據。

例如,橋梁工具可以單獨使用。但我們用鐵路工具的時候,也可以使用它在需要的地方自動放置橋梁。

利用Houdini的優勢

Houdini是一個工具箱。無論您生產什麼產品,無論規模如何,Houdini都能為您提供幫助。您可以使用它來自動執行任務,創建內容,幫助美術師(或聲音設計和遊戲程式設計師)。它既靈活又強大。

Houdini本身很有價值,但我不得不提到Houdini-Engine。基本上,它是Houdini核心API,您可以將其集成到主機應用程式中。在我們的案例中,我們確實在內部編輯器中集成了Houdini-Engine。這意味著TA可以在Houdini中創建工具,任何藝術家都可以直接在編輯器中使用這些工具。這是一個示例,說明它可以以多快的速度創建現成的工具:

Houdini幫助我們擴大了思維範圍,超越了藝術水平。我們對所取得的成就感到非常滿意,令人興奮的是,我們將能夠在此基礎上進一步發展。

最後,欣賞一下這個由一群非常敬業且有才的藝術家共同創造的世界。

相關焦點

  • 探討大世界遊戲的製作流程及技術——大場景製作技術概況篇
    作者:Kerry 本文首發於知乎專欄「TA周刊」接上文,我們接下來了解一下大世界場景製作技術有哪些,本篇旨在給大家過一遍目前業界的做法,能讓大家有一個宏觀的知識藍圖。實際上,針對不同的遊戲類型和美術風格,製作技術在細節上有著非常大的不同,業界目前也很難說有一套標準且高效的流程,所以一些細碎的技術點將會在其他篇章逐一討論。
  • 《幽靈行動:荒野》大型更新 加入永久死亡玩法
    《幽靈行動:荒野》大型更新「特別行動2」7月24日正式推出,「特別行動2」將是遊戲迄今為止最大的一次內容更新。「幽靈模式」將通過一種全新的遊戲模式進一步擴展《幽靈行動:荒野》的PVE遊戲體驗,該模式支持單人或多人合作,在提高遊戲獎勵的同時也加入了非常驚險刺激的設定。
  • 《幽靈行動:斷點》相較荒野的改進一覽
    《幽靈行動:斷點》發售以來玩家的評價就褒貶不一,媒體評分也不高。也有玩了遊戲的玩家覺得遊戲的進步其實很大。來看看「那啥的馬克兔」分享的《幽靈行動:斷點》相較荒野的改進一覽吧。《幽靈行動:斷點》相較荒野的改進一覽:1、空倉掛機終於做回來了,荒野不管什麼時候上彈都要去拉一下槍機柄,作為一個戰術射擊遊戲這種細節都沒有實屬不應該,現實中你這麼上彈匣就拉一下一直少一發子彈的,而且很傷槍;2、輔助道具多很多,像大家在荒野想了很久的火箭筒、圍牆切割器、4代聲納雷,戰術道具多了很多,讓你真正在戰術制定上有更多思路了,不過遺憾的是裝備欄就六格,有兩格固定
  • 《幽靈行動斷點》TAC50在哪裡?TAC50狙擊步槍獲得方法介紹
    幽靈行動斷點TAC50在哪裡?作為遊戲中射程最遠的大狙之一,很多玩家想得到TAC50的藍圖,今天小編帶來的是幽靈行動斷點TAC50狙擊步槍獲得方法介紹,感興趣的玩家一起來看看吧。作為遊戲中射程最遠的大狙之一,很多玩家想得到TAC50的藍圖,今天小編帶來的是幽靈行動斷點TAC50狙擊步槍獲得方法介紹,感興趣的玩家一起來看看吧。
  • 《幽靈行動荒野》50發突擊步槍彈匣位置 50發彈匣在哪
    導 讀 《幽靈行動荒野》初始配置的發突擊步槍彈匣子彈容量非常小,如果大家覺得戰鬥中更換彈匣浪費時間過多的話
  • 《天外世界》DLC荒野行動套裝獲得方法介紹
    《天外世界》中DLC的荒野行動套裝是非常好用的,很多玩家都不太清楚這個荒野行動套裝的具體獲得方法是什麼,今天小編就給大家帶來玩家「Innaer」分享的DLC荒野行動套裝獲得方法的介紹,一起來看看吧。 《天外世界》中DLC的荒野行動套裝是非常好用的,很多玩家都不太清楚這個荒野行動套裝的具體獲得方法是什麼,今天小編就給大家帶來玩家
  • 荒野行動人物角色介紹 角色背景講解
    導 讀 荒野行動遊戲中玩家所使用的任務角色都只有一個,那就是傑拉德•戴爾,傑拉德•戴爾是原中樞下屬特種作戰縱隊突擊分隊成員
  • 《荒野行動》佛系遊戲成就攻略 佛系成就怎麼獲得
    導 讀 今天 九遊和大家講解《荒野行動》 佛系遊戲成就攻略荒野行動佛系遊戲成就怎麼完成?
  • 重磅更新福利來襲 《荒野行動》邀你一起備戰新春
    鼠年新春迎好運,《荒野行動》春節活動即將重磅開啟!全新槍械正式登場,更有眾多娛樂玩法依次返場,與隊友相邀在荒野收集新春道具,兌換活動好禮吧!【荒野迎春歲 槍械大煥新】  1月16日至2月5日,春節活動「荒野迎春歲」火熱來襲!
  • 荒野行動白墨忍者怎麼獲得 荒野行動白墨忍者獲得方法介紹
    荒野行動白墨忍者怎麼獲得,這是遊戲中新上線的一款非常酷的時裝,同時好多小夥伴都想要獲得一套,小編這就為大家分享下荒野行動白墨忍者獲得方法介紹,希望對大家有幫助。荒野行動白墨忍者獲得方法介紹白墨忍者:山中雪,雲間月,一去蕭蕭長夜決,霜風顧我鐵笛裂。
  • 吃雞遊戲《荒野行動》登陸PS4日服 免費下載遊玩
    今天(12月20日),由網易開發的求生類射擊遊戲《荒野行動》正式登陸了 PS4 平臺,玩家們現已可在日服 PS Store 免費下載這款遊戲。據《荒野行動》的商店頁面顯示本作的大小為15.45G,我們一起看看吧!
  • 荒野行動怎麼樣才能得到望遠鏡 荒野行動望遠鏡獲取方法
    導 讀 荒野行動望遠鏡怎麼獲得?望遠鏡是目前遊戲中上線的全新道具,很多小夥伴們應該想知道如何獲得吧?
  • 《荒野大鏢客2》黑熊在哪 黑熊刷新位置介紹
    可能有部分玩家對黑熊的位置不是很清楚,下面九遊小編給大家帶來荒野大鏢客2黑熊位置介紹,一起來看看吧。 荒野大鏢客2黑熊位置介紹 《荒野大鏢客2》遊戲中黑熊位於羅阿諾克、大... 荒野大鏢客2黑熊在哪?
  • 《荒野大鏢客2》最值得期待的遊戲
    玩家還可獲取專享的新天堂馬鞍,這具馬鞍是以深巧克力色的皮革手工製作而成,同時還配有銀色的裝飾物。這匹馬和這具馬鞍玩家可在 《荒野大鏢客2:救贖》 故事模式中使用。神槍手(Deadeye)系統自前作繼承而來,非常巧妙地還原了西部決鬥的精髓這也就是說,要在遊戲世界中還原人們印象中的美國西部與真實世界中的美國西部,其實是兩件截然不同的事。西部片最核心的元素與遊戲機制的結合,其實已經在《荒野大鏢客》中完成了,「神槍手」系統在系列兩作中的延續便是最好的例證。
  • 《荒野行動》項目組專訪:遊戲創意點是如何誕生的?
    《荒野行動》「颶風突擊」版本已經正式上線,此次遊戲更新給我們帶來了什麼新內容呢。我們與開發團隊取得了聯繫,讓我們聽聽他們是怎麼說的。1、《荒野行動》這次的「颶風突擊」版本更新帶來了非常多的乾貨,其中你們認為最重磅的新內容是哪個?
  • 《荒野行動》是一款什麼樣的遊戲呢?玩過的玩家就知道了!
    《荒野行動》,是由網易遊戲出品的射擊求生手遊,做到了容納100人開局對戰。 3D無縫大世界 ,容納多人開局對決。跋涉山巒曠野,探索城鎮村郊,處處戰場,時刻殺機。組隊開黑,戰術配合花樣迭出;槍械種類自由搭配,更有多種配件強力升級;針對手機端精心設計多種操作模式,提供非常射擊體驗。
  • 荒野行動手遊:遊戲皮膚,明日之辰AR18
    荒野行動手遊是伴隨著槍戰吃雞類遊戲的熱潮而出現的遊戲,在遊戲中我們是一名作戰經驗豐富的特種兵,然後參加的是一場軍事演習,將角逐最強的兵王。我們必須要在島上收集裝備,一步一步的武裝自己,然後沿途解決對手,獲取最後勝利,俗稱吃雞。
  • 本世代 30 大開放世界遊戲盤點
    開放世界遊戲是不少玩家的最愛,當然也有玩家對這種設定嗤之以鼻。早期的3D開放世界雛形可以在《混亂城市》中看到,隨後在《俠盜獵車3》和《俠盜獵車:罪惡都市》中逐漸壯大。這個類型一直在不斷進化,本世代的開放世界又躍上了另一個巔峰。今天我們對本世代的30款優秀開放世界遊戲遊戲進行盤點,介紹一下這些作品值得一試的理由。
  • 荒野大鏢客2有哪些彩蛋 全彩蛋介紹及位置分享_遊戲攻略_遊戲頻道...
    荒野大鏢客2中有不少有些彩蛋,本文就為大家帶來這些彩蛋的介紹及位置,感興趣的玩家不妨來看看。荒野大鏢客2全彩蛋介紹美國偶像彩蛋在遊戲中你能夠找到一系列的兒童讀物,上面的主角是初代《荒野大鏢客》中出名的神槍手Landon
  • 把《荒野大鏢客2》遊戲畫面當真,美國一家電視臺鬧笑話
    只不過這一次遊戲換成了《荒野大鏢客2》,這家電視臺的工作人員在報導中把《荒野大鏢客2》的遊戲畫面當成了真實世界的景色,成為了玩家社群的熱門話題!R星真是不簡單呀,在還原真實場景方面非常厲害,兩款大作都是它開發的!