遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

遊資網發表於2021-05-13
今年初發布的《2021遊戲市場風向標報告》顯示,越來越多的遊戲開發商認為跨平臺成為遊戲成功的關鍵策略之一。無論是多人 FPS、開放式 RPG 還是冒險解謎,如果能接觸全平臺的受眾,無疑給遊戲成功增加了一份勝算。

雖然跨平臺移植的成本不小,但是過來人都表示物有所值。隨著任天堂 Switch 持續火熱(全球銷量超過 7 千 8 百萬),Switch 也成為了移植遊戲的首選平臺。我們有幸請到了恐怖主題的動作冒險解謎遊戲《DARQ》的開發者,Wlad Marhulets,來講述自己的開發經歷。

《DARQ》曾榮獲 2015 年 Steam 綠光最受歡迎的十大遊戲之一,以小男孩 Lloyd 在一場逼真惡夢中的冒險為主軸,遊戲營造了陰森、詭異的氛圍,在正式釋出之前就吸引了眾多玩家。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

在歷經五年的長跑後,Wlad Marhulets 成功地將《DARQ》搬上了 PC、Xbox One、Xbox Series X、PlayStation 4、PlayStation5,以及最近的 Nintendo Switch 這幾個主要主機平臺。整個開發和搬運過程非常艱難,但 Marhulets 憑藉自己的韌性、樂觀精神、周圍好友及 Unity 的支援,終於與全球各種平臺的玩家分享了自己的作品。


與我們分享一下創作《DARQ》的故事吧,你是一開始就計劃把它搬到多個平臺上嗎?

Wlad Marhulets:我最初接觸遊戲開發是在 2015 年。那時我剛畢業,從事電影作曲的工作,有一次難得地出現了一個月的空檔期,於是我決定利用這段時間發展一個新愛好。在此之前我從未接觸過遊戲製作,在下載了 Unity 之後,我立馬入坑了,並在一個月後就完成了一個遊戲原型。

在一個朋友的鼓勵下,我做了一支預告片放到 Steam 綠光(Steam 的初創鼓勵計劃 Steam Greenlight)上。起初並沒有很高的期待,但《DARQ》出乎意料地成為了 Steam 綠光投票前十的遊戲,我當即決定把愛好當作事業來試一試。當時並沒有在遊戲主機上發售的計劃,一部分原因是我都不知道自己能不能做出個成品來,與我而言,所有東西都得從零學起。當然,這個過程是十分充實的。

這款遊戲花了 3 年半的時間完成,開發期間有多家發行商找上我,我都覺得不太合適,於是決定在 19 年自行發售,以 PC 玩家為主要目標玩家。直到 20 年我才遇到了合適的發行商,這才將遊戲搬上了主機。遊戲現在不僅支援 PC,還支援 Nintendo Switch、PS5、PS4、Xbox Series X|S 和 Xbox One,未來還將發售實體版。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

為什麼選擇 Unity 來開發呢?

Wlad Marhulets:我曾經在為獨立遊戲《A Cat’s Manor》作曲時,很驚訝地發現這款高質量的遊戲完全由單人開發,這點讓我非常吃驚,也因此知道了 Unity。隨著《DARQ》開發的推進,官方詳細的程式設計教程和隨問隨答、親切友善的開發者社群給我提供了很大幫助。現在我正與一支頗具規模的團隊製作第二款遊戲,大家也都在用 Unity。Unity 引擎改變了我的生活,我是它的忠實粉絲。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

你在為多平臺移植遊戲時,都遇到過哪些困難?

Wlad Marhulets:拋開技術問題不談,開發過程中最麻煩的一點是在全球疫情下的跨時區協作。我們團隊散佈在波蘭、芬蘭和加州,相互之間使用Slack聊天軟體來溝通、跟進專案進度。

另一個難題在於統一遊戲在各平臺上的觀感,因為各平臺的渲染方法有些許差異,最後我們還是手動調整了明亮度、對比度、色飽和度、色調以及光照。我們還遇到了由於浮點精度不同而造成的渲染瑕疵:比如一塊四邊形放在另一塊上方稍微偏移的位置,在 PC 端可以正確地渲染出來,但在主機上會出現閃爍現象。於是我們不得不通過手動調整位置來解決此類問題。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

你為什麼決定將遊戲搬上 Switch?

Wlad Marhulets:Switch 是粉絲們呼聲最高的一個平臺,同時也是我自己在玩的主機。把《DARQ》搬上 Switch 是個順理成章的決定,也使我的夢想成真。

介紹下你的 Switch 移植經歷吧。

