面對遊戲移植,Switch的效能還有得“榨”嗎?

箱子發表於2020-06-30
如何將機器的效能推到極限?
對於大型遊戲移植到 Switch 後的效果,大多數玩家都是持保守態度的,相信也是因為我們見識過太多糟糕的專案。前不久登陸 Switch 的《天外世界》,就由於嚴重的畫面閹割,加上渲染距離和載入速度等令人無法忍受的問題,被“數毛社”Digital Foundry 拿出來好生批判了一番。

更不用說之前的《方舟:生存進化》,本來在電腦上都執行得不怎麼利索,到了 Switch 更是一幅瘮人的景象,不僅整個畫面糊成一團,植被數量也遭到大幅削減。所謂木櫝在前,Switch 並不適合第三方大作的想法,順理成章的散播開來。

面對遊戲移植,Switch的效能還有得“榨”嗎?
《方舟:生存進化》畫面對比圖(左為 Switch,右為 Xbox One X)

但換一個角度,移植從業者又是如何看待這一點的?

從過去的各方言論來看,在他們眼中,這臺機器應該還有不少沒能發掘的潛力。比如憑藉著將《巫師3》帶到 Switch 而聲名鵲起的 Saber Interactive,絕對就是在“不看好”情況下獲得意外收穫的廠商之一。

一年之前,很多人還把《巫師3》登陸 Switch 當成一個愚人節笑話,雖然這款遊戲並非以極致的畫面見長,但至少達到了 3A 內容公認的及格線,也算是一道難以逾越的門檻。倒是 Saber Interactive 的 CEO 馬修·卡奇一直相信他的團隊能夠克服挑戰,CDPR 後來同樣提到移植的過程“並未遇到特別的難題” 。

正因如此,玩家們有時肯定會感到困惑。為何同樣體量的遊戲,有的帶到 Switch 後能成,有的搬運過來卻不忍直視。要深入這個問題,不妨先從幾個知名移植團隊的經歷說起。

大團隊的洞察

根據 Switch 版《毀滅戰士》參與者之一邁克爾·特勞布的說法,一些看似不可能的專案,其實都是嚴格評估後才開始動手的。

至少他所在的 Panic Button 會提前做好規劃,其中有個專業術語叫做“盡職審查” ,牽扯到移植需要多長時間、有沒有足夠的資源,以及希望達到什麼樣的水平。真正比較難處理的,是畫面和優化兩方面都不能做出極端妥協,特勞布對此的評價是:

“10 幀的華美影像?失敗!30 幀但卻無比糟糕的畫面?失敗!”
Panic Button 的實力如何暫且不做評價,但之所以敢放出如同喜劇電影臺詞一般的狠話,估計是背靠整個團隊過往的經驗。Iron Galaxy 在承擔《上古卷軸5》的移植工作前,同樣不懷疑這款遊戲能夠在 Switch 上執行。仔細想想,畢竟它只是一部來自 Xbox 360 和 PS3 年代的老作品。

面對遊戲移植,Switch的效能還有得“榨”嗎?

之所以丟擲這些同行的掌故,是因為他們大抵上和 Saber Interactive 的想法差不多。馬修·卡奇回憶起移植《巫師3》時踩的坑,一直認為自己沒有將 Switch 的全部潛能激發出來 —— 雖然並不是從一開始就察覺到了這一點。

如果扒一扒 Saber Interactive 的背景,與 CDPR 的合作是有先兆的,這家工作室不僅承擔過《巫師3》的 4K 任務,而且還在引擎技術方面有一定的造詣。

只可惜《巫師3》最早在 Switch 上測試時令人一言難盡,以每秒 10 幀的速度執行就算了,記憶體佔用還超出機器上限的 50%,50GB 的身板也很難塞到卡帶裡。

