感觉目前主要的全局优化策略大致就是题主写到的了……我简单补充一下吧
游戏优化的根本目标是让玩家觉得不卡,表现在量化角度就是平均帧率稳定在30帧以上。这需要从逻辑、表现等多方面进行优化。
1. 采用优化组件。有一些针对游戏进行优化的组件或者策略,确实能使游戏效率提高不少。比如我依稀记得天涯明月刀OL使用了math+visibility还是什么的组件……
2. 采用多线程处理。理论上引擎中的coroutine并不是多线程,而是运行在主线程中的协程,但是依然可以提高游戏效率。一般heavy task就开个协程或者线程处理吧……
3. 尽可能用最优算法。for,while,foreach都是循环,哪种效率最高?虽然看上去改变算法只能提高零点几毫秒甚至更低的运行时间,但带来的效率提升是成倍的。比如从1到100的累加,能用等差数列求和就绝不用循环累加。虽然CPU不会在乎这一点优化,但我有一位导师说得好:CPU应当是为用户服务的,而不是程序员。所以我们要把能做的都做到。
2. 采用多线程处理。理论上引擎中的coroutine并不是多线程,而是运行在主线程中的协程,但是依然可以提高游戏效率。一般heavy task就开个协程或者线程处理吧……
3. 尽可能用最优算法。for,while,foreach都是循环,哪种效率最高?虽然看上去改变算法只能提高零点几毫秒甚至更低的运行时间,但带来的效率提升是成倍的。比如从1到100的累加,能用等差数列求和就绝不用循环累加。虽然CPU不会在乎这一点优化,但我有一位导师说得好:CPU应当是为用户服务的,而不是程序员。所以我们要把能做的都做到。