Mecanim動畫系統(一)


Unity的動畫系統由以下幾部分組成:Animator(動畫編輯器)、Animator Controller(動畫控制器)、Animation(動畫片段)、Avatar(骨骼模型)

他們之間關系如下圖:(注:“Animator Controller”在“Animator”中進行編輯,可以創建多個“Animator Controller”;)

一、Animator(動畫編輯器)

 

參數介紹:

1、Layers:動畫層。

2、Parameters:參數類型。是動畫片段觸發的條件

3、Any State:可在任意動畫狀態下轉入連接Any State的動畫。

  因為Any State在任意狀態下都可以轉入,所以條件應設為一次性觸發。應該注意的是,如果觸發條件一直為真。那么動畫將沒有播完就會重新開始播放。此時可以將動畫改為其他動畫轉入,並將觸發條件改為 bool 值,可以避免動畫沒播完就重新開始播放的情況。

4、Exit:動畫出口。該出口指向Entry

5、Entry:動畫入口。連接該動畫層的默認動畫

Add Behaviour 的簡單應用:

  

  在 Animator 中選中動畫事件,可以在“Add Behaviour”中添加腳本增加動畫的靈活性。腳本自動繼承 “StateMachineBehaviour”,

可以使用回調函數:OnStateEnter();OnStateUpdate();OnStateMove();OnStateIK()

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class testBehaviour : StateMachineBehaviour {

    public GameObject goPrefabObj;                          //粒子系統預設(爆炸)
    private GameObject _goPrefabObj;                        //克隆變量

    // OnStateEnter
    override public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
    {
        //生成粒子系統
        _goPrefabObj = Instantiate(goPrefabObj, animator.rootPosition, Quaternion.identity);
    }
    // OnStateExit :離開當前狀態時調用
    override public void OnStateExit(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
    {
        Destroy(_goPrefabObj);
    }
}

 

 

 

二、Animator Controller(動畫控制器)

  “Animator Controller”可以在Project視圖上創建,或者直接拖拽動畫片段到 Animator 編輯器中(“Animator Controller”將會自動創建)。該動畫控制器將在角色模型的Animator組件上添加應用。

三、Animation(動畫片段)

1、Unity創建動畫:

  在hierarchy層級視圖中選中需要創建動畫的游戲對象,在Animation窗口點擊Create即可創建一個動畫片段,同時將會生成一個“Animator Controller”控制器。在Unity中只能創建一些簡單的動畫,常用於攝像機的漫游動畫。較復雜的動畫需要在3Dmax、Maya等三維軟件中制作完成以后再導入。

2、導入動畫:

  

● Import Animation:從該模型資源中導入動畫。如果不勾選該模型則不會出現圖片中的屬性及動畫。

● Loop time:動畫循環

  Loop pose:無縫運動

● Root Transform Rotation:

  Bake Into Pose:消除動畫播放本身產生的旋轉

  Based Upon: Transform 是(基於Original:原件,使用在文件中預設好的值;Feet:表示基准點使用第一幀的腳;Center of Mass:重心等)旋轉或發生位移等。

其他Transform Position(···)依次類推。

● Mirror:鏡像。即將動畫左右互換。

● Curves:曲線(動畫)

● Events:事件

● Mask:遮罩

● Motion:動作

四、Avatar(骨骼模型)

  

 

● Mapping:映射骨骼模型

● Muscle&Settings:肌肉設置

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM