Unity脚本生命周期

简洁: 在unity脚本生命周期中的各个函数使用时总结的心得

Unity Script ExecutionOrder

Reset


只在编辑模式下被调用, 在检查面板的Reset按钮或者首次添加该组件时被调用
在Unity2018 API中Reset被放到 Initialization之后 ,由于只在编辑模式调用,因此不会影响运行模式下的脚本方法顺序

Initialization


  1. Awake()
    Unity最先执行的方法,在开始执行后,所有启用的物体上的脚本均会被执行,但仅执行一次
    是启用的物体 !!
    如果在运行时进入场景 ,gameobject A处于未启用状态,此物体上脚本的Awake方法不会执行,但当此物体在运行时被激活后,Awake方法会被执行
    另外新创建的物体也会先执行 Awake方法
  2. OnEnable()
    当执行完Awake()后 或者 禁用的物体被启用后 此方法会被调用
    此方法可以被执行多次
  3. Start()
    同 Awake方法,与之不同的是 执行顺序在Awake与OnEnable之后