包体优化
- 删除无用代码
- 定期清理,删除重复和未引用的资源
- 压缩音效文件,尽可能少占用空间
- 资源尽量放到res目录下。因为resources目录下的每个文件都会生成一个json,构建导出时,把资源映射关系存到Settings.js中,导致setting.js变大,所以,不是代码动态加载的资源,千万别放到resources目录下。另外为了防止缓存问题,构建时通常使用md5,此时Settings.js文件会进一步膨胀。
- 对于图片资源,尽量让美术人员出图时就压缩好。如果使用了Creator的自动图集功能,最好在构建后用TinyPNG把这些合成大图再压缩一遍。有个问题是
Creator2.0
开始构建后文件都是uuid命名,可以用Creator官方插件找出它们的对应关系,再用脚本分析出哪些是自动图集生成的,之后再压缩这些图即可。
性能优化
- 多个Label尽量相邻放在同一个节点下,可合并DrawCall。
- 九宫格Sprite和艺术数字图片即使同一层次,也不能合并DrawCall。
- Prefab的性能消耗主要在
cc.instaniate
和addChild
。 - 减小节点层级和数量。如果是重复多次使用的节点,一定要使用对象池,并且Prefab记得勾选“优化多次创建性能”这个选项
WKWebView
iOS开放了WKWebView
,具有一定的JIT支持,有助于提升游戏性能,如果游戏需要打包成h5版本接入到App,推荐