Unity3D移動端記憶體優化(NGUI方面)

2021-09-08 11:32:38 字數 536 閱讀 6268



做3d移動端記憶體一直是人們頭疼的問題,載入的資源釋放了,還有其它的須要釋放。比方ngui釋放,事實上主要是ngui的texture和sprite釋放,假設你指令碼程式沒用到ngui組建的引用的話,切換場景後第一時間呼叫

resources.unloadunusedassets ();

就會釋放掉。

可是假設你指令碼程式用到ngui的組建的時候。比方直接拖到指令碼上的物體。或者find的物體,等,僅僅要引用ngui的組建,它就會加到記憶體中。切換場景也不會釋放。resources.unloadunusedassets ();也不會釋放。你要結束的時候刪除這些引用,就會釋放掉了

我引用ios的思想去釋放的,寫了個dealloc方法

在你的指令碼之間互動類中寫

void dealloc()

resources.unloadunusedassets ();

system.gc.collect ();

}就能夠釋放掉,對移動端大有優點,我從之前的130mb記憶體,優化到如今的50mb左右,非常是穩定。



Unity 3D 優化記憶體

什麼是mipmap?mipmap旨在有效降低渲染頻寬的壓力,提公升遊戲的渲染效率。但是,開啟mipmap會將紋理記憶體提公升1.33倍。對於具有較大縱深感的3d遊戲來說,3d場景模型和角色我們一般是建議開啟mipmap功能的,但是在我們的測評專案中,經常會發現部分ui紋理也開啟了mipmap功能。這...

Unity3D 效能優化

unity3d 效能優化 一 程式方面 01 務必刪除指令碼中為空或不需要的預設方法 02 只在乙個指令碼中使用ongui方法 03 避免在ongui中對變數 方法進行更新 賦值,輸出變數建議在update內 04 同一指令碼中頻繁使用的變數建議宣告其為全域性變數,指令碼之間頻繁呼叫的變數或方法建議...

Unity3D常用移動方法

一 向量相加減控制移動 transform.position transform.forward time.deltatime 5f 二 translate控制移動 transform.translate vector3.forward time.deltatime 5f 三 差值控制移動 當前位置...