基於Unity3d 引擎的Android遊戲優化

  1. 更新不透明貼圖的壓縮格式爲ETC 4bit,因爲android市場的手機中的GPU有多種,每家的GPU支持不同的壓縮格式,但他們都兼容ETC格式,
  2. 對於透明貼圖,我們只能選擇RGBA 16bit 或者RGBA 32bit。
  3. 減少FPS,在ProjectSetting-> Quality中的VSync Count 參數會影響你的FPS,EveryVBlank相當於FPS=60,EverySecondVBlank = 30;
    這兩種情況都不符合遊戲的FPS的話,我們需要手動調整FPS,首先關閉垂直同步這個功能,然後在代碼的Awake方法裏手動設置FPS(Application.targetFrameRate = 45;)

降低FPS的好處:
1)省電,減少手機發熱的情況;
2)能都穩定遊戲FPS,減少出現卡頓的情況。

  1. 當我們設置了FPS後,再調整下Fixed timestep這個參數,這個參數在ProjectSetting->Time中,目的是減少物理計算的次數,來提高遊戲性能。
  2. 儘量少使用Update LateUpdate FixedUpdate,這樣也可以提升性能和節省電量。多使用事件(不是SendMessage,使用自己寫的,或者C#中的事件委託)。
  3. 待機時,調整遊戲的FPS爲1,節省電量。

遇到麻煩時要調用“垃圾回收器”(Garbage Collector,無用單元收集程序,以下簡稱GC)
由於具有C/C++遊戲編程背景,我們並不習慣無用單元收集程序的特定行爲。確保自動清理你不用的內存,這種做法在剛開始時很好,但很快你就公發現自己的 分析器經常顯示CPU負荷過大,原因是垃圾回收器正在收集垃圾內存。這對移動設備來說尤其是個大問題。要跟進內存分配,並儘量避免它們成爲優先數

更多unity2018的功能介紹請到paws3d學習中心查找。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章