博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于Unity3d 引擎的Android游戏优化
阅读量:6177 次
发布时间:2019-06-21

本文共 779 字,大约阅读时间需要 2 分钟。

原文地址:http://blog.csdn.net/jixuguo/article/details/9018669

近期项目进入收尾阶段,之前对项目做了非常多优化,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,节省电量。

你可能感兴趣的文章
Exchange server 2013 SP1 客户端会议室邮箱自动回复延迟
查看>>
nginx反向代理缓存服务器构建
查看>>
RHEL6 搭建LVS/DR 负载均衡集群 案例
查看>>
以太坊·Rinkeby 测试网络
查看>>
字符串按规则排序算法
查看>>
MPLS + BGP高级特性
查看>>
plist文件读写操作
查看>>
oracle resetlogs和noresetlogs 创建控制文件区别
查看>>
2013-7-17学习作业练习
查看>>
ZAM 3D入门教程(4):Extrusion编辑器
查看>>
《深入实践Spring Boot》一第2章 在Spring Boot中使用数据库2.1 使用MySQL
查看>>
C++语言基础 例程 字符串类
查看>>
堆排序
查看>>
Java的热部署(后期完善)
查看>>
css总结
查看>>
Python学习笔记之六:在VS中调用Python
查看>>
node.js获取参数的常用方法
查看>>
jquery 的 change() 方法的使用
查看>>
本地计算机上的XXX服务启动后又停止了
查看>>
<s:iterator>标签迭代数据不显示
查看>>