Unity 脚本优化

Unity中的脚本优化关键在于选择正确的优化方法。避免在FixedUpdate中执行非必要的代码,理解FixedUpdate与Update的区别,避免频繁使用Find系列函数,初始化时定义游戏对象引用,利用Coroutines和InvokeRepeating进行非每帧执行的逻辑,减少临时变量的使用,并在适当时机进行垃圾回收以优化内存占用。
摘要由CSDN通过智能技术生成

在 Unity中选择正确的脚本优化比漫无目的地调整代码更能提高代码的执行效率。值得注意的是:最好的优化并不是简单地降低代码的复杂度。

1.在使用FixedUpdate函数时,在方法体内尽量不要写太多无须重复调用的代码,因为虚拟机在执行该方法时是以每秒50-100次的执行效率来处理每个脚本与对象的。当然,执行效率是可以改变的。依次打开菜单栏中的Edit->ProjectSettings->Time项,进而可以在Inspector视图中显示TimeManager属相面板。
FixedUpdate与Update的区别:Update会在每次渲染新的一帧时执行,它会受当前渲染物体的影响,渲染的帧率是变化的,所以渲染时间间隔也会变化,也就是说Updata更新频率和设备的性能有关;而FixedUpdate不受帧率的影响,它是以固定时间间隔被调用的。所以在用法的处理上,FixedUpdate更多地用于处理物理引擎。Update因为受渲染物体的影响,所以更多地把Update用于脚本逻辑的控制。

2.一般在新建类时会产生新的Update函数。如果代码不需要用到该函数,应该对该函数进行删除。另外,尽量不要在Update函数内执行Find,FindObjectOfType,FindGameObjectsWithTag这些寻找物体的函数,而应该尽量在Start或Awake函数中执行。

3.引用一个游戏对象的逻辑,可以在最开始的地方定义它。例如:

private Transform myTransform;
private Rigidbody myRigidbody;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值