遊戲物件
- Scene - 場景
- Sprite - 2D圖片 (可以是單張,也可以是多張連續動畫)
- Script - 腳本 (Unity支援UnityScript, C#兩種語言)
- Prefab - 預製物件
- Animator Controller, Animation Clip - 動畫控制器, 動畫片段
- OTF, TTF - 字形檔
- MP3, WAV - 音樂、音效檔
Sprite 2D圖片
2D圖片格式。
- Texture Mode - Sprite (2D and UI)
- Sprite Mode - Single, Multiple (可以是一張圖也可以是spritesheet動態圖)
Prefab 預製物件
從Prefab拖曳至Hierarchy的皆為其子物件,子物件的變更不會影響到父物件也就是Prefab本身,但是如果變更Prefab的屬性或設定皆會影響到其子物件們。
Animator Controller 動畫控制器
以狀態機(State Machine)的方式控制每個動畫片段,並根據參數(Parameters)的改變進行動畫的切換,同時亦可播放兩層(Layers)以上不等的動畫片段。
Animation Clip 動畫片段
包含每個影格中的元件所呈現的屬性變化等等數值,也同時可以在影格當中插入動畫事件(Animation Event)呼叫腳本中的方法。
- Loop Time - 循環播放
為什麼在新增動畫之後角色就突然無法操控了呢?未加入動畫之前是可以的。
因為遊戲物件第一次新增動畫時會直接將該片段設為預設值,因此一開始就會播放,再加上在製作的過程當中如果有動到position,就會導致這樣的情況發生,解決方式是將片段中的position property移除即可。
為什麼3D模型的動畫片段無法編輯?如果需要呼叫腳本方法該怎麼辦?
將該模型動畫控制器中每個狀態(State)的動畫片段(Anim)檔全部複製一份,然後重新綁回各自的狀態上,取代原本的動畫片段,如此一來便可以進行編輯了。
Animation Event 動畫事件
- 在影格上點右鍵
- Add Animation Event
- 選擇要執行的function (註:該腳本必須綁定在與Animator同一層)
Parameters 動畫參數
有Float, Int, Bool, Trigger四種型態,其中Bool較常用在持續性的動作,像開關燈一樣,開了之後你沒有關就會一直亮,而Trigger則常用在一次性的動作,像是炸彈按鈕一樣,一按下就爆炸。
// 須先取得元件本身才能變更動畫參數
var anim : Animator = GetComponent(Animator);
// 事件發生時直接啟動
anim.SetTrigger("Explode");
MP3, WAV 音樂、音效檔 (=AudioClip)
可用拖曳的方式直接將檔案匯入。