CPU优化主要关注“卡顿”的帧,即CPU耗时较长的帧。关于CPU优化有一下几点建议:
1. Unity中利用控制台输出是非常占用CPU的,无论是Debug.Log()还是print()。生成的程序在应用时依旧会输出日志,因此程序正式发布时,一定不要包含控制台输出。
2. 良好的代码习惯:
2.1 尽量减少使用GameObject.Find等搜索方法。
2.2 频繁使用的变量不应定义为临时变量。
2.3 只在唤醒的方法中使用GetComponent()方法并储存,而不是每次使用时都重新获取组件。
2.4 频繁调用的循环逻辑不要每次都获取数组长度,而是将其储存在变量中
2.5 尽量少使用SendMessage()方法,此效率较低。可以直接调用方法或使用C#的委托(delegate)
3. 将资源的读取和释放的步骤放在Loading界面。也可将较大的资源拆分成小的模块分批加载,这样可以分散CPU对硬盘的读取速度,降低峰值。
4. 减少粒子系统的使用,或使粒子的数量尽可能少,因为粒子运动的计算对CPU来说是一个不小的负担。
5. 减少物理组件的应用,尽量不适用网格碰撞器(Mesh Collider)
6. 降低DrawCall,优化的意义在于解放了CPU在调用图形接口上的开销。
在线客服
客服咨询
官方微信
返回顶部