接上篇:
4、Enum:枚举当Key使用或枚举转换为String,都会有GC
5、闭包:函数和与其相关的引用环境组合成的实体。闭包IL代码会出个新类,频繁调用一个函数时,尽量不用。
6、其他
1>update中没必要每帧的。
2>不要常使用find,在start中缓存。
3>使用内建数值,比如Vector3.zero而不是new Vector3(0, 0, 0);
4>主线程同步加载资源会瞬卡,异步加载;
5>逻辑裁剪;
6>对象回收复用,对象池;
7>LOD:根据不同目标平台制订资源规则:主角用高,其他玩家中低;特效自动处理成H,M,L三版本;
8>meshcollider换为boxcollider
9>场景中模型减面,减少内存
10>避免频繁的调用SetActive,减少CPU消耗,因为有些空间比如NGUI在active为false时也会运行。可以移动到其他位置再移动回来或者设置scale为0。(CPU)
.......
(上面会持续更新一些优化中的细节)
优化流程: 测量---分析---优化---验收
优化工具:Unity Profiler, Adreno Pr