目录
前言
旧版动画系统
处理旧版动画
Animation组件
Rig 选项卡
通用动画类型
人形动画类型
Animation 选项卡
Model 选项卡
前言
Unity可以用两种方式控制动画
1 Animation,这种方式简单,直接 Play(“Idle”)或者CorssFade(“Idle”)就可以播放动画;
2 Animator,Unity5.x之后推荐使用这种方式,因为里面可以加上混合动画,让动画切换更加平滑。
注:
如果动画简单可以使用Animation;
CorssFade(“Idle”)比 Play(“Idle”)过度更自然。
旧版动画系统
在引入 Mecanim 之前,Unity 使用过一种更简单的动画系统。为了向后兼容,该系统仍然可用。使用旧版动画系统的主要原因是可以继续直接处理旧项目,而无需为了 Mecanim 更新该项目。但是,建议不要将旧版系统用于新项目。
处理旧版动画
要导入旧版动画,必须先在 Import Settings 窗口的 Rig 选项卡中将 Animation Type 设置为 __Legacy__:
您的绑定使用旧版动画系统
| 属性: | 功能: | |
|---|---|---|
| Generation | 选择动画导入方法。 | |
| Don’t Import | 不导入动画 | |
| Store in Original Roots (Deprecated) | 已弃用。请勿使用。 | |
| Store in Nodes (Deprecated) | 已弃用。请勿使用。 | |
| Store in Root (Deprecated) | 已弃用。请勿使用。 | |
| Store in Root (New) | 导入动画并将其存储在模型的根节点中。这是默认设置。 | |
| Skin Weights | 请参阅上文中有关 Skin Weights 属性的文档以了解此属性的相关信息。 | |
Animation组件
| 属性: | 功能: | |
|---|---|---|
| 动画 (Animation) | 启用 Play Automatically 的情况下播放的默认动画。 | |
| Animations | 可从脚本访问的动画列表。 | |
| Play Automatically | 启用此选项可在游戏开始时自动播放动画。 | |
| Animate Physics | 启用此选项可使动画与物理系统交互。 | |
| Culling Type | 确定何时不播放动画。 | |
| Always Animate | 始终进行动画化。 | |
| Based on Renderers | 基于默认动画姿势进行剔除。 | |
Rig 选项卡
Rig 选项卡上的设置定义了 Unity 如何将变形体映射到导入模型中的网格,以便能够将其动画化。对于人形 (Humanoid) 角色,这意味着需要分配或创建 Avatar。对于非人形角色(_通用 (Generic)_ 角色),这意味着需要在骨架中确定根骨骼。
默认情况下,在__项目__视图中选择模型时,Unity 会确定哪个__动画类型 (Animation Type)__ 与所选的模型最匹配,然后将其显示在 Rig 选项卡中。如果 Unity 从未导入该文件,则 Animation Type 设置为 __None__:
| 属性: | 功能: | |
|---|---|---|
| Animation Type | 指定动画类型。 | |
| None | 不存在动画 | |
| Legacy | 使用旧版动画系统。与 Unity 3.x 及更早版本一样导入和使用动画。 | |
| Generic | 如果骨架为非人形(四足动物或任何要动画化的实体),请使用通用动画系统。Unity 会选择一个根节点,但可以确定另一个用作__根节点__的骨骼。 | |
| Humanoid | 如果骨架为人形(有两条腿、两条手臂和一个头),请使用人形动画系统。Unity 通常会检测骨架并将其正确映射到 Avatar。有些情况下,可能需要更改 Avatar 定义 (Avatar Definition) 并手动对映射进行__配置 (Configure)__。 | |
通用动画类型
骨架为非人形(四足动物或任何要动画化的实体)
通用动画不会像人形动画那样使用 Avatar。由于骨架可以是任意形状,必须指定哪个骨骼是__根节点 (Root node)__。通过使用根节点,Unity 可在通用模型的动画剪辑之间建立一致性,并在尚未“在正确位置”(即,整个模型在动画化时移动其世界位置的位置)制作的动画之间正确混合。
指定根节点有助于 Unity 区分骨骼相对于彼此的移动与根节点在世界中的运动(通过 OnAnimatorMove 进行控制)。
人形动画类型
选A,点击Apply,出现骨骼映射面板。
选B,需要指定Source。
注意:
- 从MAX导入模型到Unity,需要选中模型和骨骼。
- 如果仅仅是导入动画,只需要选择骨骼,而且导出设置面板,需要取消勾选摄像机和灯光。需要勾选动画烘培。
- 如果要使动画可以用于另一个模型上,则需要动画和模型都选择同样的动画类型。不然模型无法播放此动画。
| Animation Type | 指定动画类型。 | |
| None | 不存在动画 | |
| Legacy | 使用旧版动画系统。与 Unity 3.x 及更早版本一样导入和使用动画。 | |
| Generic | 如果骨架为非人形(四足动物或任何要动画化的实体),请使用通用动画系统。Unity 会选择一个根节点,但可以确定另一个用作__根节点__的骨骼。 | |
| Humanoid | 如果骨架为人形(有两条腿、两条手臂和一个头),请使用人形动画系统。Unity 通常会检测骨架并将其正确映射到 Avatar。有些情况下,可能需要更改 Avatar 定义 (Avatar Definition) 并手动对映射进行__配置 (Configure)__。 | |
Animation 选项卡
| 属性: | 功能: | |
|---|---|---|
| Import Constraints | 从此资源导入约束。 | |
| Import Animation | 从此资源导入动画。 注意:如果禁用此选项,则会隐藏此页面上的所有其他选项,并且不会导入任何动画。 | |
| C 区域(循环和姿势控制) | ||
| Loop Time | 播放动画剪辑并在到达结尾时重新开始。 | |
| Loop Pose | 无缝循环运动。 | |
| Cycle Offset | 循环动画在其他时间开始时的周期偏移。 | |
Animation 选项卡 - Unity 手册 (unity3d.com)
Model 选项卡
选择模型时,模型文件的 Import Settings 显示在 Inspector 窗口的 Model 选项卡中。这些设置会影响模型中存储的各种元素和属性。Unity 使用这些设置导入每个资源,因此您可以调整任何设置以应用于项目中的不同资源。
| 属性 | 功能 |
|---|---|
| Scale Factor | 当原始文件比例(来自模型文件)不符合项目中的预期比例时,请设置此值以应用导入的模型中的全局比例。Unity 的物理系统希望游戏世界中的 1 米在导入文件中为 1 个单位。 |
| Convert Units | 启用此选项可将模型文件中定义的模型比例转换为 Unity 的比例。 |
| Bake Axis Conversion | 如果启用此属性,当您导入使用与 Unity 不同的轴系统的模型时,可将轴转换的结果直接烘焙到应用程序的资源数据(例如,顶点或动画数据)中。如果禁用此属性,将在运行时补偿根游戏对象的 Transform 组件以模拟轴转换。 |
| Import BlendShapes | 启用此属性可允许 Unity 随网格一起导入混合形状。请参阅下面的导入混合形状以了解详细信息。 注意:导入混合形状法线需要在 FBX 文件中具有平滑组。 |
| Import Visibility | 导入 FBX 设置,这些设置定义了是否启用 MeshRenderer 组件(可见)。有关详细信息,请参阅下面的导入可见性。 |
| Import Cameras | 从 .FBX 文件导入摄像机。有关详细信息,请参阅下面的导入摄像机。 |
| Import Lights | 从 .FBX 文件导入光源。有关详细信息,请参阅下面的导入光源。 |
| Preserve Hierarchy | 始终创建一个显式预制件根,即使这个模型只有一个根。通常,FBX Importer 会将模型中的任何空根节点作为优化策略进行剥离。但是,如果您的多个 FBX 文件中包含同一层级视图的某些部分,则可以使用此选项来保留原始层级视图。 例如,file1.fbx 包含一个骨架和一个网格,file2.fbx 包含相同骨架,但只包含该骨架的动画。如果在不启用此选项的情况下导入 file2.fbx,那么 Unity 将剥离根节点,层级视图将不匹配,并且动画暂停。 |
| Sort Hierarchy By Name | 启用此属性可在层级视图中按字母顺序对游戏对象进行排序。禁用此属性可保留 FBX 文件中定义的层级视图顺序。 |
Model 选项卡 - Unity 手册 (unity3d.com)



