小遊戲掉幀卡頓啟動慢執行記憶體不足……這些問題有解嗎?
遊戲再好玩,一秒掉線兩秒卡頓可還行?
微信公開課講師開發工程師葉軒分享了這一年的優化效果:在小遊戲開發者和平臺的共同努力下,記憶體降低了7.7%,啟動耗時降低了46%,過濾限幀提高了9%。這幾個資料意味著什麼呢?
啟動效能
首先來看勸退優化第一步——啟動效能:
無須多言,對於塑料友誼的小遊戲玩家來說,啟動速度越快越好,慢則容易帶來流失。
如果一個小遊戲的啟動速度能夠從6.4s降到4.1s,流失人數可以減少17.4%,從4.1s降到3.3s,可減少21.8%。
“通過運營10年功,結果流失10秒鐘。”想要減少使用者流失,爭取到塑料玩家的塑料友情,你需要再快一點。
那麼具體可以怎麼優化呢?平臺給出了這樣幾個解決方案:
1. 資源預載入:
2. 分包:儘可能將資源分包,並縮小首包大小
3. 圖集:把零散的圖片整理成集,方便一次性下載
4. 加快首幀渲染;
5. 引擎外掛:
在平臺能覆蓋大多數小遊戲所用引擎的情況下,引擎外掛可以通過共享重複的引擎程式碼部分,減少玩家首次開啟需要下載的程式碼量讓玩家更快開啟小遊戲。
目前,小遊戲平臺已經實現主流引擎全面覆蓋,開發者只需前往所使用的引擎官網(目前已全面支援cocos、laya以及白鷺引擎)將所用的引擎更新到最新版本IDE,重新匯出並上傳即可。
| 接入門檻與效果:
只需花1分鐘接入,即可節省單遊戲1.5M的下載流量,提升1.14s的啟動速度,從而減少23%的使用者流失。目前,以及由351款小遊戲已接入引擎外掛。
執行效能
除了啟動效能,執行效能也是今年優化的重點:
1 邏輯與渲染優化
8月份推出的安卓端排查工具Start CPU Profile,可以幫助開發者檢驗小遊戲執行狀態,將所有邏輯進行一一記錄,快速排查小遊戲哪裡邏輯最耗時,知道哪裡邏輯最耗時之後再去做優化。
| 優化建議:
1. 儘量使用Worker;
2. 避免同步介面,使用非同步介面;
3. 減少過多區域性變數使用;
4. 使用SystemInfo.benchmarkLevel;
5. 使用混合渲染模式優化子域排行榜,可減少開放資料卡頓。
2 記憶體優化
可使用開發除錯介面:Take Heap Snapshot進行優化;
| 優化建議:
1. 調動wx.triggerGC()介面,可減少不必要的資源損耗;
2. 監聽wx.onMemoryWarning,解引用不必要的資源佔用,減少被系統殺掉的可能性;
3. 壓縮紋理;
2020年,即將推出的3D渲染效能提升介面,可以使高複雜性的遊戲在現有小遊戲平臺下提升300%以上的幀率,同時CPU佔用在30%以下,記憶體佔用也保持在安全範圍內,極大擴充高複雜性小遊戲的想象空間。
小遊戲這一年都有哪些新能力釋放?小遊戲執行記憶體該如何優化和雲測試有應當怎麼使用?
來源:做個小遊戲
原地址:https://mp.weixin.qq.com/s/L6LZDrt9KCO0B_o0LUs08Q
相關文章
- linux 記憶體管理 (一)這些問題,你都能解釋清楚嗎?Linux記憶體
- 調皮的記憶體抖動?前生今世及App解決卡頓慢記憶體APP
- 故障排除指南:MySQL執行記憶體不足怎麼辦?MySql記憶體
- Win10電腦外接螢幕出現卡頓掉幀問題的解決方法Win10
- win10記憶體不足會黑屏嗎_win10電腦記憶體不足黑屏了怎麼辦Win10記憶體
- JVM執行緒和記憶體溢位問題排查思路JVM執行緒記憶體溢位
- 微軟承認新 BUG:使用永續性記憶體的裝置會出現啟動緩慢問題微軟記憶體
- Java記憶體問題的一些見解Java記憶體
- macOS Monterey新問題:“記憶體洩漏”,應用後臺執行消耗上百 GB 記憶體Mac記憶體
- win10玩lol掉幀怎麼解決_win10lol掉幀卡頓的處理方法Win10
- Allowed memory size 記憶體不足記憶體
- Win10膝上型電腦外接螢幕介面出現卡頓、掉幀問題如何解決Win10
- iOS探索:UI檢視之卡頓、掉幀及繪製原理iOSUI
- Android GPU呈現模式原理及卡頓掉幀淺析AndroidGPU模式
- 電腦記憶體不足怎麼辦? 虛擬記憶體不足的解決辦法記憶體
- 兩塊磁碟,oralce執行慢的問題
- 拜託!別再問我多執行緒的這些問題了執行緒
- 【OpenCV】有關記憶體釋放的一些問題OpenCV記憶體
- win10記憶體不足怎麼解決_win10記憶體不足怎麼辦Win10記憶體
- zsh powerlevel10k 開啟git大工程時 慢/卡頓問題解決Git
- win10系統玩遊戲卡頓掉幀的解決方法Win10遊戲
- 記一次docker容器啟動/關閉,非常慢的問題Docker
- SQLServer記憶體問題分析SQLServer記憶體
- 探究 iOS 記憶體問題iOS記憶體
- 共享記憶體分段問題記憶體
- 記憶體溢位問題記憶體溢位
- "跟卡頓說拜拜" 想買大記憶體手機看這裡記憶體
- Java 執行緒記憶體模型Java執行緒記憶體模型
- 設定SQLserver執行記憶體SQLServer記憶體
- c盤記憶體不足會影響絕地求生閃退嗎_c盤記憶體不足影響絕地求生閃退解決方法記憶體
- 如果有人給你撕逼Java記憶體模型,就把這些問題甩給他Java記憶體模型
- 遊戲包體太大,記憶體不足?Unity貼圖壓縮注意這幾點遊戲記憶體Unity
- 解決SqlServer執行指令碼,檔案過大,記憶體溢位問題SQLServer指令碼記憶體溢位
- 例子:酒店列表滑動記憶體增大的問題記憶體
- 4g記憶體的電腦能裝win10嗎_4g記憶體執行win10卡嗎記憶體Win10
- 幀動畫記憶體OOM?不存在的!—— SurfaceView逐幀解析動畫記憶體OOMView
- 英雄聯盟掉幀解決辦法win10 win10玩lol間歇性掉幀卡頓解決教程Win10
- vertica記憶體不足的解決方案記憶體