gpt4 book ai didi

c# - 获取当前动画状态的名称

转载 作者:行者123 更新时间:2023-11-30 13:55:25 25 4
gpt4 key购买 nike

如何获取 Animator 组件图层中当前状态的名称?我意识到我可以将名称与 GetCurrentAnimatorStateInfo(0).IsName("statename") 进行比较,但我不想为层中的每个状态都运行它。是否可以简单地获取当前状态的名称?

最佳答案

我认为这是不可能的。我能想到的唯一好的解决方案是像这样使用 switch 语句和 nameHash:

Animator animator = GetComponent<Animator>();

// Get the id of all state for this object
int runId = Animator.StringToHash("Run");
int jumpId = Animator.StringToHash("Jump");

AnimatorStateInfo animStateInfo = animator.GetCurrentAnimatorStateInfo(0);

switch (animStateInfo.nameHash)
{
case runId:
Debug.Log("Current state is Run");
break;
case jumpId:
Debug.Log("Current state is Jump");
break;
default:
Debug.Log("Current state is not in this list");
break;
}

关于c# - 获取当前动画状态的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34846287/

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