Unity:访问动画组件中的动画

时间:2019-09-25 17:20:53

标签: c# unity3d animation

所以我们团队中的3D人制作了一棵树,并且树上每个叶子都有一个动画,所以事情是我需要同时播放叶子的所有动画,因此我尝试通过代码,但Unity只播放其中的第一个(有23个动画),请您能帮我吗? ,这是我的代码:

public Animation anim;

void Start()
{
    anim = GetComponent<Animation>();
    foreach (AnimationState state in anim)
    {
        anim.Play();

    }

}

1 个答案:

答案 0 :(得分:1)

Animation.Play

  

如果未提供名称,则将播放默认动画

您要做的是按名称开始所有动画:

anim = GetComponent<Animation>();
foreach (AnimationState state in anim)
{
    anim.Play(state.name);
}

但是也要注意

  

必须在检查器中将动画标记为“旧版”,才能通过此方法找到动画。将检查器窗口切换为“调试”后,将显示此选项。