自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

六要點(diǎn)實(shí)現(xiàn)Unity3D開(kāi)發(fā)性能優(yōu)化

開(kāi)發(fā) 游戲開(kāi)發(fā)
本文將為大家介紹Unity3D開(kāi)發(fā)性能優(yōu)化的六個(gè)要點(diǎn),供各位游戲開(kāi)發(fā)者參考。

 1、頂點(diǎn)性能

一般來(lái)說(shuō),如果您想在iPhone 3GS或更新的設(shè)備上每幀渲染不超過(guò)40,000可見(jiàn)點(diǎn),那么對(duì)于一些配備 MBX GPU的舊設(shè)備(比如,原始的 iPhone,如 iPhone 3g和 iPod Touch第1和第2代)來(lái)說(shuō),你應(yīng)該保證每幀的渲染頂點(diǎn)在10000以下。

2、光照性能

像素的動(dòng)態(tài)光照將對(duì)每個(gè)受影響的像素增加顯著的計(jì)算開(kāi)銷(xiāo),并可能導(dǎo)致物體會(huì)被渲染多次。為了避免這種情況的發(fā)生,您應(yīng)該避免對(duì)于任何單個(gè)物體都使用多個(gè)像素光照,并盡可能地使用方向光。需要注意的是像素光源是一個(gè)渲染模式(Render Mode)設(shè)置為重要(Important)的光源。像素的動(dòng)態(tài)光照將對(duì)頂點(diǎn)變換增加顯著的開(kāi)銷(xiāo)。所以,應(yīng)該盡量避免任何給定的物體被多個(gè)光源同時(shí)照亮的情況。對(duì)于靜態(tài)物體,采用烘焙光照方法則是更為有效的方法。

3、角色

每個(gè)角色盡量使用一個(gè)Skinned Mesh Renderer,這是因?yàn)楫?dāng)角色僅有一個(gè) Skinned Mesh Renderer 時(shí), Unity 會(huì) 使用可見(jiàn)性裁剪和包圍體更新的方法來(lái)優(yōu)化角色的運(yùn)動(dòng),而這種優(yōu)化只有在角色僅含有一個(gè) Skinned Mesh Renderer 時(shí)才會(huì)啟動(dòng)。角色的面數(shù)一般不要超過(guò)1500,骨骼數(shù)量少于30就好,角色Material數(shù)量一般1~2個(gè)為最佳。

4、靜態(tài)物體

對(duì)于靜態(tài)物體定點(diǎn)數(shù)要求少于500,UV的取值范圍不要超過(guò)(0,1)區(qū)間,這對(duì)于紋理的拼合優(yōu)化很有幫助。不要在靜態(tài)物體上附加Animation組件,雖然加了對(duì)結(jié)果沒(méi)什么影響,但是會(huì)增加CPU開(kāi)銷(xiāo)。

5、攝像機(jī)

將遠(yuǎn)平面設(shè)置成合適的距離,遠(yuǎn)平面過(guò)大會(huì)將一些不必要的物體加入渲染,降低效率。另外我們可以根據(jù)不同的物體來(lái)設(shè)置攝像機(jī)的遠(yuǎn)裁剪平面。Unity 提供了可以根據(jù)不同的 layer 來(lái)設(shè)置不同的 view distance ,所以我們可以實(shí)現(xiàn)將物體進(jìn)行分層,大物體層設(shè)置的可視距離大些,而小物體層可以設(shè)置地小些,另外,一些開(kāi)銷(xiāo)比較大的實(shí)體(如粒子系統(tǒng))可以設(shè)置得更小些等等。

6、DrawCall

盡可能地減少 Drawcall 的數(shù)量。 IOS 設(shè)備上建議不超過(guò) 100 。減少的方法主要有如下幾種: Frustum Culling , Occlusion Culling , Texture Packing 。 Frustum Culling 是 Unity 內(nèi)建的,我們需要做的就是尋求一個(gè)合適的遠(yuǎn)裁剪平面; Occlusion Culling ,遮擋剔除, Unity 內(nèi)嵌了 Umbra ,一個(gè)非常好 OC 庫(kù)。但 Occlusion Culling 也并不是放之四海而皆準(zhǔn)的,有時(shí)候進(jìn)行 OC 反而比不進(jìn)行還要慢,建議在 OC 之前先確定自己的場(chǎng)景是否適合利用 OC 來(lái)優(yōu)化; Texture Packing ,或者叫 Texture Atlasing ,是將同種 shader 的紋理進(jìn)行拼合,根據(jù) Unity 的 static batching 的特性來(lái)減少 draw call 。建議使用,但也有弊端,那就是一定要將場(chǎng)景中距離相近的實(shí)體紋理進(jìn)行拼合,否則,拼合后很可能會(huì)增加每幀渲染所需的紋理大小,加大內(nèi)存帶寬的負(fù)擔(dān)。這也就是為什么會(huì)出現(xiàn)“ DrawCall 降了,渲染速度也變慢了”的原因。

原文鏈接:http://www.unitymanual.com/6572.html

【編輯推薦】

責(zé)任編輯:彭凡 來(lái)源: Unity3D教程手冊(cè)
相關(guān)推薦

2023-09-11 16:54:17

谷歌開(kāi)發(fā)

2013-04-25 09:56:24

unity3D手機(jī)游戲引擎

2013-02-20 13:37:54

Android開(kāi)發(fā)性能

2013-04-25 10:03:07

unity3D手機(jī)游戲引擎

2017-11-06 14:33:54

Web開(kāi)發(fā)服務(wù)器網(wǎng)絡(luò)

2011-12-01 09:00:12

Android提升開(kāi)發(fā)性能要點(diǎn)

2013-04-25 09:08:39

unity3D手機(jī)游戲引擎

2010-07-12 17:28:17

SharePointVS 2010

2013-04-25 13:27:11

unity3D手機(jī)游戲引擎

2015-05-04 09:48:44

JavaJava開(kāi)發(fā)調(diào)試工具

2009-09-27 14:04:00

Web應(yīng)用開(kāi)發(fā)性能

2012-12-24 09:11:58

iOSUnity3D

2012-12-24 08:45:19

iOSUnity3D

2012-12-24 09:20:48

AndoidUnity3D

2013-04-09 13:42:23

Unity3D基礎(chǔ)知識(shí)梳理

2013-04-25 00:06:06

unity3D手機(jī)游戲引擎

2013-04-25 09:47:54

unity3D手機(jī)游戲引擎

2013-06-19 08:52:48

Unity3D

2013-04-25 10:40:32

unity3D手機(jī)游戲引擎

2013-04-25 10:12:02

unity3D手機(jī)游戲引擎
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)