Unity 代码注意问题、性能优化

it2024-12-27  10

今天在网上搜了一些代码性能优化方面的知识:

1、放置内存泄漏,在架构上可以灵活使用abstract,并注意自己写的代码

2、严格控制static的使用

3、SendMessage()、BroadcastMessage();他们使用了反射,造成高开销,可以考虑使用 事件 和 委托 代替。

4、用 协程 替代 Invoke、InvokeRepeating invoke也是使用了反射来实现,可以使用协程替代。

5、脚本中没有必要的空回调函数:继承于Mono的 Start()、Update()、FixedUpdate() 等。

6、Camera.main与**Find()**方法类似,应该避免重复使用,可以缓存下来,在使用用时调用。

7、数组集合遍历使用for,字典使用foreach。

8、对象池: 将重复使用的某一类对象用对象池进行管理

9、大量的字符串拼接 避免使用 “+”,用StringBuilder替代。

10、某块代码必须在update中执行,如果没有必要每帧都执行,可以如下代码

void update() { //每隔3帧调用一次 if ( Time.frameCount % 3 == 0 ) { //需要调用的代码 } }

11、在Update、OnGUI等函数中,尽量少使用临时变量

12、大量的数学运算中,可以将除法改为乘法:x=y/2; 改为:x=y*0.5f;

养成写代码时的好习惯

-------------------------------持续更新----------------------------

最新回复(0)