Unity中C#函数执行顺序

生命周期:

在Unity脚本中常用到的函数就是下面这些,他们的顺序也是按照箭头的方向执行的。
Awake ->OnEable-> Start -> FixedUpdate -> Update -> LateUpdate ->OnGUI ->OnDisable ->OnDestroy
在这里插入图片描述
运行时
在这里插入图片描述
运行后
在这里插入图片描述

函数介绍:

Awake():唤醒事件,游戏一开始运行就执行,只执行一次。

OnEnable():启用事件,只执行一次。当脚本组件被启用的时候执行一次。

Start():开始事件,执行一次。

FixedUpdate():固定更新事件,执行N次,0.02秒执行一次。所有物理组件相关的更新都在这个事件中处理。
不管当前机器忙不忙,都会保证每一帧执行一次!避免跳帧!固定更新。固定更新常用于移动模型等操作。

Update():更新事件,执行N次,每帧执行一次。
每一帧执行的,监听用户输入,播放动画,当机器忙或者性能差的时候,他会停止执行,会产生停顿的感觉,例如一个人本来在1米的位置,突然到了5米的位置上,产生了跳帧,而下面的FixedUpdate方法则相反!会一米一米的去执行!(自己调试发现,Update是先于OnGUI执行的,且执行一次Update之后,会执行两次OnGUI)

LateUpdate():稍后更新事件,执行N次,在 Update() 事件执行完毕后再执行。
先执行Update,然后才去执行lateUpdate(Update方法执行完,必定接着执行LateUpdate,而Update和FixedUpdate方法的执行顺序不确定,而且有时候FIxedUpdate执行了多帧,而Update却只执行了一帧,这就是因为跳帧的缘故造成的(取决于你的机器性能)!),如果现在有100个脚本,分别有100个 Update()函数,其中只有一个LateUpdate,那么在同一帧中,等待100个Update()执行完后,才执行这一个LateUpdate()。

OnGUI():GUI渲染事件,执行N次,执行的次数是 Update() 事件的两倍。

OnDisable():禁用事件,执行一次。在 OnDestroy() 事件前执行。或者当该脚本组件被“禁用”后,也会触发该事件。

OnDestroy():销毁事件,执行一次。当脚本所挂载的游戏物体被销毁时执行。

流程图如下:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值