MonoBehaviour常用方法
生活随笔
收集整理的這篇文章主要介紹了
MonoBehaviour常用方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.Start()
?? ?在Update方法被調用之前開始調用Start方法,而且Start方法在整個MonoBehaviour生命周期內只被調用一次。Awake和Start不同的地方在于Start方法僅僅在腳本初始化后被調用,這樣允許你延遲加載任何代碼,直到代碼真正被使用時。Awake方法總是在Start方法執行之前被調用,這樣允許你初始化腳本代碼。
2.Awake()
?? ?當腳本被加載后立即調用Awake方法,這個方法通常在Start()開始之前聲明某些變量或者游戲的狀態標記符。同樣,Awake也是在MonoBehaviour聲明周期內被調用一次。Awake在所有的對象(個人認為是GameObject)實例化后被調用,因此綁定這個腳本的對象能與其他對象之間相互作用,例如,同過GameObjectFindWithTag方法查找其他對象。
3.Update()
?? ?在Start方法執行過后,游戲的每一幀都在調用此方法。
4.FixedUpdate()
?? ?每一幀都在調用此方法。當處理Rigdibody時FixedUpdate應該代替Update方法,比如,當一個物體需要增加一個力時,應該將這個力的代碼寫在FixedUpdate()里面。
?? ?void FixedUpdate() {
?? ??? ?rigidbody.AddForce(Vector3.up);
?? ?}
5.LateUpdate()
?? ?每一幀都在調用此方法。當每一幀的Update方法全部執行完后,此方法開始被調用。舉個例子來說吧,當一個角色移動而攝像機也要跟著移動時,攝像機的處理就應該在LateUpdate()里面了。
6.OnGUI()
?? ?OnGUI()在每一幀被調用數次(several times),假如MonoBehaviour的enabled屬性設置為false時,OnGUI()就失去作用了。
7.DontDestroyOnLoad()
?? ?在Update方法被調用之前開始調用Start方法,而且Start方法在整個MonoBehaviour生命周期內只被調用一次。Awake和Start不同的地方在于Start方法僅僅在腳本初始化后被調用,這樣允許你延遲加載任何代碼,直到代碼真正被使用時。Awake方法總是在Start方法執行之前被調用,這樣允許你初始化腳本代碼。
2.Awake()
?? ?當腳本被加載后立即調用Awake方法,這個方法通常在Start()開始之前聲明某些變量或者游戲的狀態標記符。同樣,Awake也是在MonoBehaviour聲明周期內被調用一次。Awake在所有的對象(個人認為是GameObject)實例化后被調用,因此綁定這個腳本的對象能與其他對象之間相互作用,例如,同過GameObjectFindWithTag方法查找其他對象。
3.Update()
?? ?在Start方法執行過后,游戲的每一幀都在調用此方法。
4.FixedUpdate()
?? ?每一幀都在調用此方法。當處理Rigdibody時FixedUpdate應該代替Update方法,比如,當一個物體需要增加一個力時,應該將這個力的代碼寫在FixedUpdate()里面。
?? ?void FixedUpdate() {
?? ??? ?rigidbody.AddForce(Vector3.up);
?? ?}
5.LateUpdate()
?? ?每一幀都在調用此方法。當每一幀的Update方法全部執行完后,此方法開始被調用。舉個例子來說吧,當一個角色移動而攝像機也要跟著移動時,攝像機的處理就應該在LateUpdate()里面了。
6.OnGUI()
?? ?OnGUI()在每一幀被調用數次(several times),假如MonoBehaviour的enabled屬性設置為false時,OnGUI()就失去作用了。
7.DontDestroyOnLoad()
?? ?進入另一個場景時,保證綁定此腳本的對象的內存不被釋放掉。也就是說綁定此腳本的GameObject在下一個場景中依然存在。
總結
以上是生活随笔為你收集整理的MonoBehaviour常用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hbase 协处理器之将数据保存到es
- 下一篇: Delta3d框架学习--程序启动过程详