為了提高幀數,他們最初的思路是大刀闊斧的“硬砍”遊戲特性。關閉動態光影、移除環境遮擋,甚至減少了 30% 的 NPC 數量 —— 結果幀數上去了,原來的韻味也丟了,這才讓領頭的卡奇反思專案方向。他後來在一次採訪中提到:

“我們意識到這些東西對於遊戲體驗是非常重要的,特別在減少了 30% 的 NPC 數量後,有人抱怨諾維格拉德和陶森特「太空了」。

我們不得不重新改回來,然後找到創造性的優化來提高幀率,比如遊戲中的動畫、人工智慧、渲染、布料模擬等等。在這樣的情況下,主要思路轉變為保留需要的東西,而不是決定犧牲什麼。”
面對遊戲移植,Switch的效能還有得“榨”嗎?

例如,消除陰影往往是提高幀數的一個有效方法,但單純刪除某個特性卻是不過腦子的。調整方向後,Saber Interactive 發覺現成的陰影解決方案在 Switch 上並不好用,於是轉而採取“靜態陰影+光照貼圖+動態陰影”的混合替代方案。

如果你接觸的遊戲夠多,大概清楚“靜態陰影”和“光照貼圖”對算力沒那麼高的要求,打個不恰當的比方就是在螢幕裡多塞幾張圖片,它們不會隨著光源角度的不同實時產生變化,不僅大幅降低了效能需求,如果肯花心思調整,在固定環境下倒也可以貼近原始感官。

另一個工作重心是室外環境中佔據視覺注意力 50% 的花花草草,移植團隊也重寫了生成和渲染植被的演算法,改變了樹木、燈光和陰影的細節級別。一言蔽之,主要就是要圍繞著 GPU、CPU 和記憶體不斷挖掘潛能,一點一點向主機的底線推進。這不僅可以實現出乎意料的效果,也提供了一種探索 Switch 效能的思路。

面對遊戲移植,Switch的效能還有得“榨”嗎?
Switch 上的《巫師3》,可以看出草木細節確實降低了不少,但遠景藉助貼圖還是有不錯的呈現

與常規意見相左,Warp Digital 的技術總監斯圖爾特·米勒對此還有個更激進的看法,他認為要解決 Switch 的 GPU 問題有“太多技巧了”:
“如果是畫面上的問題,我們往往可以優化著色器和幾何圖形,使其更適合 Switch,最終目標是使遊戲和原始形態看起來相同或儘可能接近……

重新架構系統(程式如何呼叫記憶體,如何將圖形任務分配給 GPU,以及如何利用硬體特有功能)足以使遊戲達到目標幀數,這也意味著作品本身的表現力可以完全沒有變化。”
這種莫名的底氣,也許是源於他們以前將《奧博拉丁的迴歸》和《瀆神》帶到 Switch 的經驗。而從上述的案例來看,判斷是否榨乾了機器效能,對於開發者來說更像是一個相對概念。

移植工作能否順利展開,以及他們所尋求的目標,主要還是看在優化上有沒有找到一些更巧妙的方法。機器本身的侷限性是固定的,有一批機靈的團隊找到了適合自己的門路,也有人碰壁後只能採取不過腦子的暴力方法,因此才造成了移植質量參差不齊的局面。


小作坊的啟發

當然,大廠請得起 Saber Interactive 和 Warp Digital 這樣的專業團隊,小作坊就不一定了。在“榨乾”Switch 這件事上,小作坊的標準雖然降了一級,但並不代表硬體要求較低的中小型遊戲不會碰壁。

獨立遊戲的作者想要將作品帶到 Switch,一般會有比較長的摸索過程。

《遠星物語》的開發商就因為 HTML5 的遊戲架構,最初篤定自己的作品不可能登陸 Switch,除非是“老母豬能上樹”。這雖然牽扯到個人的能力問題,但他們後來又在粉絲的催促下開始重新研究程式碼,突然才發現有些東西是搞得定的,活活上演了一出“真香”的打臉戲碼。

