【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); } }
学习资料: