先說一下好處和原理:
如果用unity自帶的gui處理,需要在ongui() 中每個迴圈呼叫gui.begingroup、 gui.drawtexture、textfilter.drawoutline 之類的**,有很高的記憶體開銷。
ngui 不只是僅僅用於拼接ui,這裡主要是去掉ngui上的uicamera,使用maincamera控制顯示。此時的ngui需要繫結在角色身上,如圖:
角色裡面建立乙個object,設定y軸座標,通常角色頭頂高一點。這樣就繫結完畢。
在lateupdate中呼叫
//mworldposition 繫結角色的那個object
//mcachedtrans nugi的object
vector3 screenpos = camera.main.worldtoscreenpoint(mworldposition);
vector3 uiworldpos = muicamera.screentoworldpoint(screenpos);
mcachedtrans.position = uiworldpos;
mcachedtrans.rotation = muicamera.transform.rotation;
最後看效果:
unity移動端記憶體優化 NGUI
做3d移動端 記憶體一直是人們頭疼的問題,載入的資源釋放了,還有其他的需要釋放,比如 ngui 釋放,其實主要是 ngui 的texture和sprite釋放,如果你指令碼程式沒用到 ngui 組建的引用的話,切換場景後第一時間呼叫 resources.unloadunusedassets 就會釋放...
unity移動端記憶體優化 NGUI
做3d移動端 記憶體一直是人們頭疼的問題,載入的資源釋放了,還有其他的需要釋放,比如 ngui 釋放,其實主要是 ngui 的texture和sprite釋放,如果你指令碼程式沒用到 ngui 組建的引用的話,切換場景後第一時間呼叫 resources.unloadunusedassets 就會釋放...
Unity複習 四 UGUI與NGUI
一 ngui與ugui常用元件比較 元件樣式如下 二 細節對比 ngui根據depth的大小,ugui根據在層次面板上的先後順序。如上圖中文字與的渲染順序,ngui中sprite的depth為0,label為1,label後渲染,顯示在sprite的上方 ugui層次面板中,text在image的上...