Unity3D培訓(xùn):MMORPG游戲優(yōu)化經(jīng)驗(yàn)分享(二)
來源:
奇酷教育 發(fā)表于:
奇酷教育-unity3D培訓(xùn)_unity3D游戲_unity3D教程
Unity3D培訓(xùn):MMORPG游戲優(yōu)化經(jīng)驗(yàn)分享(二)。在優(yōu)化
Unity3d游戲時(shí),我們一般從四個(gè)方面:CPU、GPU、內(nèi)存、工程配置等入手,它們都可能是影響游戲性能瓶頸的關(guān)鍵。
頂點(diǎn)數(shù)量的控制,首先要從美術(shù)方面,控制模型的合理面數(shù)。有的建筑物被遮擋了一部分,被遮擋部分可以減面甚至把這一塊摳掉留空。避免場景中出現(xiàn)大量小物體組合出一個(gè)更大的物件,設(shè)計(jì)之初就對(duì)零散物體合并材質(zhì)、貼圖、Mesh。場景地圖也可以分區(qū)塊制作、加載管理,同時(shí)配合LODGroup使用。還可以通過第三方插件Mesh Baker LOD輔助進(jìn)行。
紋理的尺寸會(huì)影響上傳紋理時(shí)帶寬的使用,也就是上傳耗時(shí)比較高。通常
3D模型的紋理,都會(huì)把打開Mipmap,可以提高紋理采樣的質(zhì)量,降低命中耗時(shí),提升IO速度。同時(shí)紋理過濾模式的選擇,對(duì)于UI紋理使用Bilinear足矣,Trilinear配合打開Mipmap后的插值計(jì)算,效果更好。
當(dāng)一個(gè)角色帶有一對(duì)翅膀,設(shè)置Mesh.alpha進(jìn)行隱藏或顯示,翅膀在Alpha=0時(shí),依然被渲染。而顯示全屏UI時(shí),它擋住了后面的主場景,但由于場景Camera未關(guān)閉使得場景依然被渲染,如果此時(shí)UI里還顯示角色模型,積累的渲染壓力就比較大,這些都會(huì)體現(xiàn)在Overdraw消耗上。
根據(jù)對(duì)Shader的功能需求,對(duì)復(fù)雜度要進(jìn)行控制。運(yùn)算符要合理使用,變量的浮點(diǎn)精度要同時(shí)考慮計(jì)算需求和真機(jī)的實(shí)際支持的精度范圍。對(duì)Tex2D、紋理采樣的使用方式要合理,畢竟這類指令過多時(shí)會(huì)增加開銷。
Unity3d引擎自帶的Terrian系統(tǒng),可以通過分區(qū)塊或者轉(zhuǎn)為Mesh解決此部分性能瓶頸。我們可以通過插件Terrain Slicing & Dynamic Loading Kit來分割地形,并調(diào)整地形的尺寸和精度等配置參數(shù)。
一個(gè)特效包含粒子發(fā)射器的數(shù)量不能隨意創(chuàng)建,對(duì)渲染和內(nèi)存都有不小的負(fù)載。當(dāng)粒子存在發(fā)射Mesh的需要時(shí),要控制Max Particles的數(shù)量。同時(shí)有些特效不一定要通過粒子系統(tǒng)實(shí)現(xiàn),可以通過各種變通方式或低負(fù)載的方式制作。
以上就是
奇酷為大家分享的“Unity3D培訓(xùn):MMORPG游戲優(yōu)化經(jīng)驗(yàn)分享(二)”謝謝大家觀看,如果對(duì)unity3D感興趣的話,想學(xué)
unity3D培訓(xùn)的,也可以在線咨詢,我們將竭誠為你解答。