所以,我正在制作一个小 2D 游戏,在这个游戏中玩家可以滑雪,所以,我制作了玩家动画师,我希望玩家滑雪与状态无关,所以我使用了“任何状态”状态使用名为“isSnowboarding”的 bool 值将当前动画转换为“9_Snowboarding”动画,并且效果很好。
当我想让玩家跳跃时,问题就开始了,我创建了跳跃动画,我创建了一个名为“isJumping”的 bool 来进行转换,我通过代码将 bool 设置为 true。
动画 Controller 没有过渡到动画并播放它,而是多次将“9_Snowboarding”过渡到“10_SnowboardJumping”,我不知道如何解决这个问题。
最佳答案
特别是在您的情况下,您需要使用“触发器”而不是“bool”参数。
bool 的问题在于 isJumping
始终设置为 true,因此您的条件会继续匹配,并且您会继续过渡到相同的动画。
另一方面,“触发器”一旦使用就会禁用。因此,尝试添加类似 Jump
触发器的内容并在您的代码中进行设置
关于c# - 在 Unity Animator 中使用 "Any State"的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52066520/