Version: Unity 6.0 (6000.0)
语言 : 中文
动画
动画剪辑

Mecanim 动画系统

Mecanim 动画系统以动画剪辑为基础。动画剪辑包含有关角色或游戏对象如何随时间改变其位置、旋转或其他属性的信息。可以将每个动画剪辑视为录制。来自外部来源的动画剪辑由美术师或动画师使用第三方软件(例如 Autodesk® 3ds Max® 或 Autodesk® Maya®)创建。

可以将多个动画剪辑编入称为动画控制器 (Animator Controller) 的一个类似于流程图的结构化系统中。动画控制器充当状态机,跟踪正在播放的动画剪辑以及应该播放下一个动画剪辑的条件。

例如,一个简单的动画控制器可能包含一个可旋转和反弹的可收集项的动画剪辑。门的动画控制器可能包含两个动画剪辑:一个用于开门,另一个用于关门。

更高级的动画控制器可能包含十几种人形动画,用于角色的每个动作,例如空闲、转弯、行走和慢跑。此动画控制器可以使用混合树在多个动画剪辑之间进行混合,并在玩家在场景中移动时实现流畅运动。

Mecanim 动画系统还提供了用于处理人形角色的特殊功能,包括能够将动画从一个源重定向到另一个源,以及调整肌肉定义以确保角色正确变形。例如,您可以将第三方动画库中的动画重定向到您自己的角色上,然后调整其运动范围。这些特殊功能由 Unity 的 Avatar 系统启用;在此系统中,人形角色会被映射到一种通用的内部格式中。

动画剪辑、动画控制器和__ Avatar__用于将动画从一个骨架重定向到另一个骨架的接口。更多信息
See in Glossary
都通过带 动画 (Animator) 组件的游戏对象连接在一起。该组件引用了动画控制器,并在需要时引用此模型的 Avatar。动画控制器还会引用其动画剪辑。

Mecanim 动画系统的各个部分是如何连接在一起的
Mecanim 动画系统的各个部分是如何连接在一起的

上图演示了以下工作流程:

  1. 动画剪辑是从外部来源导入的或在 Unity 内创建的。在此示例中,它们是导入的人形动画
  2. 动画剪辑显示并排列在动画控制器中。因此,在动画器 (Animator) 窗口中会显示动画控制器。状态可表示动画或嵌套的子状态机,显示为通过线条连接的节点。此动画控制器作为资源存在于项目 (Project) 窗口中。
  3. 骨架角色模型(名为 Astrella 的宇航员)具有映射到 Unity Avatar 格式的特定骨骼配置。此映射存储为 Avatar 资源,并且位于项目窗口中的导入角色模型下。
  4. 对角色模型进行动画化时,角色模型会附带一个动画器 (Animator) 组件。在检视面板 (Inspector) 视图中,动画器组件已将动画控制器Avatar 分配了出去。动画器将这些一起用于对模型的动画化过程。仅在对人形角色进行动画化时,才需要引用 Avatar。对于其他动画类型,只需要使用动画控制器。

以下主题提供了有关 Mecanim 动画系统的更多详细信息:

动画
动画剪辑