Unity客戶端開發(fā)工程師的進(jìn)階之路

UWA技能成長(zhǎng)系統(tǒng)是UWA根據(jù)學(xué)員的職業(yè)發(fā)展目標(biāo),提供技能學(xué)習(xí)的推薦路徑,再將所需學(xué)習(xí)內(nèi)容按難易等多維度,設(shè)計(jì)分成多個(gè)學(xué)習(xí)階段,可以循序漸進(jìn)地進(jìn)行學(xué)習(xí)。

進(jìn)入技能成長(zhǎng)體系,目標(biāo)選擇高級(jí)客戶端開發(fā)工程師(Unity)即可開始學(xué)習(xí),初、中級(jí)的學(xué)習(xí)路徑我們也會(huì)盡快上線,以供更多的開發(fā)者們學(xué)習(xí)成長(zhǎng)。

高級(jí)客戶端開發(fā)工程師(Unity)目標(biāo)共設(shè)置了7個(gè)學(xué)習(xí)任務(wù),適合有一定Unity開發(fā)經(jīng)驗(yàn),想要進(jìn)一步學(xué)習(xí)Unity優(yōu)化技能的開發(fā)者,完成學(xué)習(xí)后,可以掌握游戲性能瓶頸定位的方法和常見的CPU、GPU、內(nèi)存相關(guān)的性能優(yōu)化方法。

Mission 1:定位性能瓶頸

學(xué)會(huì)使用常見的性能排查工具

能夠定位性能瓶頸來(lái)自CPU、GPU還是內(nèi)存

難度:1顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):3小時(shí)

目錄:

第一章:性能標(biāo)準(zhǔn)

1.1 耗時(shí)推薦值

1.2 內(nèi)存推薦值

1.3 渲染模塊推薦值

第二章:性能排查工具

2.1 Unity Profiler

2.2 Unity FrameDebugger

2.3 Mali Offline Compiler

2.4 XCode FrameDebugger

2.5 GOT Online

戳此進(jìn)入>>https://community.uwa4d.com/objective

Mission 2:內(nèi)存占用

掌握結(jié)合項(xiàng)目加載模塊耗時(shí)和內(nèi)存占用的實(shí)際情況制定合理策略的能力

掌握各種主要資源內(nèi)存的基礎(chǔ)知識(shí)和常見優(yōu)化手段

了解Mono堆內(nèi)存的常見問(wèn)題和排查方法

難度:1顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):3小時(shí)

目錄:

第一章:策略導(dǎo)致的內(nèi)存問(wèn)題

1.1 資源冗余

1.2 代碼生成的資源

1.3 加載和緩存策略

第二章:Gfx內(nèi)存

2.1 紋理資源

2.2 網(wǎng)格資源

2.3 Shader資源

第三章:Reserved Unity

3.1 Render Texture資源

3.2 動(dòng)畫資源

3.3 音頻資源

3.4 字體資源

3.5 粒子系統(tǒng)資源

第四章:托管堆內(nèi)存

4.1 Mono堆內(nèi)存具體分配

戳此進(jìn)入>>https://community.uwa4d.com/objective

Mission 3:動(dòng)畫模塊

了解Unity的兩種動(dòng)畫系統(tǒng)

能夠定位動(dòng)畫耗時(shí)的主要瓶頸

掌握Mecanim動(dòng)畫常見的優(yōu)化方案

難度:1顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):3小時(shí)

目錄:

第一章:Mecanim動(dòng)畫

1.1 Active Animator數(shù)量

1.2 Optimize Game Objects

1.3 Apply Root Motion

1.4 Compute Skinning

1.5 Animator.Initialize

第二章:Legacy動(dòng)畫

2.1 Animation.Sample

戳此進(jìn)入>>https://community.uwa4d.com/objective

Mission 4:物理模塊

掌握Contacts、物理更新次數(shù)、Rigidbody、 Collider等物理相關(guān)的基本概念

了解物理更新次數(shù)的影響因素和限制方法

掌握常見的替代物理模擬的優(yōu)化方案

掌握如何使用Profiler分析和確認(rèn)Contacts的數(shù)量

難度:1顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):3小時(shí)

目錄:

第一章:物理模塊耗時(shí)

1.1 Collision的產(chǎn)生

1.2 Trigger的替代方案

1.3 Physics Layer的設(shè)置

1.4 物理更新次數(shù)

1.5 Auto Simulation

1.6 RaycastCommand

第二章:物理模塊堆內(nèi)存

2.1 NonAlloc物理API

戳此進(jìn)入>>https://community.uwa4d.com/objective

Mission 5:UGUI

了解UGUI熱點(diǎn)函數(shù)的優(yōu)化

掌握UI的DrawCall優(yōu)化方法

了解UI模塊對(duì)于GPU產(chǎn)生的壓力

難度:2顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):3小時(shí)

目錄:

第一章:熱點(diǎn)函數(shù)

1.1 Canvas.SendWillRenderCanvases

1.2 BuildBatch & EmitWorldScreenspace CameraGeometry

1.3 SyncTransform

1.4 EventSystem.Update

第二章:DrawCall優(yōu)化

2.1 合并圖集

2.2 重疊打斷合批

2.3 Z!=0

戳此進(jìn)入>>https://community.uwa4d.com/objective

Mission 6:加載模塊

了解隸屬于加載模塊的耗時(shí)節(jié)點(diǎn)的原理和含義

掌握RUUA、Shader加載等常見耗時(shí)瓶頸的優(yōu)化方案

掌握AB加載、資源加載、資源實(shí)例化、對(duì)象顯隱等常見加載模塊API的使用場(chǎng)景

難度:2顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):5小時(shí)

目錄:

第一章:Loading.UpdatePreloading

1.1 Shader解析和編譯

1.2 Resources.UnloadUnusedAssets

1.3 異步加載優(yōu)先級(jí)

第二章:加載API

2.1 加載和卸載AssetBundle

2.2 加載和卸載資源

2.3 實(shí)例化和銷毀對(duì)象

2.4 激活和隱藏對(duì)象

戳此進(jìn)入>>https://community.uwa4d.com/objective

Mission 7:渲染模塊壓力定位

學(xué)會(huì)4種Batching方式

掌握Culling的優(yōu)化方法

掌握Overdraw的統(tǒng)計(jì)和優(yōu)化方法

掌握Shader復(fù)雜度的統(tǒng)計(jì)方法

難度:3顆星

預(yù)計(jì)學(xué)習(xí)時(shí)長(zhǎng):5小時(shí)

目錄:

第一章:渲染模塊CPU壓力

1.1 Batching

1.2 Culling

第二章:渲染模塊GPU壓力

2.1 GPU耗時(shí)

2.2 渲染面片數(shù)

2.3 Overdraw

2.4 后外理

2.5 Shader復(fù)雜度

戳此進(jìn)入>>https://community.uwa4d.com/objective


以上是技能成長(zhǎng)體系中的針對(duì)高級(jí)客戶端開發(fā)工程師的相關(guān)學(xué)習(xí)內(nèi)容,按學(xué)習(xí)任務(wù),一步步“升級(jí)打怪”,一定會(huì)有所收獲。

此外,還為大家整理了高級(jí)客戶端開發(fā)工程師的學(xué)習(xí)路徑,按難易度以及模塊進(jìn)行區(qū)分,并在對(duì)應(yīng)的知識(shí)點(diǎn)為大家推薦了課程,感興趣的讀者可以前往UWA學(xué)堂搜索查看~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容