gpt4 book ai didi

c# - (Unity) 如何检查动画是否正在混合树中播放?

转载 作者:太空宇宙 更新时间:2023-11-03 15:44:30 32 4
gpt4 key购买 nike

当 2D Sprite 处于特定的定向空闲动画时,我正在尝试播放特定的定向攻击动画。因此,例如,如果 Sprite 处于右上方的空闲动画,我想播放右上方的攻击动画。

我尝试检查该动画是否正在 Mecanim 中播放,然后像这样播放攻击动画,但效果不佳:

 if(this.anim.GetCurrentAnimatorStateInfo(0).IsName("Idle_UpRight.Idle")){

if(Input.GetMouseButtonDown(0)){
Debug.Log("Attack right");
}

}

“Idle_UpRight”动画隐藏在 Idle 2D 自由形式笛卡尔混合树中。执行此操作的正确方法是什么?

最佳答案

因为 xlidle 是 Layer Blend Tree 而 IdleDownLeft 是一个动画,它们没有任何影响。

void findlayerAnimator()
{
for (int i = 0; i < myani.layerCount; i++)
{
if(myani.GetLayerName(i) == "XLIdle")
{
if (this.myani.GetCurrentAnimatorStateInfo(i).IsName("XLIdle.IdleDownLeft"))
{
Debug.Log("Goodsadsadsaff");
}
}

}

}

关于c# - (Unity) 如何检查动画是否正在混合树中播放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28789822/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com