如何防止统一状态机中的大量转换?

时间:2016-08-23 12:25:34

标签: unity3d state unity3d-mecanim

我有一个具有四种状态的统一状态机:空闲左,空闲,空闲和空闲。

transitions

要在这些状态之间转换,我必须创建12个转换。 (白色箭头)。这已经显得笨拙,但现在我需要再增加4个状态:跑步,跑步,左跑和右跑。

这是否意味着我最终会在所有这些状态之间运行8个状态和24个转换?这对我来说似乎很笨拙。如果您以后需要更改内容怎么办?

我知道我可以通过代码进行转换,但这似乎不是推荐的工作方式。

pro_price[Elarge]

与许多州合作的推荐方法是什么?

1 个答案:

答案 0 :(得分:2)

正如@Uri Popov所说,你应该考虑使用“Blend Trees”。他们出于同样的目的。多个类似动画之间的帮助混合。例如,步行和跑步动画的类似方式取决于角色的移动速度。

请查看以下链接以了解有关混合树的更多信息。这些只是基本的,但肯定会帮助你解决问题。

  1. Unity - Manual: Blend Trees
  2. Blend Trees - Unity Official Tutorials
  3. When to use a blend tree vs state machine for animations(关于gamedev.stackexchange的另一个问题)