玩家們經(jīng)常說的“游戲優(yōu)化”,到底是什么?
不知各位在玩游戲的時(shí)候是否有遇到過這種情況,明明你的電腦配置就還算給力,或者你玩的是統(tǒng)一規(guī)格的游戲主機(jī)或者航機(jī),但你在玩特定游戲的時(shí)候就是會(huì)莫名其妙卡頓或掉幀,這個(gè)時(shí)候你可能就會(huì)吐槽這款游戲的優(yōu)化也太爛了吧。但說到底游戲優(yōu)化到底是什么?沒錯(cuò),這次我們就來聊什么是游戲優(yōu)化。
游戲優(yōu)化是什么?網(wǎng)絡(luò)上有各種專業(yè)的解釋,但這些夾雜著大量專有名詞與專業(yè)術(shù)語(yǔ)的闡述,先不說大家能不能看得懂,我自己都快讀睡著了。其實(shí)不管再怎么復(fù)雜,游戲優(yōu)化的目的總歸就兩個(gè)字“不卡”,換句話來說讓一款游戲不卡的技術(shù)就叫做優(yōu)化。在玩游戲的時(shí)候,無論是操作上、流暢度、表現(xiàn)上、甚至是畫面的觀感上,只要你玩起來覺得有點(diǎn)卡卡的,那這款游戲可能就還存有優(yōu)化的空間。當(dāng)然,這是較為廣義的優(yōu)化,其中涉及到使用者界面和使用者體驗(yàn)。要詳細(xì)地解釋“游戲優(yōu)化”問題,我們就得大致從“游戲?yàn)槭裁磿?huì)卡頓”、“開發(fā)者們優(yōu)化游戲有哪些手段”這些方面出發(fā)。
首先游戲?yàn)槭裁磿?huì)卡頓?這就得從現(xiàn)代的電子游戲基本運(yùn)作流程開始說起。無論你的游戲平臺(tái)是手機(jī)、游戲機(jī)還是電腦,這些設(shè)備基本都包含了負(fù)責(zé)運(yùn)算的CPU、GPU;臨時(shí)儲(chǔ)存設(shè)備(比如:內(nèi)存條)、長(zhǎng)期儲(chǔ)存設(shè)備(比如:硬盤);用于輸出畫面的屏幕,以及像是鍵盤、鼠標(biāo)、手柄、觸控等這些形態(tài)不一的輸入裝置。
游戲下載好之后就會(huì)存在硬盤里面,當(dāng)玩家按下開始游戲的時(shí)候,CPU就會(huì)把存在硬盤里可能會(huì)用到的資源翻到內(nèi)存條里面,這個(gè)過程就叫做載入。接著CPU就開始處理邏輯運(yùn)算,在這個(gè)瞬間,玩家按了什么按鈕,按了按鈕之后應(yīng)該要發(fā)生什么事,都是在這里處理的。
當(dāng)CPU處理好運(yùn)算之后,就會(huì)根據(jù)運(yùn)算的結(jié)果通知GPU該把哪些東西從內(nèi)存條里面拿出來,一層一層地畫到屏幕上,這個(gè)階段叫做渲染。等到渲染完成之后,畫面顯示出來,也就是完成了一個(gè)幀。如果這流程哪里出了問題,像是CPU運(yùn)算量過高或者GPU來不及繪制,以60FPS為例,畫面就沒有辦法即時(shí)在六十分之一秒內(nèi)做完,原本的一幀理論上只會(huì)出現(xiàn)0.0166秒,但這一幀可能停留了0.1秒,玩家就會(huì)覺得游戲卡了,這就是所謂的掉幀。
但如果一款游戲?qū)τ谟布男枨蟾哂谕婕沂褂玫脑O(shè)備時(shí),CPU和GPU就會(huì)長(zhǎng)期處于一個(gè)需要花費(fèi)高于預(yù)期時(shí)間才可以輸出畫面的狀態(tài),于是就會(huì)出現(xiàn)幀數(shù)不穩(wěn)定的狀況,游戲體驗(yàn)也就直線下降。對(duì)開發(fā)者來講,無論是突發(fā)性的掉幀還是持續(xù)性的幀數(shù)不穩(wěn)定,都是需要極力去避免的,畢竟要讓玩家愿意花時(shí)間來體驗(yàn)?zāi)愕挠螒?,只有做到不卡他們才有機(jī)會(huì)獲得一個(gè)良好的游玩體驗(yàn),而處理這些問題的行為就是優(yōu)化。
那具體來說,開發(fā)者們會(huì)怎么做優(yōu)化處理呢?從上一點(diǎn)可以知道解決掉幀問題是優(yōu)化的首要目標(biāo),而掉幀的原因通常是CPU或GPU處理不過來,那我們就換CPU跟顯卡,一張RTX3090不夠就插兩張,12代i7不夠用就上i9,如果預(yù)算無上限,你組臺(tái)天河計(jì)算機(jī)都可以。當(dāng)然這是不切實(shí)際的,不是所有玩家都有能力負(fù)擔(dān)一臺(tái)高性能電腦,也不是所有平臺(tái)都可以跟PC一樣想換就換,所以我們需要反過來思考,如何在有限的硬件條件中讓游戲順暢地運(yùn)行呢?我個(gè)人總結(jié)出三個(gè)大方向,分別是改變資源消耗的時(shí)機(jī);盡量在不被注意到的情況下降低畫面品質(zhì);以及烘焙。
先來說說改變消耗資源的時(shí)機(jī),這主要是為了應(yīng)付瞬間的掉幀。有的時(shí)候即時(shí)創(chuàng)造或者銷毀一個(gè)物件,所需要消耗的資源是很高的,這就有可能導(dǎo)致在創(chuàng)造或銷毀的瞬間畫面卡頓。這個(gè)時(shí)候我們就可以導(dǎo)入“對(duì)象池”的概念,這個(gè)對(duì)象池有點(diǎn)類似于鉛筆盒,作為一個(gè)好學(xué)生,身上少說也會(huì)帶個(gè)三五支筆吧?但如果你不把它們?nèi)糠旁阢U筆盒,而是直接丟進(jìn)書包里,那每當(dāng)你需要換一支筆的時(shí)候,你就得去翻書包,這樣就很浪費(fèi)時(shí)間對(duì)吧?
所以合理的做法當(dāng)然是準(zhǔn)備一個(gè)鉛筆盒,把這些筆全部都放進(jìn)去,每次需要用的時(shí)候就把鉛筆盒拿出來放在桌上,想要換筆你就不用特意去翻書包了?!皩?duì)象池”也是一樣,設(shè)計(jì)師會(huì)把可能用到的東西在載入場(chǎng)景的時(shí)候一起帶進(jìn)來,如果需要用到很多同樣的東西,就像鉛筆盒里面會(huì)有好幾支筆,這時(shí)就會(huì)把這些物件一次多載入幾個(gè)進(jìn)來,形成一個(gè)池。雖然這么做并不會(huì)降低創(chuàng)造物件的成本,就像大部分的時(shí)候你也不會(huì)同時(shí)用到鉛筆和橡皮擦,但是在“Loading”畫面中多等一幀,和你在游玩過程中卡頓的那一幀相比可劃算太多了。這些物件在使用完畢之后也無需銷毀它,只要把它關(guān)掉,丟回對(duì)象池里面,等到下次要用的時(shí)候再打開就好了,這樣做也就很大程度上減少了瞬間掉幀的情況。
再來講講盡量在不被注意到的情況下降低畫面品質(zhì)。一款游戲如果想要最大程度地表現(xiàn)細(xì)節(jié),它的模型面數(shù)肯定會(huì)稍微高一些,如果只是一個(gè)室內(nèi)的場(chǎng)景,畫面上只會(huì)有幾個(gè)模型,那也就算了??扇魮Q成森林、城市那種復(fù)雜的場(chǎng)景,只要稍微把攝影機(jī)拉遠(yuǎn),畫面上的模型數(shù)量就會(huì)非常的大,不做處理的話,這些模型所夾帶的總面數(shù)就會(huì)非常多,GPU就很有可能來不及運(yùn)算,進(jìn)而發(fā)生持續(xù)性的掉幀。所以基于性能的考量,設(shè)計(jì)師通常會(huì)使用“LOD”去做處理。LOD的全名是Level Of Detail,顧名思義就是把細(xì)節(jié)分成好幾個(gè)等級(jí),距離攝影機(jī)比較近的模型就會(huì)以面數(shù)最高、細(xì)節(jié)最多的形態(tài)呈現(xiàn),反之距離攝影機(jī)越遠(yuǎn),模型就可以顯示得越簡(jiǎn)陋。
還有一些比較狠的做法,會(huì)把動(dòng)畫的幀數(shù)調(diào)低,總而言之就是各種取巧,畢竟大部分游戲都會(huì)盡量讓玩家的注意力,集中在離自己比較近的地方。何況遠(yuǎn)方的物件在屏幕上占據(jù)的像素點(diǎn)并不算太多,只要處理地夠好,通常是不太會(huì)被發(fā)現(xiàn)的。當(dāng)然這只是理想上的狀態(tài),實(shí)際上大多數(shù)的游戲,特別是開放世界類作品,只要你慢慢往前走,甚至是在原地旋轉(zhuǎn)一下,視角或多或少地還是可以看出遠(yuǎn)方物件的閃爍、消失等異常情況。雖然說破之后會(huì)有些尷尬,但正因?yàn)橛羞@些處理,玩家才可以在游戲中體驗(yàn)到廣袤無垠的開放世界場(chǎng)景嘛。
最后再來講講“烘焙”。烘焙這兩個(gè)字稍微有一點(diǎn)抽象,游戲怎么會(huì)跟烤面包扯上關(guān)系呢?烘焙其實(shí)是指把一個(gè)原本在即時(shí)運(yùn)算中特別吃效能的功能,在開發(fā)階段就先花時(shí)間算好,并保存起來,之后如果要再用到這個(gè)功能時(shí),就不用再花大量CPU和GPU資源去即時(shí)運(yùn)算了。我們都知道游戲的幀數(shù)最少也要30,所以游戲?qū)磿r(shí)運(yùn)算的要求是非常非常高的。而在3D的世界中,光影的計(jì)算又是特別消耗效能,所以很多像是靜態(tài)陰影、光照探針、法線貼圖、鏡面反射等等都會(huì)使用到烘焙。這樣做的好處在于幾乎不犧牲畫面品質(zhì)的情況下,就可以做到更好的效能控制。簡(jiǎn)單來說就是畫面又好看、又不會(huì)卡。
但相對(duì)的,因?yàn)檫@是事先處理好的東西,所以只要烘焙的東西一被改變就會(huì)穿幫。比方說《漫威蜘蛛俠》里的高樓大廈,它的鏡面反射就是事先算好,所以如果你看得夠仔細(xì)的話,就會(huì)發(fā)現(xiàn)它的反射貼圖呈現(xiàn)的影像,跟實(shí)際在大樓對(duì)面的物體是完全不一樣的,在工地地板的水灘也可以穿透天花板看到天空的顏色,因此這算是一種有利也有弊的技術(shù)吧。
除了剛剛提到的三大方向之外,優(yōu)化當(dāng)然還有很多其他的種類。這三種只是比較經(jīng)常使用的方式罷了,其他像是游戲容量、發(fā)熱耗電量、集體占用量等方式,會(huì)根據(jù)開發(fā)平臺(tái)、游戲類型、美術(shù)風(fēng)格的不同,使用有其獨(dú)特的優(yōu)化方式。而且所謂的優(yōu)化并沒有一個(gè)絕對(duì)的標(biāo)準(zhǔn),不是說為了極限壓制效能,甚至不惜犧牲畫質(zhì)來獲得更高的回報(bào),試問如果廠家都把游戲壓縮在480P的分辨率,游戲是都能流暢運(yùn)行了,但你的眼睛答應(yīng)嗎?
因此,游戲優(yōu)化更多時(shí)候是在品質(zhì)和流暢度之間取得一個(gè)平衡,回歸一切的原點(diǎn),可以讓玩家順暢地游玩開發(fā)者的心血結(jié)晶,完全沉浸在他們所架構(gòu)出來的世界里。不用去過分在意游戲的載體,不用再為了畫質(zhì)、設(shè)定而反復(fù)斟酌,也不會(huì)因?yàn)槟牡魩黄葟挠螒蝮w驗(yàn)中抽離,讓好玩的游戲變得更加好玩,這才是游戲優(yōu)化最終的目的。
相關(guān)知識(shí)
為什么玩家總是執(zhí)著于游戲優(yōu)化?游戲優(yōu)化有什么用?
五人能玩什么游戲
win7怎么優(yōu)化游戲 win7游戲優(yōu)化教程
王者優(yōu)化玩家體驗(yàn),降低游戲存儲(chǔ),優(yōu)化穩(wěn)定性,從此告別460
返利的網(wǎng)頁(yè)游戲平臺(tái) 最大化收益玩游戲
游戲廠商為優(yōu)化體驗(yàn)而“偷懶” 花招迭出又不影響玩家
2024模擬經(jīng)營(yíng)游戲有什么 治愈的模擬經(jīng)營(yíng)游戲推薦
每天必須玩的游戲
在家早教陪孩子玩什么游戲?(適合陪孩子玩的早教游戲)
湊十游戲玩法
網(wǎng)址: 玩家們經(jīng)常說的“游戲優(yōu)化”,到底是什么? http://www.u1s5d6.cn/newsview1336913.html
推薦資訊
- 1發(fā)朋友圈對(duì)老公徹底失望的心情 12775
- 2BMI體重指數(shù)計(jì)算公式是什么 11235
- 3補(bǔ)腎吃什么 補(bǔ)腎最佳食物推薦 11199
- 4性生活姿勢(shì)有哪些 盤點(diǎn)夫妻性 10425
- 5BMI正常值范圍一般是多少? 10137
- 6在線基礎(chǔ)代謝率(BMR)計(jì)算 9652
- 7一邊做飯一邊躁狂怎么辦 9138
- 8從出汗看健康 出汗透露你的健 9063
- 9早上怎么喝水最健康? 8613
- 10五大原因危害女性健康 如何保 7826
- 西鈺休閑食品加盟 費(fèi)用 代理?xiàng)l件 招商電
- 線上研討助力居家心育 ——臨沂西郊實(shí)驗(yàn)學(xué)
- 科學(xué)防疫,“宅”趣無窮——西溪學(xué)??茖W(xué)科
- 玉淵潭中學(xué)居家學(xué)習(xí)健康小貼士
- 有哪些休閑游戲 放松身心的好選擇
- plus會(huì)員:美的(Midea) 10K
- PLUS會(huì)員、需搶券:LittleSwa
- plus會(huì)員:海爾(Haier)全自動(dòng)8
- 再降價(jià)、PLUS會(huì)員:LittleSwa
- 無縫連接健康服務(wù)!探索日照首個(gè)居家醫(yī)養(yǎng)云