脚本生命周期函数
分为五个阶段
编辑阶段Reset——开始阶段Awake-OnEnable-Start——迭代更新阶段FixedUpdate-Update-LateUpdate——显示阶段OnGUI——清除阶段OnDisable-OnDestroy
Awake
只会被调用一次,在Start方法之前被调用! 主要用于字段值的初始化工作,创建游戏对象,或者Resources.Load(Prefab) 对象
Start
只执行一次,在Awake方法执行结束后执行,但在Update方法执行前执行, 主要用于程序UI的初始化操作,比如获取游戏对象或者组件
OnEnable
当脚本可用或者设置可用时被调用。
**OnDisEnable **
如果脚本被设置为不可用将会被执行,程序结束时也会被执行一次
OnGUI
在这里面进行GUI的绘制,且GUI是每帧擦除重绘的!仅仅只是绘制!没有生命周期的概念!所有关于绘制GUI的代码,都要直接或者间接地写到OnGUI方法中!
FixedUpdate
以固定频率调用的函数
Update
以非固定的频率调用的函数,该频率与设备的性能和程序自身有关
LateUpdate
每当Update调用完之后立马调用
OnDisable
游戏对象消失(销毁/隐藏)的那一刻调用
OnDestroy
游戏对象销毁的那一刻调用
脚本调试
Unity有一个控制台,Console,可以看到脚本中精确的错误,包括位置、行数。
在Unity中可以用print()和Debug.Log()打印调试信息,但print()只能在Mono类中使用,所以一般情况下最好使用Debug.Log()。
Debug.LogWarning():打印警告
Debug.LogError():打印错误信息
通过Debug.Break()设置断点;