Unity官網(wǎng)針對(duì)ISO游戲的優(yōu)化建議
來源:
奇酷教育 發(fā)表于:
奇酷教育-unity3D培訓(xùn)_unity3D游戲_unity3D教程
Unity官網(wǎng)針對(duì)ISO游戲的優(yōu)化建議。盡量控制定點(diǎn)數(shù)量(注意所謂頂點(diǎn)不是建模時(shí)的頂點(diǎn),而是引擎渲染時(shí)的頂點(diǎn)。例如,模型一個(gè)頂點(diǎn)如果設(shè)置了2個(gè)法向,那么對(duì)引擎來說就是2個(gè)頂點(diǎn)) :
對(duì)Iphone3或更高設(shè)備,每幀渲染的頂點(diǎn)不超過4萬個(gè)
對(duì)更早的設(shè)備,每幀渲染的頂點(diǎn)不超過1萬個(gè)
場景所用的材質(zhì)盡量減少。即使是不同的物件,也盡量采用同一個(gè)材質(zhì)。
將固定的場景物件設(shè)置為靜態(tài)(static)。
盡量使用PVRTC(這是Apple推薦的一種格式)紋理,不行的話,也盡量用16位紋理取代32位的。
不要在shader中使用multi-pass,通過用混合或者像素shader來合并不同的紋理以達(dá)到相同效果。
如果自行編寫shader,盡量避免使用浮點(diǎn)數(shù)。下面是建議的類型:
half/mediump——適用于紋理UV
float/highp——避免在像素shader里使用,可以在頂點(diǎn)shader里面用于計(jì)算頂點(diǎn)位置
在像素shader中盡量少用復(fù)雜的數(shù)學(xué)計(jì)算,例如冪函數(shù)、三角函數(shù)等。
沒必要的話不要使用像素光照(Pixel Lights)
不要使用動(dòng)態(tài)光照,用烘焙的lightmap
不要使用alpha測試,用alpha混合來代替
不要使用霧
大場景中使用Occlusion culling來削減不可見區(qū)域。關(guān)卡設(shè)計(jì)時(shí)考慮到實(shí)施 Occlusion culling 的便利性
使用sky box 來實(shí)現(xiàn)遠(yuǎn)景更多ISO優(yōu)化相關(guān)教程:
Unity3D教程:ISO系統(tǒng)性能與腳本的優(yōu)化