作者SRWSEED (SRWSEED)
看板Falcom
標題[軌跡] PC版 英雄傳說 閃之軌跡 開發過程訪談
時間Sun Jul 23 22:41:08 2017
XSEED 原文網址:
https://goo.gl/yJyTDZ
來自閃之軌跡吧網友翻譯: 翻譯作者:昀山霧雨
https://goo.gl/dPUeQP
本文翻譯譯文有詢問過原作者,經過同意轉載。
也答應作者必須告訴他轉載的地方
《英雄傳說:閃之軌跡》個人電腦版嘉賓博客一號——性能篇
作者:彼得·“杜蘭特“·托曼
當XSEED聯絡我讓我參與他們開發中的《英雄傳說:閃之軌跡》(以下簡稱“閃軌“)的
個人電腦版本的移植(以下簡稱”PC移植“)時,我對這個項目的前景就感到十分興奮。
《空之軌跡》系列是我在PC上十分喜愛的JRPG之一,因此我也十分期待讓這個系列的後繼
作品能在PC上有著盡善盡美的表現。
當然,剛開始的時候我並不知道我對這個項目的參與程度有多深:我以為我只會對部分程
序作優化,大概一兩周的全職工作即可完成任務。現實卻大不相同。本系列文章將會詳述
其中的原因。
本系列文章目前計劃分為三部分,在八月二日發售日之前將會逐步放出:
1. 第一部分即為本文,此部分將會展現性能部分的狀況,大部分與幀率以及載入問題相
關。
2. 第二部分將會展現PC版本的圖像改善以及圖像選項,以及實現提升的過程。
3. 第三部分將會展現PC版本上一些獨特的功能以及加入這些功能時遇到的一些困難,需
要注意的是這些功能與圖像改善並沒有直接相關。
性能故事的開端
關於程序的故事以載入問題為開端往往是合適的,而我最開始被咨詢到的問題就是讀取時
間。當時的PC版本在配置良好的機子上,讀取時間常態性地需要花費20秒以上,而且這些
讀取並不是偶然間的大型讀取,而是任何需要讀取的情況都會遭遇如此長的讀取時間,例
如每一次開始戰鬥以及戰鬥結束。另外,整個遊戲都出現多處的讀取拖慢現像。
這當然是一個不能接受的版本。經過長時間的分析,我發現造成拖慢以及讀取問題的主要
原因都在於遊戲引擎使用了“Nvidia Cg“(目前來說一款非常老舊、沒有技術支持的高級
著色器語言工具),遊戲常態性地使用這款工具來編譯及加載著色器。通過緩衝以及重新
使用著色器的編譯成果,我成功地將讀取時間(在第一次讀取過後)降到了2-3秒,並消
除了在開始後的大部分拖慢現像。我對剛開始接手的這個問題的進展感到滿意,我彙報了
我的發現並開始編程。
標準
過了一些時日,我被分配到了為游戲的最終發售進行潤色的任務。當時我花費了一些時間
來改善當時還存在的以Cg為基礎版本的遊戲的圖像性能表現,在幾次遊玩測試後我逐漸對
其性能表現感到失望。
因為游戲起先是在PS3甚至是PS Vita平台上發售的(盡管PC版本只會使用PS3級別,甚至
更好的材質以及特效),我所期望的結果是配置良好的桌上型電腦可以極其輕易地運行游
戲。然而,在當時我就已經發現了一個場景中的某個攝影機視角會讓我的電腦掉幀到
45FPS,而且完全是CPU的限制。通過使用了數種分析工具,我發現這個問題主要與這個引
擎處理著色器階段的OpenGL/Cg的渲染後端相關,並導致了每個繪圖指令都會請求數十個
階段設定指令。通過更多的優化和微調,我將測試場景的性能提高到了55FPS。在此時,
我預估即使對Cg為基礎的渲染器進行完全的優化,在我的電腦上也最多只能把幀率提高到
80FPS。
這樣子的結果著實不夠好。
我永遠無法接受在PS3上以30FPS運行的游戲,在經過我的優化後只能在我2015年配置最好
的桌上型電腦上以80FPS的幀率運行,尤其是我的名字還要出現在工作人員名單上。實際
上,我更希望這樣的遊戲能在低功率的攜帶型電腦(如GPD Win)上運行,然而這階段的
性能表現抹殺了這種可能性。
中途換將
這個性能問題的唯一真正的解決辦法是完全替換渲染後端。遊戲使用的引擎已經有了DX11
後端,然而Falcom在制作《閃軌》時顯然只是使用了OpenGL/Cg,游戲本身以及其材質使
用了大量在DX11後端裡不存在或者無法正常運行的功能。因此,轉換到不同的渲染器其實
是到目前為止PC移植的最大改變。
下面是DX11版本開發時我拍的第一張截圖,請注意,這張截圖拍攝時我已經修復了一系列
讓遊戲甚至無法運行的問題。
http://i.imgur.com/iLo8erg.png
在這張截圖你能夠看到超過十數個的渲染問題,其中的一些問題需要從基礎上拓展引擎以
及重做才能修復。然而,這只是與更換渲染後端相關的57個分別渲染問題(不是單獨的例
子)的最終合集。我沒辦法每個問題都展示出來,但是下圖是我在開發後期處理時的一張
特別好笑的截圖——如你所見看起來不是太糟糕了:
http://i.imgur.com/LXw2Dei.png
結果
盡管有著這麼多的問題以及花費了很多功夫才把遊戲移植到了一個完全不同的渲染後端,
在最後結果還是讓人滿意的。下圖是遊戲在不同階段在我的電腦上的(CPU)性能表現
http://i.imgur.com/YlGBFGl.png
遊戲目前的階段,代號為“DX11優化版本“,與大家所期望的優秀的PS3移植到PC版本的
遊戲相符。
關於這個圖標我要指出重要的一點:請不要使用這個圖標作為DX11比OpenGL快多少的論點
這個結果是在相同引擎下這些應用程序接口使用不同渲染後端的直接後果。
我猜想GL/Cg的版本更多的是設計用來在家用機及相似的目標平台上的開發工具,
而不是滿足PC版本上的性能指標。
在高端的PC上達到300FPS固然不錯,但是在回合制的JRPG上就顯得意義不大了。
更值得關注以及真正的成果是游戲運行在低端系統上的性能表現。
本影片(此處應有開發試玩影片
https://goo.gl/4JXy5C)展現了遊戲在GPD Win上以
1280x720P的解析度流暢運行。至於圖像設置,影片上的遊戲
使用了“ 攜帶型電腦“的設定,圖像就如字面所示一樣簡陋,同時在擁有卓越性能的PC上
也有可以花費的新功能,但這就是《閃之軌跡》PC移植版的下一篇博客的內容了。
(以上翻譯來自閃之軌跡吧的網友:"昀山霧雨"
原文著作權歸XSEED所有,翻譯權歸本人所有)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.61.231
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Falcom/M.1500820871.A.C9B.html
※ 編輯: SRWSEED (1.161.61.231), 07/23/2017 23:09:37
1F:推 tadfattly: 這個語音也是英文的嗎? 07/24 00:28
2F:→ SRWSEED: 語音目前就只有英文,但是STEAM頁面現在有顯示有日文介面 07/24 00:29
3F:→ SRWSEED: 跟日文字幕,看看後續會不會有日文語音加進去? 07/24 00:30
4F:→ SRWSEED: 不然之前依照這家歐美代理商發售的空之軌跡PC版本連日文 07/24 00:30
5F:→ SRWSEED: 介面跟字幕都沒有,而這次閃軌後來才加有日文字幕跟介面 07/24 00:31
6F:→ SRWSEED: 其實在XSEED還有STEAM閃軌PC討論區,有不少歐美玩家在吵 07/24 00:32
7F:→ SRWSEED: 為何沒有日文語音..... 07/24 00:33
※ 編輯: SRWSEED (1.161.61.231), 07/24/2017 00:41:12
8F:→ SRWSEED: 據我所知,沒日文語音就是版權的關係導致的.... 07/24 00:48
9F:推 kuluma: 版權應該不是問題,你的名字英版上的時候就有討論說 07/24 01:03
10F:→ kuluma: 英語圈的文化是不習慣看字幕的 07/24 01:03
11F:推 KingKingCold: 所以那個空軌SC跟3rd EVO的中文版咧?? 07/24 01:13
12F:→ KingKingCold: 該不會真的胎死腹中了吧?? 07/24 01:13
13F:→ SRWSEED: 如果說今年都過完都還沒有消息 我看八成是掛了 07/24 01:14
14F:推 tsairay: 版權當然是問題..因為要付錢啊 07/24 01:51
15F:→ tsairay: 沒問題的前提是,要多付一次pc版授權費 07/24 01:52
16F:→ tsairay: 如果是買斷的話怎麼可能不放 07/24 01:52
17F:推 kuluma: 如果是其他國家就算了,你要說歐美沒錢買日文配音版權所以 07/24 02:44
18F:→ kuluma: 只能上英文版,那我是不太相信,英語圈的習慣就是聽配音 07/24 02:45
19F:→ kuluma: 不看字幕阿 07/24 02:45
20F:推 tsairay: XSEED又不是多大家的公司,不要甚麼都套上"歐美" 07/24 02:45
21F:→ kuluma: 在講個現實點的問題,有日文配音,對岸那群妖魔鬼怪就要 07/24 02:45
22F:→ kuluma: 弄盜版出來了,反之英文版他們漢化組就興趣缺缺 07/24 02:46
23F:→ tsairay: 這些JRPG作品還只能算是小眾,利潤本來就很有限 07/24 02:46
24F:→ kuluma: 所以總體來說沒日文配音是好事,至於到底是因為沒錢還是 07/24 02:47
25F:→ tsairay: 不是沒錢,是划不來 07/24 02:48
26F:→ kuluma: 英語圈使用者的問題才沒日文版,這大概永遠也不會公布吧 07/24 02:48
27F:→ tsairay: 你都說英語圈是聽配音不看字幕,那他們聽日文配音幹嘛 07/24 02:49
28F:→ tsairay: 根本兜不上去 07/24 02:49
29F:→ kuluma: 我不覺得直接買日語版權,會比去重配英文還貴欸 07/24 02:49
30F:→ tsairay: 邏輯清楚一點好嗎..不是價格多少,是值不值得的問題 07/24 02:50
31F:推 kuluma: 會覺得XSEED出不起日文配音的版權費也太小看他們了吧 07/24 02:51
32F:推 tsairay: 因為不貴所以錢可以花下去,這種花錢法是外行 07/24 02:53
33F:推 kuluma: 這難說喔,之前FF15電影英配不是也出大問題,後來才在 07/24 02:56
34F:→ kuluma: 那邊早知道就上日配英字幕之類的 07/24 02:57
35F:推 tsairay: 小眾遊戲成本本來就要嚴控了,能賣多少大概都估算得出來 07/24 02:58
36F:→ kuluma: 但是重來好幾次,還不是都是會先弄個英配版,那就是他們 07/24 02:58
37F:→ kuluma: 文化圈的主流因素,不會是什麼版權費出不起的因素阿 07/24 02:58
38F:→ tsairay: 你舉一個3A大製作的FF15能代表甚麼? 你知道FF15拉了多少 07/24 02:59
39F:→ tsairay: 贊助合作嗎,拿這個類比笑死人了... 07/24 02:59
40F:→ tsairay: 從來就不是"出不起",那肯定是精算過後覺得"不划算" 07/24 02:59
41F:推 kuluma: FF15就算沒贊助還是買得起日語配音版權好嗎 07/24 03:00
42F:→ tsairay: 才不出的,一直圍繞在"不是出不起","怎麼可能出不起" 07/24 03:00
43F:→ kuluma: 可是在版權問題,扯到錢的是你阿 07/24 03:01
44F:→ tsairay: 這種只是以非經營者角度來看,你是看不出錢要怎麼花 07/24 03:01
45F:→ tsairay: 版權問題就是錢的問題,聽不懂? 07/24 03:01
46F:→ kuluma: 我推文一開始說版權不是問題,就是說我不覺得是錢的問題 07/24 03:01
47F:→ kuluma: 而是他們英語文化圈的問題阿 07/24 03:02
48F:→ tsairay: 有錢解決不了的配音版權問題嗎 07/24 03:02
49F:→ tsairay: pc版肯定是之後才要出,配音版權一定沒簽到 07/24 03:02
50F:→ kuluma: 所以我一開始就沒再扯錢,要在錢上打轉的是你阿 07/24 03:02
51F:→ tsairay: 你要pc版額外再附上就是要多簽授權,然後就要花錢 07/24 03:03
52F:→ tsairay: 一環扣一環,會分開看得,比較背離現實吧 07/24 03:03
53F:→ kuluma: 所以我是說我不覺得他們出不起,而是他們的文化圈就是 07/24 03:03
54F:→ kuluma: 英版配音為優先 07/24 03:03
55F:→ kuluma: 你要跳下來講錢,那是你的問題吧 07/24 03:04
56F:→ tsairay: NBGI一堆遊戲pc版就算沒日文字幕也給日配,那是因為一定是 07/24 03:05
57F:→ tsairay: 一開始就簽好全平台授權 07/24 03:06
58F:推 kuluma: 而且我都不好意思講了,要談笑死人還是背離現實,前幾年 07/24 03:07
59F:→ kuluma: 不知道誰在那一付業內行家的模樣,斬釘截鐵的說伊蘇 07/24 03:08
60F:→ kuluma: 或閃軌不會再有PC版了,結果哩? 07/24 03:08
61F:→ tsairay: 誰啊,說說看啊,轉移焦點是要幹什? 07/24 03:10
62F:推 kuluma: 我上一段早就講完我這篇的觀點了,至於轉移焦點,扯NBGI 07/24 03:12
63F:→ kuluma: 的段落也是彼此彼此而已啦 07/24 03:12
64F:推 tsairay: 配音版權就是一種商品,商品就是拿來賣的,當然是錢的問題 07/24 03:12
65F:推 RandyOrlando: 兩位請稍微克制一下吧 沒必要為了這問題針鋒相對啦 07/24 07:29
66F:推 loamsdown: 這優化太神啦!! 07/24 09:56
67F:→ loamsdown: 更正:最佳化 07/24 09:57
68F:→ SRWSEED: 回到正題,照這開發所講的閃軌在PS3時期是用DX11開發的 07/24 09:58
69F:→ SRWSEED: 坦白說閃軌這畫面不像是有DX11畫面該有的樣子 07/24 09:59
70F:→ SRWSEED: DX9還差不多 還有看閃軌PC配備需求 顯示卡至少要支援DX11 07/24 10:00
71F:→ SRWSEED: 作業系統要WI7 基本上DX11 WIN7才有支援有PC玩家電腦配備 07/24 10:01
72F:→ SRWSEED: 太舊或許整台要換掉了..... 07/24 10:01
73F:→ tsairay: win7算標準很低了,因為至少是8年前的os 07/24 10:49
74F:推 mumi61337: 翻譯:法社的優化跟屎一樣 07/24 10:56
75F:推 ThorFukt: 無所謂 對英配完全沒興趣 閃軌那劇本出在PC上現在亞洲 07/24 13:19
76F:→ ThorFukt: 這邊也沒啥人要買了 07/24 13:19
77F:推 shinobunodok: 碧PC我倒是很開心的支持下去啦 這個閃... 07/24 14:49
78F:→ hoe1101: 閃3沒爆炸我就真心服了法爾康 07/24 17:15
79F:推 Yanrei: 閃3至少扎扎實實把一整片遊戲塞滿吧 07/24 21:11
80F:→ SRWSEED: 我是覺得等閃3正式發售再來做評論吧,沒發售的遊戲 07/24 22:04
81F:→ SRWSEED: 直接下去做評論,不太妥..... 07/24 22:04
82F:推 henry90246: 這風氣已經蔓延很久了,認命地看吧w 07/24 22:06
83F:→ SRWSEED: 抱歉 我要糾正我自己所說文章裡面的內容的見解 07/24 23:07
84F:→ SRWSEED: 嚴格來說閃軌當時F社開發的時候是用是用Open GL/cg進行 07/24 23:10
85F:→ SRWSEED: 渲染,本身閃軌引擎是用 PhyreEngine 這套引擎本身也有 07/24 23:13
86F:→ SRWSEED: DX11 ,閃軌遊戲中的引擎雖然說也有DX11的渲染後端,但是 07/24 23:15
87F:→ SRWSEED: F社沒去使用,應該說PS3本身規格不支援DX11就算要用也不行 07/24 23:21
88F:→ SRWSEED: 主要這次XSEED負責移植閃軌PC版,把渲染方式改成了DX11 07/24 23:33
89F:→ SRWSEED: 而不是F社所使用Open GL/cg ,照文章所說用了DX11效率也比 07/24 23:34
90F:→ SRWSEED: Open GL/cg 好很多就是。 之前大家都有印象閃軌剛開始 07/24 23:35
91F:→ SRWSEED: 發售的時候,發現場景讀取切換過慢的問題,雖然F社事後也有 07/24 23:35
92F:→ SRWSEED: 發佈更新檔解決,但是還是會慢一些,這次PC版利用DX11下去 07/24 23:36
93F:→ SRWSEED: 做,讀取問題或許直接快速秒切。 07/24 23:37
※ 編輯: SRWSEED (1.164.32.89), 07/24/2017 23:38:48
94F:推 shinobunodok: 閃3看那個人物數 你確定不是大家發個名片 然後就終 07/25 08:35
95F:→ shinobunodok: 章惹嗎 07/25 08:35
96F:推 wwa928: 推分享 07/25 09:00
97F:推 tsairay: 閃三的讀取的話,參考幾乎是同引擎做出來的東京幻都ps4版 07/25 13:06
98F:→ tsairay: 應該會是非常的快速 07/25 13:06
99F:推 pablito61337: 閃1PSV的讀取速度真的是夢魘 閃2有好一點點 07/26 18:38
100F:→ pablito61337: 但我永遠記得劫炎開S技 那FPS大概不到10吧... 07/26 18:39
101F:→ pablito61337: 我都懷疑我是用PSP在玩的 07/26 18:39
※ 編輯: SRWSEED (1.164.32.89), 07/28/2017 00:42:43
※ SRWSEED:轉錄至看板 C_Chat 07/28 22:38