Unity常用方法执行顺序
Reset
用来初始化脚本,在编辑器模式下脚本被添加到物体上或者点击Reset按钮时会被调用
Awake
场景加载时脚本中第一个执行,执行一次。当GameObject处于隐藏状态则不会执行,恢复显示状态则开始执行Awake。(脚本的enable无关)
引擎会将场景中所有的Awake统一执行,并没有先后顺序,但一定在Start之前。(Start也是这样执行方式)
OnEnable
在Awake之后调用。当脚本enable为True(或者GameObject为true)时立即执行。可多次调用。
Start
在OnEnable执行之后,执行一次。脚本enable为false则不执行,为true时若没执行过则执行一次。
Update
FixedUpdate :以固定帧率循环执行,物理计算可以放在这里(帧率很低时一帧会调用多次,反之会多帧调用一次,有可靠的计时器,不用使用deltaTile)
Update :通常的计算在Update中执行
LateUpdate : 在Update之后执行。可以将摄像机的跟随计算放在这里,确保角色计算完毕转身后进行摄像机跟随。
渲染期间
OnGUI
渲染期间多次执行,处理键盘鼠标事件
协程
yield 在Update执行之后
yield WaitForSeconds:在延迟秒后,等Update执行之后执行
yield WaitForFixedUpdate : 在所有FixedUpdate之后执行
yield WWW 等www加载完之后
yield WaitForEndFrame 等渲染之后再执行(O

这篇博客详细介绍了Unity中脚本的执行顺序,包括Reset、Awake、OnEnable、Start、Update、FixedUpdate、LateUpdate、OnGUI、协程、OnDestroy、OnApplicationPause和OnDisable等关键方法。在Unity的生命周期中,每个方法都有特定的触发时机,例如Awake在场景加载时执行一次,而Update则在每帧更新。此外,文章还阐述了协程的使用,如WaitForSeconds和WaitForFixedUpdate等。
最低0.47元/天 解锁文章
6489

被折叠的 条评论
为什么被折叠?



