EKsumic's Blog

let today = new Beginning();

Click the left button to use the catalog.

OR

[Unity]什么是m_Animator.GetCurrentAnimatorStateInfo(0)?

m_Animator.GetCurrentAnimatorStateInfo(0) 用于获取当前动画状态信息。

 

关于unity Animator 怎么判断一个动画播放结束这里有几种方法,这里只介绍一种:

 

//获取动画层 0 指Base Layer.

AnimatorStateInfo stateinfo = animator.GetCurrentAnimatorStateInfo(0);
//如果正在播放walk动画.
if(stateinfo.IsName("Base Layer.walk"))
{

}

至于为什么是0层,

什么是1层,什么是2层?

这些得去了解动画状态机。

 

按照Unity社区的说法,你并不需要知道LayerIndex是什么,

你只需要知道动画的Name,并使用GetLayerIndex这个方法来获得Index。

 

如果你还想得到答案,你可以做一个简单的测试,把每一层的索引打印到控制台上,但我猜它从0开始,按Animator窗口中定义的顺序递增1。

 

 

参考资料:

https://www.cnblogs.com/mimime/p/6599798.html

https://answers.unity.com/questions/1238124/what-number-is-the-layer-in-animator-controller-i.html

This article was last edited at 2020-04-07 19:44:57

* *