添加动画器
unity自带着组件中有动画器这一选项,我们只需在检查器中添加组件。
该组件要注意控制器的选项,该部分主要是定义你游戏中角色的动画。
首先我们先在project中创建一个controller,紧接着将之前创造的动画器中的控制器栏里添加我们新创建的controller。
在窗口中找到动画该选项然后再点击动画出现该页面,将页面最大化看到图片中有一个creat的按键,新建我们的动画并保存。此时,左侧用于动画化属性
右侧的时间轴显示每个属性的关键帧。此时把我们制作的动作图片全拖动到右侧,点击播放即可发现我们的精灵动了起来。此时我们通过改变帧率 来调整运动的速度。
构建Controller
Controller 定义动画之间的关系,比如如何从一段动画切换到另一段动画。要编辑 Controller,请执行以下操作:
打开 Animator 窗口(菜单:Windows > Animation > Animator)。
第 1 部分:Layers 和 Parameters
Layers 可用于 3D 动画,因为你可以将动画用于角色的不同部分。
Parameters 由我们的脚本用来向 Controller 提供信息。
第 2 部分:动画状态机
动画状态机以图形方式显示动画的所有状态以及如何从一段动画过渡到另一段动画。
现在,你已经创建四段动画,第一段动画 RobotLeft 链接到 Entry,这表示此动画将在游戏开始时播放。
在这里可以将一个角色的动作整合成一个树,通过参数变化进入不同的状态,以下是操作的方式:
在混合类型中可以调一个适应的类型,如果要做2d游戏可以调整方位,分别设置两个变量,以这两个变量在脚本中的改变来控制不同动作的出现,所以我们要将脚本和我们的动作器链接起来。
Animator animator;
void Start()
{
rigidbody2D = GetComponent<Rigidbody2D>();
timer = changeTime;
animator = GetComponent<Animator>();
}
通过该函数初始化最初的设置,紧接在我们动作线上添加以下代码来控制参数变化。
animator.SetFloat(“Move X”, 0);
animator.SetFloat(“Move Y”, direction);
这样我们得到一个可以控制动作的树。