大家在玩游戲的時候可能經(jīng)常會遇到卡頓,延遲,死機,不流暢等等問題,那么這些問題是怎么引起的呢?如何去盡量的減少這些情況的發(fā)生呢?這些問題對于游戲開發(fā)者來說是必須要面對的問題, 也是必須要解決的問題。
上面我們例舉在游戲運行的過程中可能會遇到的一些問題, 每種問題引起的原因有很多多,但是我們可以從大方向?qū)φw游戲進行優(yōu)化,使游戲整體性能更優(yōu),從而減少這些情況的發(fā)生。對于性能優(yōu)化我們大體可以從四個大方向去優(yōu)化,即:CPU,GPU, 內(nèi)存以及網(wǎng)絡和IO,下面給大家一一講解:
CPU優(yōu)化,在游戲中CPU主要分擔著運算的責任,因此像短時間大量的計算從而導致畫面不流暢,電量消耗大,發(fā)熱嚴重等情況都可能是因為CPU導致的。針對這些情況我們就需要對CPU優(yōu)化,那么CPU的優(yōu)化說白了就是對運算的優(yōu)化,大家應該盡量減少大量運算或者短時間的大量運算,對此大家可以從四方面著手。一是將計算分散到多個邏輯中,減少短時間的大量運算。二是將可以緩存的數(shù)據(jù)盡量緩存起來,從而避免那些重復的計算。三是減少CPU對資源的申請、銷毀與調(diào)配。四是使用合理的算法和數(shù)據(jù)結(jié)構,這個也是CPU優(yōu)化中最重要的。
GPU優(yōu)化,GPU的職責就是負責游戲中所有的圖像、特效的渲染。GPU的消耗過高會導致游戲畫面卡頓、畫質(zhì)降低、手機發(fā)熱等情況,嚴重影響游戲體驗。對于游戲來講這是致命的。關于CPU優(yōu)化大家可以從以下幾方面入手:
1、資源優(yōu)化,比如合理規(guī)劃圖集,指定合理的粒子效果,約定模型的三角面數(shù)
2、簡化著色器,使用多級紋理與材質(zhì)貼圖技術相結(jié)合
3、使用LOD技術、遮擋剔除等技術,減少GPU繪制的數(shù)量
4、針對不同的系統(tǒng)平臺使用對應的壓縮格式。
5、優(yōu)化顯存帶寬
游戲渲染可以說是游戲的心臟,所以GPU的優(yōu)化顯得尤為重要,需要開發(fā)者格外的重視
內(nèi)存優(yōu)化,內(nèi)存的功能我就不多介紹了, 相信大家都了解。由于內(nèi)存不足所導致的問題有閃退,卡死等。對于內(nèi)存的優(yōu)化,一是降低資源的大小,比如剔除不需要的資源、對資源進行壓縮等;二是及時動態(tài)的加載和卸載資源,這樣可以大大的減少瞬時內(nèi)存的壓力,減少因內(nèi)存浪費而給游戲帶來不必要的消耗。三是降低資源的質(zhì)量,這是一種有損的優(yōu)化,不到最后一般不用,當然我們也可以根據(jù)不同的設備使用不同質(zhì)量的資源,將損失降到最低。
網(wǎng)絡和IO優(yōu)化, 他們主要負責資源的加載, 可能是網(wǎng)絡的或者本地的。網(wǎng)絡不好,或者資源加載時間過長會讓大大降低用戶體驗。因此在CPU、GPU、內(nèi)存優(yōu)化后我們同時也不能忽略網(wǎng)絡與IO優(yōu)化,對于網(wǎng)絡與IO的優(yōu)化,大家可以從以下幾方面入手:
1、限制短時間內(nèi)的發(fā)包率
2、合理優(yōu)化包大小,減少包的冗余數(shù)據(jù),降低網(wǎng)絡請求次數(shù)
3、對回包進行分幀處理,及時響應
4、使用獨立線程、協(xié)程等手段優(yōu)化資源加載。
>>本文地址:http://uj2y2uok.com/zhuanye/2020/48604.html
聲明:本站稿件版權均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?