__动画剪辑__是 Unity 动画的最小构成元素。它们代表了一个单独的运动,例如 RunLeft、Jump 或 Crawl,并且可通过各种方式进行操作和组合,从而产生生动的效果(请参阅动画状态机(Animation State Machines)、Animator Controller 或混合树(Blend Trees))。 您可以从导入的 FBX 数据中选择动画剪辑。
单击包含动画剪辑的模型时,将显示以下属性:
Inspector 窗口的 Rig 选项卡包含四个区域:
这些属性适用于此资源中定义的所有动画剪辑和约束:
属性: | 功能: | |
---|---|---|
Import Constraints | 从此资源导入约束。 | |
Import Animation | 从此资源导入动画。 注意:如果禁用此选项,则会隐藏此页面上的所有其他选项,并且不会导入任何动画。 |
|
Bake Animations | 烘焙通过反向动力学 (IK) 或模拟 (Simulation) 创建的动画以便推进运动关键帧。 仅可用于 Maya、3ds Max 和 Cinema 4D 文件。 |
|
Resample Curves | 将动画曲线重新采样为四元数值,并为动画中的每个帧生成一个新的四元数关键帧。 默认情况下会启用此选项。 仅当原始动画中的关键点之间存在插值问题时,才应禁用此选项来保留最初创作的动画曲线。 仅当导入文件包含欧拉曲线时才会显示此选项。 |
|
Anim. Compression | 导入动画时要使用的压缩类型。 | |
Off | 禁用动画压缩。这意味着 Unity 不会在导入时减少关键帧数量,因此可产生最高精度的动画,但性能会降低、文件会更大、运行时内存大小将增加。通常建议不要使用此选项;如果需要更高精度的动画,应启用关键帧减少 (Keyframe Reduction) 功能并减小允许的 Animation Compression Error 值。 | |
Keyframe Reduction | 导入时减少冗余关键帧。如果选择此选项,则会显示 Animation Compression Errors 选项。这会影响文件大小(运行时内存)以及如何计算曲线。 | |
Keyframe Reduction and Compression | 导入时减少关键帧并在文件中存储动画时压缩关键帧。这仅影响文件大小;运行时内存大小与 Keyframe Reduction 相同。如果选择此选项,则会显示 Animation Compression Errors 选项。 | |
Optimal | 让 Unity 决定如何进行压缩:通过减少关键帧还是通过使用密集格式。 仅适用于 Generic 和 Humanoid 动画类型骨架。 |
|
Animation Compression Errors | 仅当启用 Keyframe Reduction 或 Optimal 压缩时可用。 | |
Rotation Error | 旋转曲线的减少量。该值越小,精度越高。 | |
Position Error | 位置曲线的减少量。该值越小,精度越高。 | |
Scale Error | 缩放曲线的减少量。该值越小,精度越高。 | |
Animated Custom Properties | 导入您指定为自定义用户属性的任何 FBX 属性。 Unity 在导入 FBX 文件时仅支持一小部分属性(例如转换、旋转、缩放和可见性)。但是,您可以借助 extraUserProperties 成员,在导入器脚本中指定标准 FBX 属性(如用户属性)来处理这些属性。在导入期间,Unity 会将所有这些指定属性传递给资源后处理器 (Asset postprocessor),就像“真实”用户属性一样。 |
在 Rig 选项卡的此区域中可执行以下任务:
+
) 按钮为此文件创建新剪辑。-
) 按钮删除所选的剪辑定义。Rig 选项卡的此区域显示以下特性:
您可以为此资源中定义的每个动画剪辑单独设置以下属性:
属性: | 功能: | |
---|---|---|
A 区域(可编辑名称) | ||
源文件中的剪辑,用作此动画剪辑的源。 此属性定义了在 Motionbuilder、Maya 和其他 3D 包中提取的一组动画。Unity 可以将这些内容导入为单个剪辑。您可以从整个文件或从帧子集创建它们。 |
||
B 区域(时间轴特性) | ||
您可以通过在时间轴上拖动起始和结束标记来定义每个剪辑的帧范围。 | ||
Start | 剪辑的起始帧。 | |
End | 剪辑的结束帧。 | |
C 区域(循环和姿势控制) | ||
Loop Time | 播放动画剪辑并在到达结尾时重新开始。 | |
Loop Pose | 无缝循环运动。 | |
Cycle Offset | 循环动画在其他时间开始时的周期偏移。 | |
Root Transform Rotation | ||
Bake into Pose | 将根旋转烘焙到骨骼移动。禁用此选项将会存储为根运动。 | |
Based Upon | 根旋转的基础。 | |
Original | 保持源文件中的原始旋转。 | |
Root Node Rotation | 保持上半身朝前。 仅适用于 Generic 动画类型。 |
|
Body Orientation | 保持上半身朝前。 仅适用于 Humanoid 动画类型。 |
|
Offset | 根旋转偏移(以度为单位)。 | |
Root Transform Position (Y) | ||
Bake into Pose | 将垂直根运动烘焙到骨骼移动。禁用此选项将会存储为根运动。 | |
Based Upon (at Start) | 垂直根位置的基础。 | |
Original | 保持源文件中的垂直位置。 | |
Root Node Position | 使用垂直根位置。 仅适用于 Generic 动画类型。 |
|
Center of Mass | 保持质心与根变换位置对齐。 仅适用于 Humanoid 动画类型。 |
|
Feet | 保持双脚与根变换位置对齐。 仅适用于 Humanoid 动画类型。 |
|
Offset | 垂直根位置偏移。 | |
Root Transform Position (XZ) | ||
Bake into Pose | 将水平根运动烘焙到骨骼移动。禁用此选项将会存储为根运动。 | |
Based Upon | 水平根位置的基础。 | |
Original | 保持源文件中的水平位置。 | |
Root Node Position | 使用水平根变换位置。 仅适用于 Generic 动画类型。 |
|
Center of Mass | 保持与根变换位置对齐。 仅适用于 Humanoid 动画类型。 |
|
Offset | 水平根位置偏移。 | |
Mirror | 在此剪辑中进行左右镜像。 仅当动画类型 (Animation Type) 设置为 Humanoid 时才显示。 |
|
Additive Reference Pose | 启用此选项可以设置附加动画层基础参考姿势的帧。在时间轴编辑器中可以看到蓝色标记: |
|
Pose Frame | 输入一个帧编号以用作参考姿势。还可以在时间轴中拖动蓝色标记来更新此值。 仅当启用 Additive Reference Pose 的情况下才可用。 |
|
D 区域(可展开部分) | ||
Curves | 展开此部分可管理导入的剪辑上的动画曲线。 | |
Events | 展开此部分可管理导入的剪辑上的动画事件。 | |
Mask | 展开此部分可管理对导入剪辑的遮罩。 | |
Motion | 展开此部分可管理根运动节点的选择。 | |
Import Messages | 展开此部分可查看有关如何导入动画的详细信息,包括可选的重定向质量报告 (Retargeting Quality Report)。 |
创建剪辑实质上是定义动画段的起点和终点。为了使这些剪辑循环,应修整这些剪辑,使它们尽可能匹配所需循环的第一帧和最后一帧。
如果在动画导入过程中出现任何问题,动画导入检视面板 (Animations Import Inspector) 顶部会显示警告:
这些警告并不一定意味着您的动画未导入或不正常。可能仅表示导入的动画与源动画看起来略有不同。
要查看更多信息,请展开 Import Messages 部分:
在这种情况下,Unity 提供了 Generate Retargeting Quality Report 选项,通过启用该选项可以查看有关重定向问题的更多具体信息。
您可能会看到的其他警告详细信息包括:
这些消息表明 Unity 导入动画并将其转换为自己的内部格式时忽略了原始文件中的某些数据。这些警告实质上告诉您重定向的动画可能与源动画不完全匹配。
注意:Unity 不支持除常量 (constant) 以外的前外推 (pre-extrapolate) 和后外推 (post-extrapolate) 模式(也称为前无限 (pre-infinity) 和后无限 (post-infinity) 模式),因此会在导入时将这些模式转换为常量。
Rig 选项卡的预览区域提供以下特性: