unity 常用的生命週期函數

編輯器->初始化->物理系統->輸入事件->遊戲邏輯->場景渲染->GUI渲染->物體激活或禁用->銷燬物體->應用結束

常用的生命週期函數

Awake():喚醒事件,遊戲一開始運行就執行,只執行一次。

OnEnable():啓用事件,只執行一次。當腳本組件被啓用的時候執行一次。

Start():開始事件,執行一次。

FixedUpdate():固定更新事件,執行N次,0.02秒執行一次。所有物理組件相關的更新都在這個事件中處理。

Update():更新事件,執行N次,每幀執行一次。

LateUpdate():稍後更新事件,執行N次,在 Update() 事件執行完畢後再執行。

OnGUI():GUI渲染事件,執行N次,執行的次數是 Update() 事件的兩倍。

OnDisable():禁用事件,執行一次。在 OnDestroy() 事件前執行。或者當該腳本組件被“禁用”後,也會觸發該事件。

OnDestroy():銷燬事件,執行一次。當腳本所掛載的遊戲物體被銷燬時執行。

生命週期函數分類彙總

 一、刷新函數

Update()函數

當MonoBehaviour啓用時,其Update在每一幀被調用。

LateUpdate()函數

當Behaviour啓用時,其LateUpdate在每一幀被調用。

 FixedUpdate()函數

當MonoBehaviour啓用時,其 固定時間調用一次

二、啓動函數

Awake()函數

當一個腳本實例被載入時Awake被調用。Awake()函數在腳本實例被載入時就被調用,不管遊戲對象是否被激活都會被調用,在整個遊戲當中只會被調用一次和構造函數差不多,運行於Start()函數之前,Awake()主要被用於初始化遊戲狀態或變量。

Start()   Start僅在Update函數第一次被調用前調用。

Reset()  重置爲默認值。

三、交互函數

OnMouseXXX()函數

    1.OnMouseEnter()

    當鼠標進入到Collider(碰撞體)中時調用OnMouseEnter

    2.OnMouseOver()

    當鼠標懸浮在Collider(碰撞體)上時調用 OnMouseOver 。

    3.OnMouseExit()

    當鼠標移出Collider(碰撞體)上時調用OnMouseExit

    4.OnMouseDown()

    當鼠標在Collider(碰撞體)上點擊時調OnMouseDown。

    5.OnMouseUp()

    當用戶釋放鼠標按鈕時調用OnMouseUp。OnMouseUp只調用在按下的同一物體上。此函數在iPhone上無效。

    6.OnMouseDrag()

    當鼠標拖拽時調用OnMouseDrag

OnTriggerXXX函數

    1.OnTriggerEnter () 進入觸發器

    2.OnTriggerExit () 退出觸發器

    3OnTriggerStay() 逗留觸發器

OnCollisionXXX函數

    1.OnCollisionEnter 當進入碰撞

    2.OnCollisionExit 當退出碰撞

    3.OnCollisionStay 當逗留碰撞

OnEnable()函數 當可用

OnDisable()函數 當不可用

OnDestroy()函數 當銷燬

OnGUI()函數 當界面

OnControllerColliderHit() 當控制碰撞器碰撞

OnJointBreak() 當關節斷開

OnParticleCollision()當碰撞粒子

OnBecameVisible() 當可見

OnBecameInvisible() 當不可見

OnLevelWasLoaded() 當關卡載入

OnDrawGizmosSelected()當選擇時繪製Gizmos

OnDrawGizmos()當繪製Gizmos

OnApplicationPause() 當程序暫停

OnApplicationFocus() 當程序焦點

OnApplicationQuit() 當程序暫停

OnPlayerConnected() 當玩家成功連接

OnServerInitialized() 當服務器初始化

OnConnectedToServer() 當連接到服務器

OnDisconnectedFromServer() 當從服務器斷開連接

OnPlayerDisconnected() 當玩家斷開連接

OnFailedToConnect() 當連接失敗

OnFailedToConnect() 當連接失敗

OnMasterServerEvent() 當主服務事件

OnNetworkInstantiate() 當網絡實例

OnPreCull() 當消隱之前

OnPreRender() 當渲染之前

OnPostRender() 當完成渲染

OnRenderImage()函數當渲染圖片

OnRenderObject() 當渲染物體

OnWillRenderObject() 當渲染物體之前

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章