愛玩網百萬稿費活動投稿,編譯 塗之錄,未經授權請勿轉載
數據總能讓你直觀地去判斷一個遊戲的好壞。銷量,售價,評分,這些數字總能引起我們的購買欲望。但是還有一組特殊數據,要是它達不到要求,估計你會連玩遊戲的欲望也沒有了。我們都知道《最後生還者》是一款把PS3機能發揮到極緻的遊戲,其精美的畫面總是讓我們流連忘返,但你一定不希望它卡成精美的PPT吧?所以在談論衆多遊戲數據時,我們永遠繞不開一個老生常談的話題——那就是遊戲的幀率。
你不會想玩隻有10幀的《最後生還者》吧?
首先我必須澄清一點,就是在我們口頭讨論遊戲流暢度的時候,總是把“幀數”(Frame)和“幀率”(Frame rate)混為一談。其實在評測遊戲流暢度的時候,幀率才是那個重要的指标,而不是幀數。關于這一點我會在下文中展開講。
那麼為什麼幀率那麼重要呢?所有的老玩家應該都知道幀率是遊戲體驗的基石,它的高低與穩定與否直接決定了遊戲的流暢性與可玩度。是的,幀率幾乎是遊戲流暢的全部。那我們就自然而然地引出下一個問題:幀率是不是越高越好呢?其實不然,具體原因《遊戲幀數:并非越高越好,穩定更重要》這篇文章已經說的很清楚了。但這裡我想補充的是:除了幀率,幀生成時間與單幀畫面(不撕裂)對遊戲體驗來說也很重要。
小時候常玩的翻頁動畫
幀(Frame):一幅字畫叫一幀,這是字典上對幀的解釋。其實在遊戲中大緻也是如此,幀就是影像動畫中最小單位的單幅影像畫面。簡單地來說,一幀就是一副靜止的畫面,連續的幀就形成了流暢的動畫。拿翻頁動畫舉例的話,其中的一頁就代表着一幀。其實遊戲也是這麼動起來的,隻不過在這裡“翻”的這個過程是由計算機來完成的。
幀數(Frames)/幀率(Frame Rate):普通玩家平時很容易混淆這兩個概念。幀數指一般指單位時間内幀的生成數量,而幀率指的則是單位時間内顯示的幀數(一般以FPS為單位)。先舉個簡單的例子:就像翻頁動畫,幀數代表着你翻到的那一頁的頁數,而幀率則代表你翻頁的速度。
再舉一個不算複雜的例子:如果一個動畫在一秒鐘内的幀數為60幀,兩秒鐘内的幀數為120幀,那麼它的幀率則為60FPS。如果平均幀率越高,那麼畫面越流暢。值得一提的是:在主機上,30FPS一般是遊戲流暢運行的最低标準,而60FPS則被認為是比較完美的。
幀生成時間(Frame Time):顧名思義,幀生成時間指的就是渲染單獨一幀所需的時間。也就是在翻頁動畫中翻一頁所需的時間,所以生成幀的時間一般非常短,通常以毫秒為單位。那這和遊戲流暢度又有什麼關系呢?讓我們先來做一點小小的計算:如某秒的幀數為30幀,那麼已知每秒30幀是流暢遊戲的最低标準,1s又等于1000ms,所以平均每幀的生成時間為1000/30=33ms。也就是說隻要每幀的生成時間小于33ms,那麼我們是難以察覺到遊戲中的卡頓的。如果幀生成時間忽上忽下,就算平均下來的FPS為30以上,整個遊戲流程下來也不會太流暢。如果你不是很理解這個概念,下面這個幀生成時間圖能更好地幫助你更好地來理解這個概念(綠色代表流暢,紅色代表不流暢)。
33ms以下遊戲就基本流暢了
說完了這麼多,我想我們已經對幀率分析的基本概念有了一個了解。在PC平台上,我們可以輕松地借助第三方軟件(Fraps),或遊戲自帶的跑分程序來對遊戲裡的幀率表現有一個了解;而在主機平台上,我們沒有現成的工具去衡量,靠肉眼去判斷又不準确客觀,但遊戲裡的掉幀我們又是有目共睹的。那應該怎麼辦呢。外媒Digital Foundry告訴我們主機的幀率分析一般分三步走:采集——分析——對比。下面就讓我們一步一步地進行解析吧:
準備工作
就像我之前講的,PC上有很多現成的工具(如Fraps)來測試遊戲的幀率,但由于主機系統相對封閉,我們并不能在遊戲主機上直接測試遊戲的幀率表現。在這裡,我們選擇“曲線救國”的方式:即先把主機的畫面搬到PC上,然後再對畫面裡的幀率進行分析。在整個過程中,“搬”這個至關重要的步驟就由采集卡負責。我們都知道,一塊采集卡能把來自主機的信号轉換為電腦視頻文件,而這些可打開的視頻便為遊戲日後的分析埋下了基礎。不過在這裡,我想強調的是:這塊采集卡必須足夠貴,足夠高端(1080P 60FPS起步),也隻有這樣,搬運自主機的視頻文件才能做到足夠“無損”。如果搬運來的視頻與遊戲實機畫面有出入,那麼測試結果準确也無從談起。
這塊采集卡就要6000多RMB了
拿到這些無損視頻文件以後,我們以遊戲《命運》為例,把它導入到DF自家的分析軟件FPS GUI中。
在這張圖的左邊中,從上到下我們可以依次清楚地看到當前幀率,幀生成時間表,和幀率變化表。
而在右邊的這些設置看似複雜,實際上與幀率測試沒有什麼太大關系。這些設置一般決定了圖表的顯示位置,顯示範圍,以及内部的顔色,字體等等。
FPS GUI軟件概覽
由于是初次導入,我們可以看到目前這些圖表的設置并不合理(顯示當前幀率的地方遮住了遊戲的HUD),在經過一些快速修正後,我們來看看成果。
修正後的畫面
然後我們再來看看喜聞樂見的跨平台對比,我們分别導入兩個平台的重複片段視頻,并設置成分屏顯示,在圖中我們可以清楚地看到左邊為PS4的幀率情況,右邊為XBOX的幀率情況,而圖表中不同顔色的線則代表不同平台。
跨平台對比
數據分析
我們已經大緻了解了這款軟件的工作方法,那就讓我們再次深入,一探幀率測評的究竟。這次我們從Composite(合成)選項卡轉到Video(視頻)選項卡。現在,我們可以從右邊的information(信息)欄中一目了然地看到關于幀的詳細信息,下面我就對此欄做一個簡單的漢化。
右邊有各項詳細信息
視頻信息 幀信息
總幀數:3224 幀數:第2840幀
總撕裂幀數:3(0.09%) 是否屬于重複幀:否
總重複幀數:1613(50.03%) 是否屬于撕裂幀:否
平均幀率:29.98 撕裂幀位置:無
最低幀率:29FPS 當前幀率:30FPS
最高幀率:31.03FPS 渲染幀時間:33.33ms
最高正常幀數:1到2621幀共2620幀
最高撕裂幀數:2621幀到2623幀共2幀
有了上表,我們就大緻上了解遊戲的運行狀況,比如畫面撕裂是否常見,幀數是否穩定,以及當前幀生成時間(渲染幀時間)。那麼這些信息是否一定準确呢?有了這些信息是否就夠了呢?讓我們帶着這些疑問,進入下一個環節。
畫面對比
要說遊戲幀率評測的基本原則是什麼,其實很簡單,就是找到兩幀之間的不同。計算機直接導出的結果可能有誤,但逐幀對比一定沒問題,不過有時候它們之間的差别又很難用肉眼直接對比出來。這時候,這款軟件的熱點圖功能(heat map)就派上了用場。
用于逐幀對比的熱點圖
如圖所示,這就是該幀的熱點圖。熱點功能把對比定位在了像素級層面上:如果圖中的顔色越亮,代表着與前一幀的區别越大,黑色則代表沒有任何區别。
而當我們把畫面移到下一幀時,我們發現整個圖像是暗的,這代表着這一幀與上一幀的畫面沒有任何區别。重複試驗,我們發現幾乎整個遊戲流程都是這樣的排布。
全黑代表沒有區别
其實在60幀格式下錄制的視頻中,像命運這樣鎖30幀的遊戲就應該有着一幀是重複幀,一幀是全新幀這樣的排布。而上述現象則剛好驗證了命運幀率為30幀的事實。
我們再看另一組對比,這次我們依次導入PS版與XO版的《蝙蝠俠阿卡姆騎士》,與《命運》不同,《阿卡姆騎士》對主機的機能要求更高,所以我們在兩個平台上都找到了掉幀與畫面撕裂。
因為掉幀很容易在幀率變化表中找到,而畫面撕裂則不然。所以找到畫面撕裂的時空位置又是遊戲幀率評測的一大重點。現在先讓我們切換到一幀有撕裂的地方。如圖所示,在PS4畫面的上部我們可以看到一個非常明顯的撕裂。這處撕裂實際上是由程序的算法計算而來,并由短橫紅線标在畫面上,而圖片的下方紅豎線則表示撕裂的持續時間與撕裂的大緻位置。
左邊的畫面撕裂非常明顯
前面這組圖片展示的可能不太清楚,那麼讓我們換張對比圖再做仔細講解
這裡畫面撕裂非常頻繁
如圖所示,首先我們要明白藍色代表XOS,綠色代表XO,在下方的幀率表當中,以橫中線為界(上為XOS的情況,下為XO的情況),表中豎中線代表當前幀。紅色所占該線區域則為撕裂位置(所以我們看到XO的畫面上并沒有撕裂),而紅色區域則代表撕裂時間(兩個平台不分伯仲)。
盡管這種紅線算法省時省力,不過算法總歸算法,也會有出錯的時候。當我們覺得這幀撕裂的狀況不确定時,我們可以再次利用熱點圖進行像素級别上的對比。
用熱點圖找撕裂位置
就像我之前所說,如果圖中的顔色越亮,則代表着與前一幀的區别越大,純黑色則代表與前一幀沒有任何區别。從圖上我們可以看出上一幀的部分畫面在這一幀的上部出現了滞留(黑色部分)。因此我們看到了畫面撕裂。如果我們想讓這些區别顯得更加明顯一些,我們可以切換為黑白模式,在這種模式下,隻有相同(黑)與不同(白)兩種表示方式,因此我們可以更加直觀地找出區别。注:上圖與下圖不為同一幀。
用黑白模式找撕裂更明顯
既然說到手動檢查,那麼我們不得不再提一下左下角的幀生成時間表。這裡的幀産生時間表不僅可視化了遊戲過程的流暢程度,而且我們還可以通過這個圖表來判斷幀率的測量是否準确。通過開頭的計算我們已經知道30fps對應的幀生成時間為33ms,如果在視頻的某個區間内出現了大量的掉幀情況,而幀生成時間還是維持在33ms左右,那麼測量數據裡一定有一個不準确,所以這裡的幀生成時間就給整個測試上了一層保險。
十分有用的幀生成時間表
寫在最後
最後其實我想說,對于玩家而言,測試主機幀率的實際意義與可行性并不大(光采集卡可能就已經比主機貴了),但是從側面來說,這也給了我們一個了解主機遊戲測評的機會,滿足了我們的好奇心。
其實對大衆來說,做這種測試的最大意義還在于其輸出結果。通過幀率測試的數據,我們可以很直觀地看出一款遊戲的優化是否良心,或者該在哪個平台上購買該遊戲,這給玩家和廠商都是一個巨大的參考。
來源:Digital Foundry
編譯:塗之錄
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!