【Unity笔记】用代码动态修改Animator状态机的状态

通常情况下,Animator修改状态机,是在Animator定义参数(变量),状态之间建立切换的条件(箭头),然后代码中修改参数(变量),实现状态之间的切换。


 

而另一种情况下,不需要预先准备定义参数(变量),也不需要在状态之间简历切换的条件(箭头),可以在代码中直接进行状态的切换。

API:https://docs.unity3d.com/ScriptReference/Animator.CrossFade.html

假设当前定义好了A和B两个状态,用代码实现切换:

void Update()
{
    if (Input.GetKeyUp(KeyCode.A))
    {
        // 按下A键,切换到A状态
        anim.CrossFade("A", 0.1, -1, 0);
    }   
    else if (Input.GetKeyUp(KeyCode.B))
    {
        // 按下B键,切换到B状态
        anim.CrossFade("B", 0.1, -1, 0);
    }   
}

学习资料:

 

posted @ 2017-07-27 11:47  霍莉雪特  阅读(2322)  评论(0编辑  收藏  举报