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.判断动画结束?在结束时调用函数

  1. 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.

posted @ 2017-05-31 14:07  carsonche  阅读(969)  评论(0编辑  收藏  举报