Unity OnEnable() OnDisEnable() Start() Awake() 区别

1.执行顺序Awake()->OnEnabled()->Start()
2.Awake()和Start()在gameObject的整个生命周期中只会调用一次。

 Awake()在gameObject首次被**的时候调用,即使脚本组件未启用(如果有绑定父物体,父物体也应该处于**状态)

 Start()在脚本组件首次被**的时候调用(前提是gameObject处于**的状态,如果有绑定父物体,父物体也应该处于**状态)

OnEnabled()和OnDisEnabled()在脚本组件状态和gameObject状态有一项为true,另一项状态在true和false切换时会被调用。(因为实际上让游戏物体被停用,其所有组件也会被禁用,本质上就是脚本的**与失活会调用这两个函数)

Unity OnEnable() OnDisEnable() Start() Awake() 区别