脚本组件有一套完整的生命周期,脚本需要挂在任何游戏对象上,并且同一个对象可以挂不同的脚本,各自执行自己的生命周期,它们之间相互组合又互不干扰。
在 LayaAir 2.0 中,脚本具有特定的生命周期,主要包括以下几个阶段:
-
构造函数(constructor):
- 当脚本实例化时被调用,通常用于初始化成员变量等操作。
- 可以在这里接收外部传入的参数进行初始化设置。
-
onAwake():
- 脚本实例被创建完成后调用,一般用于初始化一些需要在游戏开始前准备好的资源或状态。
- 在此阶段,场景中的节点和组件可能还未完全初始化完成,但可以访问自身的属性和方法。
-
onEnable():
- 当脚本所在的节点被激活(如节点添加到场景中或从不可见变为可见等情况)时调用。
- 可以在这里开始一些与节点显示或交互相关的逻辑处理。
-
onStart():
- 在第一帧更新之前调用,此时场景中的节点和组件已经完全初始化,可以进行一些与游戏逻辑开始相关的操作。
-
onUpdate():
- 每一帧都会被调用,用于实现游戏的实时逻辑更新,如角色移动、动画播放等。
-
onLateUpdate():
- 在每一帧的更新逻辑完成后调用,通常用于处理一些需要在其他更新逻辑之后执行的操作,比如跟随摄像机的调整等。
-
onDisable():
- 当脚本所在的节点被禁用(如节点从场景中移除或变为不可见等情况)时调用。
- 可以在这里清理一些与节点显示或交互相关的资源和状态。
-
onDestroy():
- 当脚本所在的节点被销毁或者脚本自身被销毁时调用,用于释放资源、清理内存等操作。
引用官网:https://ldc2.layabox.com/doc/?nav=zh-js-4-18-3
- 当脚本所在的节点被销毁或者脚本自身被销毁时调用,用于释放资源、清理内存等操作。