Mecanim 动画系统以动画剪辑为基础。动画剪辑包含有关角色或游戏对象如何随时间改变其位置、旋转或其他属性的信息。可以将每个动画剪辑视为录制。来自外部来源的动画剪辑由美术师或动画师使用第三方软件(例如 Autodesk® 3ds Max® 或 Autodesk® Maya®)创建。
可以将多个动画剪辑编入称为动画控制器 (Animator Controller) 的一个类似于流程图的结构化系统中。动画控制器充当状态机,跟踪正在播放的动画剪辑以及应该播放下一个动画剪辑的条件。
例如,一个简单的动画控制器可能包含一个可旋转和反弹的可收集项的动画剪辑。门的动画控制器可能包含两个动画剪辑:一个用于开门,另一个用于关门。
更高级的动画控制器可能包含十几种人形动画,用于角色的每个动作,例如空闲、转弯、行走和慢跑。此动画控制器可以使用混合树在多个动画剪辑之间进行混合,并在玩家在场景中移动时实现流畅运动。
Mecanim 动画系统还提供了用于处理人形角色的特殊功能,包括能够将动画从一个源重定向到另一个源,以及调整肌肉定义以确保角色正确变形。例如,您可以将第三方动画库中的动画重定向到您自己的角色上,然后调整其运动范围。这些特殊功能由 Unity 的 Avatar 系统启用;在此系统中,人形角色会被映射到一种通用的内部格式中。
动画剪辑、动画控制器和__ Avatar__用于将动画从一个骨架重定向到另一个骨架的接口。更多信息
See in Glossary 都通过带 动画 (Animator) 组件的游戏对象连接在一起。该组件引用了动画控制器,并在需要时引用此模型的 Avatar。动画控制器还会引用其动画剪辑。
上图演示了以下工作流程:
Astrella 的宇航员)具有映射到 Unity Avatar 格式的特定骨骼配置。此映射存储为 Avatar 资源,并且位于项目窗口中的导入角色模型下。以下主题提供了有关 Mecanim 动画系统的更多详细信息: