精灵动画Animation对话框组成Idle动画的各精灵

1.3  精灵动画

场景中已经添加了精灵,现在是时候让让它动起来了。读者也许已经从精灵图集中,各精灵的命名中看出来了,这个精灵一共有两种动画状态:Idle(空闲)和Walking(走)。本节将讲解使用Unity自带的工具,创建精灵动画,并实现简单动画控制的方法本文选自Unity 2D游戏开发快速入门。

1.3.1  Animation

要将精灵图集中的多个精灵的动作,组合成一个动画,可以使用Unity提供的Animation工具。具体的说明和操作方法如下:

(1)在Unity中,单击Window|Animation命令,即可打开名为Animation的窗口,如图1-16所示,在此窗口中就可以将多个精灵的动作,组合起来播放,最终形成动画本文选自Unity 2D游戏开发快速入门。

图1-16  Animation窗口

(2)选中Hierarchy视图里的Player对象(即游戏场景中的精灵对象,现在要为它添加动画效果),然后进入到Animation视图里。单击视图左上角的 按钮,会弹出一个名为Create New Animation的对话框,如图1-17所示。此时需要指定要制作的动画的名字和存储位置。

图1-17  Create New Animation对话框

提示:在本示例中,将此动画命名为PlayerIdleAnimation.anim,并存储于Assets\Animations\Player文件夹下。

在创建了动画以后,进入到Project视图里,创建了动画的指定路径里,我们会发现里面不光创建了指定名称的动画文件,还创建了一个名为Player的动画控制器(Animator Controller)。因为我们选中了Hierarchy视图里的Player对象,所以才新建了同名的动画控制器。修改它的名字为PlayerAnimatorController,这样的命名对它来说更准确些。

提示:动画控制器可以控制精灵对象,做出各种动画效果,并且还可以设置各种动画的过渡条件等等,关于这些会在下面的各步骤中讲解。

(3)新建了动画以后,再选中Hierarchy视图了的Player对象,然后在Inspector视图里可以看到,此对象里多了一个组件Animator,且其属性Controller已经设置成了新建的动画控制器,即PlayerAnimatorController,如图1-18所示。

图1-18  Player对象上,新添加的Animator组件

Animator组件借助Controller属性里设置的动画控制器,真正意义上完成精灵动画的播放,以及各种动画间的转换。

(4)在选中Hierarchy视图里Player对象的前提下,进入到Animation视图里,会发现此视图已经自动打开了PlayerIdleAnimation动画。确保此视图左下角的Dope Sheet按钮处于选中状态,然后将表示同一动画的各精灵,按照动画应有的顺序依次拖入到Animation视图的右侧,且相互之间隔开一定的“距离”,在这里使用“动画帧”来描述或许更准确些,如图1-19所示本文选自Unity 2D游戏开发快速入门。

图1-19  将精灵拖入到Animation视图右侧,并且相隔一定的动画帧

提示:在精灵图集中,表示Idle动画状态的精灵有4个,即playerSprite_idle_01~ playerSprite_idle_04,将它们依次拖动到Animation视图的右侧。明明只有4个精灵,那么为什么本示例中拖入了7个呢?答案是为了让动画流畅播放,即精灵的最后一个动作,应该与第一个动作一致才行,因此后三个精灵依次是playerSprite_idle_03~playerSprite_idle_01。也就是将下图1-20所示的各精灵组合起来播放,就会形成流畅的Idle动画效果。

图1-20  组成Idle动画的各精灵,首尾精灵动作一致

(5)单击Animation视图左上角的 按钮,动画的效果就会在Scene视图里播放出来。如果觉得动画播放的速度太慢,可以调节Animation视图左侧上部Sample(采样率)属性的值,如图1-21所示,它的值越大,动画的播放速度越快。

(6)要为Player对象添加其它的动画(例如,本示例中的Walking动画),可以单击Animation视图左上角的动画名按钮(在本示例中其名为PlayerIdleAnimation),然后选中其中的[Create New Clip]选项即可,如图1-22所示。

图1-21  在Animation视图里,设置动画播放时的采样率         图1-22  为Player对象添加其它的动画

提示:还需要为动画命名,以及指定存储位置,在本示例中动画名为PlayerWalkingAnimation,存储于Assets\Animations\Player文件夹下本文选自Unity 2D游戏开发快速入门。

接着就可以使用同样的方式,为Player对象添加Walking动画效果了本文选自Unity 2D游戏开发快速入门。

最新文章

  1. Netty学习三:线程模型
  2. UPUPW PHP环境集成包
  3. Python冒泡排序
  4. WPF的MVVM
  5. TCP三次握手中,为什么需要第三次握手?
  6. linkin大话面向对象--组合
  7. Java反射的简单入门
  8. Java并发编程(五)-- Java内存模型补充
  9. Linux ssh命令详解
  10. Docker应用场景
  11. bootStrap中的ul导航
  12. Centos 7 查看电池电量信息
  13. 【瞎搞题】gym226123 L. For the Honest Election
  14. 《LeetBook》leetcode题解(16):3Sum Closest [M]
  15. C++运算符重载形式——成员函数or友元函数
  16. SpringMVC 应知应会
  17. Unity和安卓互调
  18. html5shiv.js和respond.js引入不起作用解决
  19. keycloack docker 本地运行
  20. Flask 请求源码分析

热门文章

  1. [Android教程]EditText怎样限制用户的输入?数字/字母/邮箱
  2. [素材资源] Android开发性能优化简介(非常不错的)
  3. 如何在linux中用命令产生一个范围内的随机数?
  4. Linux init进程详解
  5. CentOS 初始化时的分区
  6. 如何实现SSH断开后 进程仍然在后台运行
  7. Calico在Kubernetes中的搭建
  8. 如何用BMFont制作图片字
  9. iOS CALayer动画中使用的3个tree
  10. myeclipse6.5中使用Alt+/不自动提示的修改