免费国产网站_秋霞午夜一区二区三区视频_99热在线看_日韩精品久久一区二区_午夜看一级毛片_天天鲁在视频在线观看

  • 您的位置:首頁 > 新聞動態 > Unity3D

    Unity3D自帶動畫系統教程

    2017/8/9??????點擊:

    導入人物模型,模型是不會動的,因為沒有添加動畫

    首先給模型添加Animator組件

    有的模型上自帶組件,是因為我們給他設置成了人形動畫,如果是普通動畫就需要自己添加。添加好組件以后,我們發現上面缺少了一個animator controller(動畫控制器),我們需要添加一個拖進去。在controller里面添加動畫剪輯。點擊進入animator視圖,找到文件中的Idle動畫,拖進去。橘黃為默認動畫。再拖進一個攻擊動畫Atrrack,右鍵Make Transition(創建過渡),此時運行會發現動畫自動播放了,如果我們不想讓動畫自動過渡,我們需要給過渡添加一個條件,點擊過渡線,選項卡中有一個過渡條件

    但是現在過渡條件是空的,所以我們要自己創建一個過渡條件,回到左面的Parameters選項中,我們給他添加一個Triggerr(觸發)條件,然后在Conditions中設置。現在Attack是一次性的動作,不會重復,所以這個動作播放完就會停止,所以我們要讓Attackk回到Idle狀態。連回去。我們會發現當點擊Trigger后,并不會馬上從Idle狀態跳轉到Atrrack狀態,這是因為我們默認勾選了Has Exit Time

    如果勾選了這個按鈕,動畫就會默認播放完才會播放下一個動畫,如果不勾選,就會馬上播放。

    用代碼去控制人物攻擊觸發條件。給人物添加C#腳本。

    public class controller: MonoBehaviour {

    private Animator animator;

    void start(){
    animator = GetCompenent();

    }

    void Update(){

    if(Input.GetMouseButtonDown(0))

    {

    animator.SetTrigger("New Trigger");

    }

    }

    } //MonoBehaviour

    再添加一個人物跑動的動畫并用代碼控制(Run動畫),因為跑是一個持續性動作,當我按住W的時候他就應該持續的跑,所以我們要設置一個Bool類型的條件。跑和停都是要馬上完成,所以都不應該勾選Has Exiit Time。代碼實現 :

    if(Input.GetKeyDown(KeyCode.W))

    {

        animatorSetBool("isBool", true);

    }


    if(Input.GetKeyUp(KeyCode.W))

    {

        animatorSetBool("isBool", false);

    }


    主站蜘蛛池模板: 临安市| 蒙自县| 肇源县| 聂拉木县| 新野县| 池州市| 霸州市| 湖口县| 忻州市| 晋江市| 库伦旗| 纳雍县| 廊坊市| 大洼县| 徐闻县| 海阳市| 日照市| 桃源县| 六安市| 安乡县| 镇远县| 洪湖市| 故城县| 恩施市| 苗栗市| 万州区| 项城市| 岳阳县| 叙永县| 长春市| 黄冈市| 盐城市| 广宁县| 新乡县| 社旗县| 张家川| 阳谷县| 锦屏县| 翁牛特旗| 阿图什市| 资溪县|