·来源于唐老狮的视频教学,仅作记录和感悟记录,方便日后复习或者查找
一、什么是老动画系统
Unity中有两套动画系统
二、老动画系统控制动画播放
1.创建老动画
是否使用老动画系统,决定于要在Animation窗口中创建动画的物体的身上是否挂有【Animation组件】
创建之后会发现它并没有创建【Animator组件】
而Animation组件中放入了新创建的动画,这时我们使用的就是老动画系统了
这时候发现这个用老动画系统的Animation它的参数和之前用新动画系统的不一样
注意:老动画系统Animation组件中,只能够拖入老的Animation文件
2.Animation参数
可以在这里面放入所有它需要的动画,之后可以通过代码来切换它的播放
这个Based On Renders 就是选中之后,在场景外的它就不会播放了
三、代码控制播放
1.播放动画
2.淡入播放
可以让正在播放的动画和下一个要播放的动画混合,使之过度更加自然
3.前一个播放完再播放下一个
但是这个它也是硬切换
这个就是排队但是淡入了的
4.停止播放所有动画
5.是否在播放某个动画
6.播放模式设置
7.其他
先记住【层级】、【权重】、【混合】这几个词语就好了
四、动画事件
手动选择在对应的帧去添加
在这个动画对象所挂载的脚本中写一个public 方法
然后这个动画事件就可以有选择函数了,即到这个动画事件所在的帧的时候,会自动调用这个函数
这个很有用!
当然它还可以传一些参数
五、其他
·尝试在Unity里用几何体搭一个人形,它的手臂与腿的移动是依赖于它的关节点,因此我们空物体设置成它的关节点即可
·把整个人性拼完后,聚合在一起,需要确定它的根节点位置,一般设置在它的正下方
·有时候发现动画从跑步切换回去待机,腿没有变回去。这是因为待机动作中没有设置这些点的位置,导致Animation不知道它要还原到哪里去。解决方法就是去加上这些地方的关键帧就是了
总之,大概有个概念就好了,反正真的动画不会在Unity里做的一般
六、总结
①了解新老动画的区别,同时记得老动画的一些API函数就行了,有的资源可能用的是老动画系统
②动画事件这个功能很重要,使用好可以帮助我们处理更复杂更精准的游戏逻辑需求