Unity3D中Animator动画控制器组件的相关使用

对于一个游戏/应用来说,动画是不可或缺的成分,对用户的使用体验有很大影响.

Unity3D中Animator组件具有对动画按需求进行相应处理的功能.

相关的一些API可以去Unity官网看看:

https://docs.unity3d.com/ScriptReference/Animator.html

以下为小编(编程萌新)入门级别的个人研究.(大神请绕路)

Animator组件:

一.从创建动画开始

     在unity的Hierarchy层级窗口下选择需要做动画的对象,

      

    按快捷键"Ctrl+6",弹出Animation动画制作窗口

      

      点击creat创建动画并保存在合适的位置

      关闭如上窗口,重新Ctrl+6打开,点击AddProperty后面出现可以操作的选项:

       

      一般情况下我们只做一些Transform类的简单动画,比如位移,旋转,缩放;产生的动画切片会保存在相应的文件夹里

二.实现动画的动态切换

      然后找到Animator控制器文件:

      (看,它是这个样子的东东)

     双击它

     会在场景视图出现一个新的视图

      

     (以上案例为一个完整人物动画状态系列)

       点击切片之间的白色连线,得到右侧的窗口信息

      

      其中的判断条件可以在左侧自定义:

       

      如上图片中的七个参数(IsRun,Attack等),都是自行设定的参数,通过点击小加号,可以进行创建,初始值可以根据自己需要进行设定

      动画切换可以用代码改变参数值来实现动态控制;

     相应的API如下:

          1.Float类型--> SetFloat("参数名",float类型参数值);   例子:

             

          2.Int类型--> SetInteger("参数名",int类型参数值);   

             

          3.bool类型--> SetBool("参数名",bool值);

             

          4.Trigger类型--> SetTrigger("参数名");

              

          注:Float类型和Int类型的参数值在白线的条件设置时可以选择大于/小于某一值的时候,进行动画切换,

              而Trigger则是直接触发切换即可

              

暂时先讲这么多,以后研究更加深入的时候会对此进行追加或修改.

PS:动画切换一般都搭配有状态机, 使用状态机可以让人物的当前状态下应该做的事情,条理更加清晰;        

原文地址:https://www.cnblogs.com/RainPaint/p/10251434.html