Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介

1、脚本加载的时候执行的代码(脚本挂载在场景内的物体这个物体必须是激活的挂在它身上脚本激活或者不激活都会被执行)

 private void Awake()
 {
        //即使脚本没有被激活 也会执行
        Debug.Log("Awake");
 }

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第1张图片

并未激活脚本 但是还是执行了

End.

 

2、当物体被激活或者取消激活的时候执行的代码 

private void OnEnable()
{
        Debug.Log("OnEnable ");
}
private void OnDisable()
{
        Debug.Log("OnDisable ");
}

情况1:脚本没激活 // 物品激活 取消激活

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第2张图片

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第3张图片

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第4张图片

脚本代码都不执行

 

情况2:脚本代码激活  // 物品激活物品取消

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第5张图片

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第6张图片

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第7张图片

都执行

 

如果物品是激活的情况 只激活或者取消脚本的话

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第8张图片

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第9张图片

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第10张图片

这个情况下 代码也会执行

End.

 

情况3:删除模型的时候执行的代码

  private void OnDestroy()
  {
      Debug.Log("OnDestroy");
  }

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第11张图片

删除物品

Unity 常见必然函数01 Awake、OnEnable、OnDisable、OnDestroy 简介_第12张图片

End.

你可能感兴趣的:(Unity)