日本國內最大的 Unity 公式活動「Unite 2016 Tokyo」於 2016 年 4 月 4 日至 5 日間舉辦,今年活動開幕第一場主題係由『ファイナルファンタジーグランドマスターズ(Final Fantasy GrandMasters)』團隊來分享,主題為:
「《Final Fantasy GrandMasters》在介接 Maya 與 Unity 時所用的各種最佳化工具,及透過實例說明如何縮減容量與開發成本」
許多程式相關的專有名詞,我查了字典仍然不是很清楚,為免誤譯,直接以英文原字表現了,也承蒙各位朋友指教,請務必留言指導我本篇內容該如何修正,以茲學習。
原始連結:【Unite 2016 Tokyo】『FFグランドマスターズ』MayaからUnityに橋渡しする際の最適化ツールやコスト削減について事例を交えて紹介(Social Game Info)
本文所有圖片來源:Social Game Info
【講師陣容】
◎SQUAREENIX 渕上貴史
◎Crooz 野澤圭介
★關於ファイナルファンタジーグランドマスターズ
《ファイナルファンタジーグランドマスターズ(Final Fantasy Grand Masters 以下皆以原名表示)》係基於 FFXI 世界觀延伸的手機平台 MMORPG,本作登場的 3D 背景與角色,都是由 Crooz 公司開發,並非沿用線上遊戲版的模組。
★技術支援工程師(技術美術)
為了讓規劃者與技術間能夠順暢地溝通,團隊間設置了「Technical Artist(技術美術)」的職務,主要負責以下工作內容:
. 負責 Maya 與 DCC 工具的功能擴充,開發能提升工作效率的工具
. 建構 Work Flow 與 Pipeline,開發 Shader 相關項目
. 前期驗證、開發新世代技術
. 作為工程師與規劃者之間的橋樑
. 負載分析、調整描畫效能
★《ファイナルファンタジーグランドマスターズ》之 Maya 與 Unity 的介接
本次演講共有三個主軸
①Work Flow & Pipeline
②透過 QC 工具來削減成本
③圖形效能的最佳化
①Work Flow & Pipeline
下面這張簡報說明了 Maya 與 Unity 之間的橋接過程及內容
▲Crooz 在美術方面的工作流程,係先透過 Photoshop 製作材質後再透過 OPTPiX 做減色與最佳化。
譯註:
Maya – Modeling & Motion / Player / Monster / 背景 / Effect
Simplygon – 依場景適當地 Reduction.
Photoshop – 各種材質
OPTPix – 減色與最佳化(Alpha Channel)
Exporter Plugin – 提供 fbx 的資訊
Unity 嵌入 – Import 設定 / 素材設定 / 材質壓縮設定 / Shader Attach / Scrit Attach / Controller / Camera 控制
下圖則是演示善用 Simplygon 在各個場景調整 Polygon 數量,左邊是戰鬥場景,因為顯示的角色與怪物數量較少,所以可以適當地提升 Polygon 數量,而在右邊的原野場景,因為一次要顯示 20 隻角色,所以必須減少 Polygon 數。
而為了縮減容量,在背景與原野設計上也下了各種工夫。
▲可以看見一樣的場景,但戰鬥時的背景與原野背景差異相當大,在戰鬥背景中盡可能做的逼真,讓玩家感受到以往《Final Fantasy》系列的風格,而原野背景則盡可能縮減內容。角色的骨架是用 Maya 專用插件「AdvancedSkeleton」製作的。野澤提到:「首先最大的魅力就是可以免費使用,再者就是很簡單就可以拉出骨架,節省很多開發時間。」
▲透過該工具,只要決定骨頭的位置,就會自動作成骨架。
接著介紹了「Maya Custom FBX 插件」,並說明透過插件將 Maya 製作的 FBX Material Animation 匯入 Unity 的過程。本作在戰鬥中的特效雖然使用了 Partical System ,但當時 Shuriken 並不適用於尺寸不同的怪物之間,最後使用 Maya 來製作。
▲野澤氏認為遊戲中的特效演出相當多,Maya 在做這些細微調整的時候,效率相當好。
為了將 Maya 製作的動畫匯進 Unity ,製作了「Maya FBX Export 擴充插件」,接著製作「Unity Custom Importer」,如此一來就能將顏色、Alpha、Contrast、UV Offset、UV Scale、UV迴轉等訊息簡易的寫入。
本作中,玩家資料含有大量的元件資訊,目前大約由 2000 個元件所構成的,如果一個一個匯入的話,會耗費許多工作時間。
▲創角色用到的元件。
▲頭髮分為前、中、後與鬍子四區塊,避免與各種形狀的防具產生衝突。
而他們一樣透過插件來解決這樣的困擾 。
②透過 QC 工具來削減成本
如前所述,極大量的元件與動畫,光是在檢查就要耗掉諸多人力與時間,所以也開發了一些工具來協助測試團隊。
▲在 Unity 上檢視角色所有種族都用一樣的素體,再透過 Unity 的 Bone Scale 值調整。
▲透過「Player Viewer」,設計師可以在 Unity 上確認各元件是否有衝突或錯誤。一目瞭然的檢查方式,縮減了許多 QC 團隊的工作量。
▲遊戲中實裝了 150 種怪物,他們製成了「Monster & Effect Viewer」,一樣為了增進檢查的速度。
▲「Map Viewer」可以與「Player Viewer」及「Monster Viewer」兼用,能快速確認怪物配置在背景上的情況。
另一方面,他們介紹了將 FBX 資料自動 Prefab 化的 Batching 工具,以下圖為例,原本需要花一週時間處理的檔案,透過工具,只要三小時就完成了。
▲搭載了「Prefab Creator」、「Prefab Updater」、「Asset Renaming」三種功能。
▲「FBX Version 工具」 – 自動檢查工具,減少錯誤。
③圖形效能的最佳化
最後,野澤分享了可在跨平台(iOS & Android)、各階機種(高端到低端)順暢運作且保有視覺效果的 Custome Shader,分享完以下簡報後,結束這次的講座。
《ファイナルファンタジーグランドマスターズ》上架時的對應機種
◎對應 OS
Android 4.0 以上、iOS 7.1以上
◎對應機種
Android 約 160 種、iPhone 5 以上
▲用於怪物被討伐消滅後的 Alpha Fade。本作為了縮減容量,在怪物用的材質中,並沒有 Alpha 資訊,所以透過這個 Shader 來執行。
▲降臨魔物被消滅時用的是「Pattern Dissolve Fade」。這是為了實現紅白機時期系列作怪物被擊倒後慢慢ˋ消失的特效而製作的。
▲因應創角需求所做的專用 Shader,透過「Pattern Dissolve Face」管理創造角色時所用的肌膚顏色。
▲設定 Suface 與 SubSurface 的顏色,呈現自然的色調。
▲「Crystal Shader」,用以達到 Specular lighting 水晶效果。
▲「Texture Scrol」,用以表現無縫材質貼圖及流動的背景表現。
—
吹著魔笛的浮士德
遊戲產業觀察評論家、9 級 Google 嚮導美食探店者、親子成長的初心者
合作信箱:gameqbfaust@gmail.com
追蹤 Instagram:https://lihi3.cc/vlzV5
↓追蹤 Facebook 專頁↓