目标
Unity 脚本的生命周期有哪些?什么时机会触发/执行?什么时候用?
过程
手册
生命周期
初始化
方法说明:
- Awake:当物体载入时立即调用一次,在 Start 函数之前调用。
- OnEnable:在脚本对象启用时调用。
- Start:仅当启用脚本实例时,才会在第一帧调用。
- Reset:编辑器下调用,当脚本第一次附加到物体上或者点击 Reset 时执行,来初始化脚本属性。
实际应用:
-
Awake:通常使用为需要提前初始化的逻辑。比如单例赋值
private void Awake(){Instance = this;}
。 -
OnEnable:处理每次显示时都需要进行初始化的逻辑,通常和 OnDisable 配合使用。比如: 游戏逻辑使用并修改了变量
Number
,而下次显示时使用是又需要Number = 1
,此时就可以写private void Awake(){Number = 1;}
。 -
Start:通常使用为一些变量初始化逻辑。比如:获取指定物体:
private void Start(){child1 = transform.GetChild(0);}
-
Reset:通常在游戏测试调试时,使