一、記憶體:
資源優化:
紋理:read/write、
對於ui和一些不需要遠近處理的紋理關閉mipmap
紋理的分辨力率盡量小,夠用就好的原則
盡量採用硬體支援格式,安卓(etc1、etc2),ios(pvrtc)
.ios
平台使用pvrt壓縮紋理。adroid平台使用etc1格式壓縮。均可以減至1/4的記憶體大小。優化非常明顯。
目前主流的android機型基本都支援etc1格式壓縮。但etc1只能支援非alpha通道的壓縮。所以一般把alpha通道圖分離出來,繪製到gpu視訊記憶體時,a值從alpha圖里獲取,無alpha通道的圖就可以使用etc1壓縮。
而etc2以上的格式壓縮雖然支援含alpha通道的,但是支援的機型還比較少。目前不推薦使用。
詳情見:
網格:頂點、三角麵片數量、頂點屬性(pos、tangent、color、uv)少,頂點屬性不同的,不要合併批次處理,關閉不必要的read/write功能關閉。既可以提公升載入效率,又可以大幅度降低記憶體占用
動畫:幀壓縮
二、渲染
uv動畫代替粒子
lodoculos culling
三、物理
mesh colider
盡量使用程式碼模擬物理,少使用真實物理
四、程式碼層面
物件池update中避免複雜計算,確實需要可以隔n幀計算一次。避免findwithtag、getcomponent、comparewithtag
避免使用字串相加,會頻繁gc,使用stringbulder
總覽:空間換時間的優化:lod、批處理
Unity移動端優化總結
模型面數和頂點數的控制 unity這邊沒辦法控制.就需要和做三維的同事交流好 指令碼新建的指令碼缺省會建立出update函式.在不需要用到的情況下可以刪掉 盡量不要在update函式中做複雜運算,盡量不要在update函式中使用find,getcomponent這類的呼叫 只在乙個指令碼中使用ong...
Unity 優化方面的總結
其中textasset並不是真正意義上的text,而是編譯好的dll檔案,是以binary形式存在的。參考官方文件 text asset 中的 binary data 一節 發布包的美術資源加密 對於所有平台,最常見的是對貼圖進行加密,通過assetbundle和textasset來實現。程式發布後...
Unity優化總結雜篇(二)
一 unity vsync 參考文章 本文僅做記錄,具體思路可以參考原作者描述 安卓系統中有 2 種 vsync 訊號 螢幕產生的硬體 vsync 和由 su ceflinger 將其轉成的軟體 vsync 訊號。後者經由 binder 傳遞給 choreographer。關閉vsync 採用單快取...