Unity C# Animation Event教學
- 此篇重點
本篇教學的重點著重在於使用"Animation Event"來進行動畫與程式碼之間的呼叫與控制
而在範例中我們會示範在如何在2D動畫撥放完畢後執行我們寫好的程式碼,而實際的效果
將會跟下面影片所呈現的一樣,當我們的角色播放完攻擊動畫之後,則會去執行C#函式。
- 此篇效果 - Animation Event * * * *
- 大概了解重點後,接下來進入完整教學 -
一、首先我們要建置好一個可以播放動畫的遊戲角色,這裡我們使用2D連續圖製作好了一個會播放「站立」與「攻擊」兩種動畫的忍者(2D動會建置在這裡就不贅述,如果對於2D動畫建置有教學需求的朋友也歡迎下面留言跟我們說)
1.建置完畢後效果如下:
二、當我們建置完我們要的角色與動畫後,接下來我們要讓我們的動畫可以觸發一些「事件」首先我們要先新增一個動畫事件
1. 點選Windows→Animation視窗
2.從Hierachy中選擇自己的角色,在點選剛剛呼叫出來的Animation視窗
3.按下Animation視窗由上角的事件新增按鈕,就可以看到在動畫條上出現的新動畫事件。
4.新增完動畫事件後,你可以依照你的需求任意移動事件,調整它的觸發時間。
三、新增完動畫事件後我們要讓這個動畫可以觸發我們的C#程式碼,接下來就先來新增一段簡單的程式碼吧!
1.我們先新增一段名為「NinjaHit」的程式碼,並編寫下列的程式碼:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NinjaHit : MonoBehaviour {
public void DamageTrigger()
{
Debug.Log("造成10的傷害");
}
}
2.新增完畢後我們儲存好這段程式碼就可以回到編輯模式中囉!
四、這個步驟,我們要讓剛剛新增的Animation Event能夠去呼叫程式碼中的DamageTrigger函式
1.首先先把NinjaHit這段程式碼拖曳到角色身上
2.接下來我們在Animation視窗中找到我們剛剛新增的Animation Event(Inspector視窗中)
3.然後我們點選我們要呼叫的Function
五、接下來按下執行按鈕後,每當我們執行一次攻擊動畫,Animation Event都會去呼叫一次函式,且呈現下面的效果。
- 此篇重點
這篇文章主要的重點在於如何利用動畫事件(Animation Event)來觸發程式碼的功能,
相信在開發動作遊戲的過程中這會是相當好用的技巧,學起來就是自己的囉!!!
-------------------------------------------------------------------------------------------------------------------------------------
我們有粉絲專頁囉!!!
如果怕有問題連絡不到我們,歡迎隨時私訊FB粉專哦!!!
https://www.facebook.com/Straying2018/
● 如果這篇文章有幫助到您,希望您能留言給予我們鼓勵 !
● 對於文章有任何的建議,非常歡迎留言告訴我們哦 !!!
● 有任何想知道的功能也歡迎告訴我們,我們會盡快寫成部落格分享給大家!
-Alex-
留言列表