unity3d android 优化

最近项目进入收尾阶段,以前对项目作了不少优化,mesh合并 ,减小DrawCall和模型骨骼以及物理计算,合并材质球,优化代码等等,在IOS上还好,可是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,减小出现卡顿的状况。

  4. 当咱们设置了FPS后,再调整下Fixed timestep这个参数,这个参数在ProjectSetting->Time中,目的是减小物理计算的次数,来提升游戏性能。

  5. 尽可能少使用Update LateUpdate FixedUpdate,这样也能够提高性能和节省电量。多使用事件(不是SendMessage,使用本身写的,或者C#中的事件委托)。

  6. 待机时,调整游戏的FPS为1,节省电量。html

相关文章
相关标签/搜索