而斯特林·塞萊佛的經歷更加曲折。在著手《禁忌藝術》(The Forbidden Arts)的移植工作時,他沒想太多便採取了“腰斬功能”的暴力方法。當時還算了一筆細賬:

初版在 Switch 上只能跑到 13 幀,刪除抗鋸齒後達到 23 幀,把所有的法線貼圖、高光貼圖、反射貼圖和細節貼圖剔除後變成 32 幀,大幅降低解析度後逼近 41~43 幀……計劃看上去很“美好”。

面對遊戲移植,Switch的效能還有得“榨”嗎?
禁忌藝術

結果折騰了一大圈回過頭來,遊戲的畫面已經大打折扣了,但還是沒能達到目標幀數。實際上,《禁忌藝術》在 Xbox One X 和 PC 的執行環境下,使用了高抗鋸齒,高解析度陰影,動態照明、後期處理、以及大量的定製材質和著色器,這些東西在 Switch 都沒有進行相應的優化,完全可以圍繞著它們做一些對效果影響不那麼明顯的文章。

原版遊戲裡的草木不失為一個好例子,波動的葉子使用了一種自定義著色器,樹木還帶有動畫效果,佔去了很多資源。

面對遊戲移植,Switch的效能還有得“榨”嗎?
《禁忌藝術》中針對樹木的“切割著色器”

但其實在建立物件時,可以利用漫反射著色器(無需考慮光線角度)和不透明材質來提高幀數。只是由於重畫素材要浪費不少時間,塞萊佛才用了一些取巧的辦法,比如安放一堆“廣告牌樹”(Billboard Trees)來替換畫面遠處的模型。它們由 2D 圖形疊加起來以偽造成 3D 效果,這些元素放到遠處中是很難看出來的。在 Switch 的機能限制下,近景和遠景的區分對待變得相當重要。

與此同時,他還意識到影響遊戲載入時間的最大敵人不是圖形而是音訊,重寫了程式碼後,音訊被直接儲存在場景中,再加上一些額外的 CPU 呼叫,這款遊戲最長的讀盤時間從 36 秒瞬間銳減到 11 秒。

面對遊戲移植,Switch的效能還有得“榨”嗎?
一個典型的“廣告牌樹”,可以節省很多資源

不難發現,使用“靜態元素”來代替“動態元素”,可以說是解決 Switch 移植問題(甚至是所有移植問題)的慣用手法。

作為一款主打環境破壞的遊戲,《X變體:防禦》(X-Morph: Defense)中就有很多組成建築的物理塊,被打爆後需要裝置渲染大量多邊形,對 Switch 來說負載非常大。於是,開發團隊轉頭定製了所有可破壞物件的靜態版本。

通過模型替換、程式碼優化,以及紋理和聲音的壓縮,使得這些東西的記憶體佔用量減少了 30%。再加上為聲音、粒子、GUI、視訊和儲存檔案分配靜態記憶體的手法,系統因殘留記憶體碎片而浪費資源的問題得到了解決,由此充分利用了 Swich 的效能。

面對遊戲移植,Switch的效能還有得“榨”嗎?
Switch 版《X變體:防禦》仍然有不錯的爆炸效果

順帶一提,不是所有麻煩的都來自硬體效能。

以《未訴之事》(Stories Untold)為例,它在 PC 上是一款利用“指令輸入”來推進故事的文字冒險遊戲,通過鍵入 Go to、Look at 、Use 等文字完成探索。最初移植到 Switch 上時並沒有執行效率的問題,只是因為打字不方便,才影響了敘事節奏。作者後來乾脆利用螢幕點觸的機器特性改變了遊戲機制,設計上利用“動詞”與“名詞”的點選組合,讓玩家仍有一定的自主選擇權利,這才成功渡過了危機。

