Unity加载并动态添加动画控制器

时间:2017-09-22 06:32:35

标签: c# animation unity3d

我的代码现在:

Animator ContainerAnimator = this.GetComponent<Animator>();
ContainerAnimator.runtimeAnimatorController = Resources.Load("Assets/Cube") as RuntimeAnimatorController;
ContainerAnimator.Play("ContainerMoveUp");

我有一些动态创建的具有动画制作者的对象。这些动画师仍然没有我想要添加的控制器,并且它似乎不起作用。这样做的任何提示或技巧?谷歌没有答案

1 个答案:

答案 0 :(得分:1)

Resources.Load("Assets/Cube")可能会返回null。

  1. 您必须将动画控制器放在名为&#34; Resources&#34;的文件夹中。在Assets文件夹中。你必须拼写正确。将动画控制器移动到这个&#34;资源&#34;文件夹中。

  2. 在此之后,删除&#34;资产/&#34;来自Resources.Load函数。传递给它的路径应该是Resources文件夹中的相对路径。

  3. 如果动画控制器名称是&#34; Cube&#34;,则可以像这样加载:

    Resources.Load("Cube")
    

    而不是:

    Resources.Load("Assets/Cube")