1_Unity學習筆記,就讓我們先來說說MonoBehaviour吧!

是的,我這邊並不會告訴各位怎麼安裝Unity請自己上網爬文,這裡從C#開始出發告訴各位如何使用Unity。

請把在下我當作業餘的來看看吧,這裡只會記下我的經驗。

Awake()
Start()
Update()
FixedUpdate()
LateUpdate()

通常會看到以上這種東東,來來來來,這是甚麼呢?
關於流程圖的部分就請各位自由爬文,在下可以算是個懶人哈哈!
總之在這邊稍微介紹一下,一般來說看起來會像是:

 Awake()
    ↓
   Start()
    ↓
FixedUpdate()←←
    ↓      ↑
 Update()   ↑
    ↓      ↑
 LateUpdate()→→↑

的流程,每個場景開始,會先執行每個物件身上的Awake(),接著執行每個物件身上的Start()
都執行完後將會迴圈所有物件依照如上圖的順序。

FixedUpdate最重要的是他每次間隔都是絕對的,在Edit > Project Settings > Time 可以找到
Update則是針對每一禎都會執行,因為禎數會隨著遊戲效能而有所不同,因此Update的間隔都不一定,可以利用Time.deltaTime取得每一禎的時候再秒數的比例。

LateUpdate就跟Update一樣,不過會觸發在Update後面。

另外介紹一些我個人比較常用到的:
OnApplicationFocus 當遊戲被縮小或失去焦點的時候會觸發
OnApplicationPause 當遊戲被暫停的時候,電話來了之類的
OnApplicationQuit 當玩家離開遊戲前會先觸發此才關閉程式
OnCollisionEnter 當碰撞到的時候
OnCollisionEnter2D 同上,2D時使用,忽略Z軸
OnCollisionExit 當碰撞體離開時
OnCollisionExit2D 同上,2D時使用,忽略Z軸
OnCollisionStay 當碰撞體一直都碰著時
OnCollisionStay2D 同上,2D時使用,忽略Z軸
OnTriggerEnter 當觸發體進入時(碰撞體勾選成觸發)
OnTriggerEnter2D 同上,2D時使用,忽略Z軸
OnTriggerExit 當觸發體離開時
OnTriggerExit2D 同上,2D時使用,忽略Z軸
OnTriggerStay 當觸發體一直都碰著時
OnTriggerStay2D 同上,2D時使用,忽略Z軸
OnMouseDown 當滑鼠點下物件(手指也會觸發)
OnMouseDrag 當滑鼠拖曳或按住物件(手指也會觸發)
OnMouseEnter 當滑鼠觸碰到該物件(手指也會觸發)
OnMouseExit 當滑鼠離開觸碰該物件(手指也會觸發)
OnMouseOver 當滑鼠停在物件上(手指也會觸發)
OnMouseUp 當滑鼠釋放按下時(手指也會觸發)
OnMouseUpAsButton 當滑鼠是完整個按下並放開才會觸發(手指也會觸發)
OnDestroy 當此物件被刪除前調用
OnValidate 當物件的參數有所變化調用(只能在Editor裡面)

另外MonoBehaviour中還有
Invoke("methodName", 1);
StartCoroutine(IEnumerator());
呼叫方法以及協同程序,之後有機會會再來做介紹。

以上是本篇全部內容,謝謝觀看。

留言

這個網誌中的熱門文章

Unity儲存以及讀取

EditorGUILayout學習筆記