预制体prefab加载
1:prefab这块的加载优化主要集中在两个地方:一个是load加载耗时优化,另一个是实例化耗时优化。
2:加载的prefab越小,那么加载的速度越快,耗时越少,所以当预制体过大(推荐预制体不超过200kb,最好功能单一化来进行拆分),进行适当的拆分。
3:将需要用到的prefab动态加载到场景中,场景只保留重要的节点(如背景图与按钮等节点)
资源批量加载
1:有时需要大量生成节点或者prefab,这些在生成时不进行优化,很容易造成瞬间的内存飙升,从而带来游戏感受上的卡顿。个人认为遇到这种情况时可以使用对象池来解决(反复创建销毁是一个内存反复分配与释放的过程,很容易产生内存碎片)
图集
最好对所有的碎图资源进行图集合并(Creator自带一个自动图集合并工具),并且最大限度填满图集,不要留有太多空白。图集的大小尽可能限制在1024*1024以下。另外,对于显示效果要求不高的界面,可以适当降低图片的尺寸。
性能优化
1、游戏中频繁更新的文字,推荐使用BMFont,系统字体会比较消耗性能。
2、优化Drawcall,尽可能减少Drawcall数量。
3、减少Mask组件的使用,该组件会导致游戏中的Drawcall数量变多。
4、禁用引擎的culling,禁用方法cc.macro.ENABLE_CULLING = false。
5、如果使用物理引擎,可以把物理引擎的step间隔调大。
6、优化节点树,减少节点数量。
7、场景中不要挂载过多的Prefab,可适当将一些Prefab变成动态加载的。