# 对 Unity 精灵对象动画的调研

0. 写在前面 #

Unity 用于创建动画精灵对象的扩展 2D 特征集. 精灵对象可以从独立文件中采用逐帧方式导入, 或者作为包含多帧的纹理图集. 帧可以方便地组装为一个动画序列. Unity 的动画工具(例如 Mecanim 和 Animation 窗口) 可用于处理大多数常见问题 : 动画速度,循环方式以及错误帧修改, 如此等等.

1. 2D 游戏动画 #

Unity 中的 2D 动画涵盖了大量内容, 尤其是其中的精灵动画及其关联特征集. 2D, 即二维动画体现了特定的表达形式, 采用正交相机或者显示平面对象的相机表达场景, 不允许用户旋转视图和从其他角度查看内容. 2D 仅仅与场景的相机显示模式相关, 且不涉及场景的内在属性. 大多数 2D 游戏与精灵对象有关.

2. 精灵对象的导入与配置 #

精灵对象是 Unity 中一类特定的 2D 对象类型. 存在两种方式导入并配置动画精灵对象 : (1) 导入独立的精灵对象; (2) 导入精灵对象图集;

2.1 独立精灵对象

简单的将全部帧一次性拖曳至 Unity Project 模板中, 各个文件作为规则纹理予以导入. Inspector>Texture Type 选择 Sprite, Sprite Mode 选择 Single (因为各幅独立的图像表示同一精灵对象的唯一帧), 禁用 Generate Mip Maps 设置项, 保证纹理质量.

2.2 精灵对象图集

精灵对象编辑到一个独立的对象表中, 称作纹理图集. 全部动画帧打包至单一纹理文件, 以行列规则排列的图像中, 例如另一篇博客文章 实现僵尸跑酷游戏的 UGUI 实践 中所示.

导入完毕后, 配置纹理使其作为精灵对象工作. Inspector>Texture Type 选择 Sprite, Sprite Mode 选择 Multiple (因为纹理文件包含多个帧而非单一帧), 针对最佳纹理质量, 禁用 Generate Mip Maps 设置项.

Sprite Editor 对话框中, 可手工绘制各精灵对象的边界, 进行切割.

3. 精灵对象动画 #

3.1 动画速度

精灵动画的播放速度可能过快或过慢, 则需要编辑该对象的 Mecanim 图, 精灵对象的动画速度可以方便快捷地加以调整.

3.2 禁用动画循环

默认条件下, 精灵动画以循环方式播放. 在面板中选择精灵动画资源文件, 在 Inspector 中取消 Loop Time 复选框. 此时动画便仅仅执行一次.

3.3 播放帧顺序错误

Animation 窗口编辑器中可见, 可选取场景中精灵对象, 动画数据将自动显示于时间轴上, 时间轴表示动画的全部时长, 其中时间轴上均匀间隔的菱形表示为关键帧. 在 Inspector 中单击 Sprite 文本框, 从精灵对象浏览器中重新选择新的精灵对象, 可以直接拖上去便修正了错误帧.

End.

学习自 : Book <<Unity Animation Essentials>>