更新于2013.09.17
首先要明確的是MonoBehaviour是每個(gè)腳本的基類.每個(gè)Javascript腳本自動繼承MonoBehaviour.使用C#或Boo時(shí),需要顯式繼承MonoBehaviour.
以下是一些常用的函數(shù)調(diào)用順序的說明:
Awake:當(dāng)一個(gè)腳本實(shí)例被載入時(shí)Awake被調(diào)用,要先于Start。建議少用,此刻物體可能還沒有實(shí)例化出來,會影響程序執(zhí)行順序。需要注意的是,假設(shè)實(shí)例化一個(gè)物件:
GameObject go = new GameObject();
go.GetComponent().Test();
這個(gè)Test()的調(diào)用順序會在Awake()之后,在Start()之前
Start:Start僅在Update函數(shù)第一次被調(diào)用前調(diào)用。物體實(shí)例化完成后調(diào)用(估計(jì),沒確認(rèn))。
Update:當(dāng)MonoBehaviour啟用時(shí),其Update在每一幀被調(diào)用
FixedUpdate:這個(gè)函數(shù)會在每個(gè)固定的物理時(shí)間片被調(diào)用一次.這是放置游戲基本物理行為代碼的地方。UPDATE之后調(diào)用。
Reset:Reset是在用戶點(diǎn)擊檢視面板的Reset按鈕或者首次添加該組件時(shí)被調(diào)用.此函數(shù)只在編輯模式下被調(diào)用.Reset最常用于在檢視面板中給定一個(gè)最常用的默認(rèn)值.
OnDestory:物體被刪除時(shí)調(diào)用。
OnEnable:物體啟用時(shí)被調(diào)用。
OnDisable:物體被禁用時(shí)調(diào)用。
OnGui:這個(gè)函數(shù)會每幀調(diào)用好幾次(每個(gè)事件一次),GUI顯示函數(shù)只能在OnGui中調(diào)用。備注:這個(gè)各大翻譯都直接翻譯成每幀調(diào)用一次了。下面是官方的原文。
OnGui:This means that your OnGUI implementation might be called several times per frame (one call per event). For more information on GUI events see the Event reference. If the MonoBehaviour's enabled property is set to false, OnGUI() will not be called.
更詳細(xì)的請看這里:
http://docs./Documentation/ScriptReference/MonoBehaviour.html
|
|