簡介
Animator Controller在Unity中是作為一種單獨的配置檔案存在的檔案類型,其字尾為controller,Animator Controller包含了以下幾種功能:
- 可以對多個動畫進行整合;
- 使用狀态機來實作動畫的播放和切換;
- 可以實作動畫融合和分層播放;
- 可以通過腳本來對動畫播放進行深度控制;
一、添加Animator元件
我們需要播放動畫的角色都需要添加Animator元件,該元件即為我們控制動畫的接口,下面我們來看看Animator元件:
- Controller:使用的Animator Controller檔案。
- Avatar:使用的骨骼檔案。
- Apply Root Motion:綁定該元件的GameObject的位置是否可以由動畫進行改變(如果存在改變位移的動畫)。
- Update Mode:更新模式:Normal表示使用Update進行更新,Animate Physics表示使用FixUpdate進行更新(一般用在和物體有互動的情況下),UnscaleTime表示無視timeScale進行更新(一般用在UI動畫中)。
- Culling Mode:剔除模式:Always Animate表示即使錄影機看不見也要進行動畫播放的更新,Cull Update Transform表示錄影機看不見時停止動畫播放但是位置會繼續更新,Cull Completely表示錄影機看不見時停止動畫的所有更新。
二、建立一個Animator Controller
我們在Project視圖中右擊菜單中可以建立Animator Controller(上圖中的 Boy),下面我們看看新建立的Animator Controller:
首先,我們發現的是3個預設的狀态,這些狀态是Unity自動幫我們建立的同時也無法删除:
- Entry:表示當進入目前狀态機時的入口,該狀态連接配接的狀态會成為進入狀态機後的第一個狀态;
- Any State:表示任意的狀态,其作用是其指向的狀态是在任意時刻都可以切換過去的狀态;
- Exit:表示退出目前的狀态機,如果有任意狀态指向該出口,表示可以從指定狀态退出目前的狀态機;
1. 建立新狀态
①我們可以右鍵菜單建立
②.或者我們可以通過把一個Animation Clip拖拽到狀态機視窗中進行建立(Animation Type屬性值必須為Generic或者Humanoid);
1. 狀态切換
詳細的介紹看下這篇:https://www.cnblogs.com/hammerc/p/4828774.html