unity怎么判断动画状态机里某一个状态的播放
时间: 2024-02-18 12:59:28 浏览: 115
Unity动画状态机实现源码
5星 · 资源好评率100%
你可以使用Animator类的IsInTransition方法来判断当前是否正在从一个状态切换到另一个状态。如果正在切换状态,那么IsInTransition会返回true,否则返回false。
如果你想判断某一个具体的状态是否正在播放,可以使用AnimatorStateInfo类的IsName方法。例如:
```csharp
Animator animator = GetComponent<Animator>();
if (!animator.IsInTransition(0) && animator.GetCurrentAnimatorStateInfo(0).IsName("Idle"))
{
// Idle状态正在播放
}
```
这里假设你的Animator组件是挂在当前物体上的,而且你想判断的是名为Idle的状态。如果你想判断其他状态的播放,只需要将IsName方法的参数改为对应状态的名字即可。
阅读全文