而且莫說是是小作坊了,文字問題同樣是 Panic Button 的心頭大患,由於要同時保證手持和大屏的效果,有時候弄出來兩頭不佔。Switch 版的《火炬之光2》在改變 UI 的情況下一定程度上弱化了衝突,相比之下,《毀滅戰士》的表現就只能說勉勉強強了。

一樁熱門生意

Switch 的推出確實像是引爆了一顆炸彈。移動平臺和客廳使用場景的結合,衝破了玩家們腦海中的堤口,讓人心生暢想。而對於不少從業者來說,將遊戲移植到 Switch 也跟著成了一樁熱門生意。

Warp Digital 技術總監的看法是,遊戲的原始開發者常常要面臨繁重的製作任務,沒有時間或技術去優化系統,這就給以移植為生的團隊在 Switch 上擠出更多效能的機會。

面對遊戲移植,Switch的效能還有得“榨”嗎?
考慮到《瀆神》的畫素畫面,Warp Digital 負責的 Switch 移植工作難度還沒那麼高

很多公司都發現近年來與 Switch 移植相關的訂單激增,Panic Button 開發總監由於工作太忙,將自己比喻成“在灑水器旁喝水的狗”。而曾參與過《Fez》和《堡壘》移植工作的 Blitworks,也將原因歸咎於 Switch 進入市場的餘震:

“主要是因為獨立工作室看到了在主機上發行遊戲的另一種可能性,過去這並不容易做到,因為進入市場的限制更多,現在有更多的開發商和我們接觸,並希望能夠實現這一目標。”

這不是單方面的原因,任天堂給了第三方廠商很多支援。據 Blitworks 解釋,儘管過去在開發工具的支援上 Wii U 要遠遠落後於競爭對手,但 Switch 通過一系列轉變至少跟上了時代。就硬體效能而言,它也在便攜方面也做出了平衡,比 PS Vita 的限制要少得多。

觀點相同的,還有負責將《文明6》帶到 Switch 的 Aspyr。他們的執行副總裁之前表示,任天堂非常支援控制方案和遊戲流程方面的新想法,特別是在平臺工程和榨乾 Switch 的效能方面幫了自己一把。

面對遊戲移植,Switch的效能還有得“榨”嗎?
在 Switch 上降低畫面表現倒不是太影響《文明6》的體驗

除此之外,不少各自為戰的製作人也提到了一些變化。《地下城探索》(Quest of Dungeons)的作者認為“Switch 移植起來比 3DS 舒坦多了”,《九張羊皮紙》的開發商同樣表示 Switch 的“開發環境、文件和後端都有了很大進步”。《神奇小子:龍之陷阱》的製作人更是對 HD 震動功能大為讚賞:“程式設計是如此簡單和富有表現力,我們很容易就能在遊戲中加入有趣的元素。”

我們自然不能沉浸於這些讚美之詞,在 Switch 上糊成一團的《方舟:生存進化》,幀數到不了 30 的《生化危機6》,讀盤頻次多到嚇人的《天外世界》,糟糕的移植體驗是不可迴避的。但我們也不該否認一批極力維持原版感官的作品,比如《逃生2》《黑暗之魂》和《巫師3》。

Switch 移植市場的熱度,足以證明其中有利可圖,也凸顯了人們對於便攜遊戲場景的旺盛需求。

要想絕對用盡硬體的效能,通常是隻有第一方才做得到的事情,而這個標準也不是絕對的,或許《塞爾達傳說 曠野之息2》就會有更好的表現。但無論如何,這都會不斷促使從業者們去攻破內在的技術難題,正如文中展現的那些創造性思維一般,看似被逼到極限的 Switch,未來應該還有著更多“被榨乾”的可能性。

--------------------------------------------------------------------------------

參考資料:

Porting to Switch and under-powered consoles
Challenges I faced to achieve 60FPS on a Nintendo Switch port
How Switch's success is impacting devs in the game porting biz

作者:箱子
來源:VGtime
地址:https://www.vgtime.com/topic/1089078.jhtml

相關文章