获取脚本中的动画制作者列表

时间:2017-08-25 05:22:55

标签: c# animation unity3d unity5

我在世界空间中有一个UI菜单,相机在画布周围飞行(代表菜单部分)。

至于按钮,我为每个按钮制作了一些带有单独动画师的动画,所以我点击“单人游戏”,例如,这个画布中的按钮应该被替换(使用动画)和其他按钮。画布,反之亦然(当我点击“返回”)。

问题是我想在UIGameObject中使用List UIAnimators,它将所有脚本保存到场景中。问题是当我将脚本设置为按钮onClick时,Unity似乎无法接收列表。它根本不显示带有列表的方法。有没有办法绕过它。所以我可以在同一个脚本中触发几个控制器,因为我需要使用每个控制器替换每个控制器。只是寻找一些提示,不需要编码,或者可能有一些参考或教程。我真的很感激一些帮助。

Menu layout, just to get a picture of the idea

提前致谢!

1 个答案:

答案 0 :(得分:1)

我不完全确定我关注但如果我理解正确,那么你想拥有一组不同的UI元素,并使用按钮中的OnClick事件一次激活多个元素的相应动画。

不确定它是否是最佳解决方案,但您可以在父游戏对象上创建一个数组,其中所有按钮都带有动画师,然后使用OnClick事件调用一个公共函数来播放相应索引的动画

public void MyFunction(int index)
{
  myUIElements[index].GetComponent<Animator>().Play();
}

然后只需添加对该函数的多个调用,并为单击该按钮时要设置动画的所有元素添加索引,如下所示:

enter image description here