Animator 的总结
Animator:动画控制器
Animator其实就是把动画状态管理器,组件如下图。
1.Controller 控制器
Animator Controller为最主要的组件,里面内含所有的动画文件和动画状态和切换状态和参数供代码调用,可在资源栏里创建。
2.Avatar 骨架
只要模型动画类型不是Lagacy,就需要骨架,一般默认配骨架,当骨架不对的时候可以自行匹配。
3.ApplyRootMotion--是否有位移和旋转
”Apply Root Motion".有两个作用,首先最重要的是,决定是否应用Root Transform,如果应用的话,那么在动画的同时,模型的位置和角度会同时跟着变化。如果这里不勾选的话,那么就是说不应用Root Transform,这样我们所有的Root Transform都将不起任何作用。
4.UpdateMode--更新模式,
4.1:Normal
4.2:Animate Physics
4.3: UnsccaledTime
4.3
5.CullingMode---剔除模式,简约资源的选项
5.1 Always Animate-动画一直进行
5.2Cull UPDATE Transforms---剔除时只更新位置
5.3cull completely--完全剔除
遇到的情况:
1.不需要状态过渡和切换时
直接:animator.Play(“动画名”);
2.判断动画结束?在结束时调用函数
- if (anim.IsPlaying("roar") && anim["roar"].normalizedTime >= 1)
3.动画过渡时间控制
4.倒着播放动画
TargetAnimator.enabled = true;
TargetAnimator.Play("Boom");
TargetAnimator.StartPlayback();
TargetAnimator.speed = -1;
5.动画事件
5.1获取对应名的动画
在rutimecontroler里可获得动画的数组
5.2添加动画的方法名和调用时间
AnimationEvent animatorevent = new AnimationEvent();
animatorevent.functionName = "你的函数"; //方法名
animatorevent.time = 1.05f;
5.3添加事件
gunMove.AddEvent(“你的事件”);
6.动画混合
anim.corssfade();
7.动画面板参数
8.Transition面板
9.行为脚本StateMachineBehaviour
10.IKFK
11.动画分层
12.