Wlad Marhulets:《DARQ》使用了大量的實時體積光、滿是 FMOD 音訊事件的音效、反向動力學和大型預製件,所有這些都需要時間載入。這些系統在高配置 PC 上可能不會造成效能問題,但在 Switch 上就不行了,我們必須找出新穎的優化方案才能讓《DARQ》流暢執行。

這裡最主要的挑戰是儘量在不犧牲畫面效果的前提下實現穩定的 30 幀。優化的大部分時間都花在了開銷“高昂”的體積光和陰影投射上。還有解決過多 FMOD 事件同時觸發產生的音訊瑕疵,遊戲裡的謎題不能在小屏上清楚顯示,必須要調整攝像機角度才行等問題。UI 也同樣需要調整,許多圖示和文字必須適當放大來方便玩家檢視。最後,為了迎合 Switch 的操作慣例,我們還修改了移植版的操作方式,把動作按鈕分配到了“A”鍵上。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

你是怎麼解決這些挑戰的呢?

Wlad Marhulets:首先,我列出了幾個非必要的陰影投射物和體積光,為求原汁原味,我將兩者的數量刪去了約 25%。我還重新設計了 FMOD 的腳步音效系統,減少了執行所需的事件與音訊通道,原先包含多條音訊軌道的事件被壓縮到了一條軌道,除此之外還有很多關於音訊的優化。

在反向動力學方面,系統會在每一幀上執行,這在 PC 上並不會有什麼影響,但在 Switch 上,我們就要為不犧牲太多畫面效果而充分利用起 Switch 的硬體效能。在大型預製件方面(如整個關卡),我們採用了非同步載入的方法,並用一條進度條來跟蹤載入進度。所有這些,外加上降低精靈圖集解析度,實現了可觀的效能提升。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

在移植過程中,有沒有讓你感到特別驕傲的技術成就?

Wlad Marhulets:讓《DARQ》可以在 Switch 上保留許多實時光源和陰影投射物,這些優化工作讓我感到特別驕傲。值得一提的是,《DARQ》內的幾何形並未作改動,這對一款以精美環境為賣點的遊戲意義巨大。起初我以為一定要減去模型的面數,結果卻不需要,模型仍舊保持著相同的細節程度。在所有移植版中,我敢說 Switch 版本在優化方面是最為出色的。

對那些想要移植 Switch 平臺的工作室,你有什麼經驗可以分享嗎?

Wlad Marhulets:主要有以下幾點:

首先,程式碼的結構必須要有條理,必須遵循一條命名規則。我移植時就因程式碼不連貫吃了苦頭。這個問題在大型專案中更常見,多名程式設計可能各為其主,做不到風格統一。同時,為了保證編輯器內的每個場景都能執行,我們要縮減註釋,用描述性語言來命名類、方法和介面的做法可以省去註釋,加快開發速度。為了避免出現有上千行程式碼的“巨無霸”,我們可以按邏輯拆分程式碼,儘量避免依賴(形成所謂的麵條式程式碼)。

其次,使用 Profiler 分析器分析紋理記憶體,用精靈圖集讓物件共享紋理。這種方法可以減少繪製呼叫,幫助實現穩定幀率。

最後,Switch 這類手持裝置體積較小,因此 UI 需要適當地進行調整,原先適用於 PC 的字型和 UI 需要重新調整大小。

遊戲移植Switch平臺要注意什麼?《DARQ》開發者分享實戰經歷

如果讓你重來一次,有哪些地方的做法會不一樣呢?

Wlad Marhulets:我一定會更早地入坑 Unity!

不過說真的,我自覺非常幸運,一路上雖然犯了很多錯,但並不感到後悔,我從每一次錯誤中學到了很多。我做夢都沒有想到《DARQ》能有一天與《末日餘生 2》、《死亡擱淺》、《無主之地3》、《使命召喚:現代戰爭》等其他 3A 大作一起獲得提名。小島秀夫(主導開發了世界上第一款戰術諜報動作遊戲《合金裝備》,是全世界最知名的遊戲製作人及日本遊戲界的標誌性人物之一)是我童年的英雄,能與他競爭我雖敗猶榮!

我對每一位將《DARQ》推向成功的人都心懷感激,我要感謝的人實在太多了:感謝 Unity 團隊自始自終的支援,感謝 Scott Millard(Feardemic 的董事總經理)、Piotr Babieno(Feardemic 母公司 Blobber Team 的 CEO)和 Joni Lappalainen(Dreamloop Games 的 CEO)。

來源:Unity官方平臺
原文:https://mp.weixin.qq.com/s/xo9knVgeDstrH6eV9gvVSw

相關文章