Advertisement

在面试中讨论了 Unity 回调方法的执行顺序

阅读量:

编辑角色与功能解析

Reset()——在编译环境内,每当脚本被添加或执行Reset操作时,该函数将被触发调用。

Initialization

Awake()——在首次激活时仅执行一次。

OnEnable()——每当组件被激活时都会触发,但如果在Awake()方法中已将其禁用,则不会在首次激活时调用。

Start()——该方法在整个生命周期中仅执行一次,用于完成初始化操作。

Physics

一个具有特殊功能的组件,会通过稳定的时间间隔被调用,在帧率较低的情况下可能会被多次触发

FixedUpdate()

yield WaitForFixedUpdate()——协程用于暂停执行,直至 FixedUpdate() 被调用

OnTriggerXXX()

OnCollisionXXX()

Input event

OnMouseXXX()

Game logic

Update()函数用于挂起协程,当其不处于WaitForUpdate()状态时,可执行动画更新操作。LateUpdate()函数则在后续阶段进行处理。

Scene rendering

与场景渲染相关的技术手段存在一定的不可控性,若希望实现有效控制,则需借助OpenGL这一工具。

Gizmo rendering

OnDrawGizmos()

全部评论 (0)

还没有任何评论哟~