AnimatorStateInfo minfo = m_animator.GetCurrentAnimatorStateInfo(0);
其中参数0代表Base Layer
GetCurrentAnimatorStateInfo(0)即是获取当前动画控制器当前正在播放的动画状态
stateInfo.fullPathHash==Animator.StringToHash("Base Layer.attack")
stateInfo.fullPathHash即是当前动画控制器当前正在播放动画的Hash值
Animator.StringToHash("Base Layer.attack") 是Base Layer层下attack动画的Hash值
3.animator.IsInTransition(0)
0参数在该方法中代表动画控制器当前是否处于动画过渡状态(过渡状态:当前播放动画的结尾和下一个动画开头的混合状态,时间一般在零点几秒)
文章介绍了在Unity中如何使用AnimatorStateInfo获取当前播放的动画状态,包括通过GetCurrentAnimatorStateInfo(0)获取BaseLayer的动画状态,利用StringToHash方法转换动画名称为Hash值进行比较,以及判断animator是否在动画过渡状态的IsInTransition(0)方法的应用。
3011

被折叠的 条评论
为什么被折叠?



