Unity3D学习篇(二)
Unity3D脚本生命周期
Unity3D脚本有一套严格的生命周期法则,任何脚本都须按照生命周期来执行,生命周期系统调用的几个常见方法有Awake()、OnEnable()、 Start()、Update()、LateUpdate()、FixedUpdate()、OnDestroy()等方法,一下来简单介绍这几种常用方法。
Awake()方法
Awake()方法在唤醒脚本时使用,是脚本第一执行的方法,该方法常用于脚本初始化,在脚本生命周期中只执行一次。
OnEnable()方法
OnEnable()方法在激活组件时调用,可被多次调用,即每激活一次组件都会调用一次OnEnable()方法。
Start()方法
Start()方法在第一个OnEnable()执行之后调用,且只执行一次。
Update()方法
Update()方法是系统每帧都会调用的方法,用于更改程序逻辑。
LateUpdate()方法
LateUpdate()方法同Update()方法一样,系统每帧都会自动调用,但系统调用顺序总是LateUpdate()跟在Update()方法之后。
FixedUpdate()方法
FixedUpdate()为固定频率系统调用,默认频率为0.02s,即默认系统每0.02s调用一次FixedUpdate()方法。
OnDestroy()方法
OnDestroy()方法在脚本被销毁时调用。
总结
列举了常见的几种在脚本生命周期中系统会调用的方法,但这几种方法并不是同一级别的,并不是谁写在前面谁先执行,就是说他们存在执行顺序上的差别,
通过控制台上的输出可以发现,永远都是Awake(),然后是OnEnable(),在之后是Start(),随后Update(),FixedUpdate(),LateUpdate()随时间调用,但Update()永远先于LateUpdate(),Destroy只会在脚本被销毁时执行,所以永远是最后一个。