最近需要为UI做一些简单的动画,又不想使用DOTween 这样的插件,于是就用了Unity3d自带的动画编辑器制作动画,选中游戏物体,然后按照Ctrl+6 打开动画编辑器,很快 我就把一个移动的动画给设计好了。
如图:
咦!为什么会多一个动画控制器,不管了,我把它删除了(可能是我有强迫症),我只需要用animation,不需要去用麻烦的animator,发现游戏物体上也自动挂了一个animator的组建。
这个我也不需要,我要用animation。我把animator也删除了。自己在上面挂了一个animation组建。于是成了这样:
写了一串测试代码:
void Start () { anim = this.transform.GetComponent<Animation>(); anim.Play("moveLeft"); }
运行,出现了一个错误:
说这个动画剪辑没有找到,可是明明就有啊。于是来了一番百度,谷歌。在各大技术交流群中询问。
原来我们如果要使用Animation播放动画,自己在打开动画编辑器之前,需要在游戏物体上添加Animation组建,然后在创建动画。这样系统就不会自动帮你添加Animator组建;也不会自动的去为你创建动画状态机;并且动画也成功播放了。貌似之前报错的原因是我创建的是新版动画,不是老版动画,Animation只能播放老版动画。
虽然都是些很简单的问题,但是如果不注意的话还是很容易犯错的。