本部分介绍如何绘制骨骼动画。
使用骨骼,可以在为角色创建任何几何体之前,创建完整的角色动画序列。
使用“Animation”>“IK”>“New Skeleton” 创建骨骼,然后使用“Animation”>“IK”>“Add IK Handle”
、“Animation”>“Tools”>“Create Constraint”
和“Animation”>“Keyframe”>“Set keyframe”
或“Animation”>“Keyframe”>“Auto Keyframe”
来通过旋转和平移参数设置角色的动画。
您可以独立于动画为角色创建层次几何体,然后可以使用“Animation”>“Editors”>“Skeletons” 将该层次中的 DAG 节点转换为关节 DAG 节点。之后,可以使用“Animation”>“Edit”>“Overlay Skeleton”
将动画和其他骨骼属性覆盖在模型中相应的关节节点上。
Select the root of the skeleton that is to be copied.
选择“Animation”>“Tools”>“Bone Style”
指定骨骼样式。
下图演示了各种骨骼样式。
Select the root of the skeleton to be copied to. Pick the root node of the destination skeleton that is to receive the same animation and skeleton attributes as the source skeleton.
在选择了目标骨骼之后,源骨骼中每个关节节点的平移和旋转动画都将复制到目标骨骼中相应的关节节点。
有关关节信息的完整描述,请参见“Animation”>“Editors”>“Skeletons”。
另外,关节限制以及其他关节信息也将复制到目标骨骼中相应的关节节点。
如果骨骼 1 的每个关节节点与骨骼 2 中相应的关节节点具有相同数量的直接子关节节点,则表示这两个骨骼的拓扑相同。在下面的 SBD 窗口图中,“Skeleton 1”和“Skeleton 2”的拓扑相同。
这些图表明可以将拓扑相同的骨骼的非关节 DAG 节点组合到关节节点上方、下方或同级项的任何位置。通过 DAG 节点层次确定骨骼时,非关节 DAG 节点将被忽略。
有时,两个骨骼具有相同的拓扑,但是其拓扑的意义有所不同。例如,两个骨骼可以有两个分支,每个分支由三个组关节节点组成,分别代表腿的髋关节、膝关节和踝关节。区别在于,一个骨骼中的第一个分支代表右腿,而另一个骨骼中的第一个分支代表左腿。
如果使用“Overlay skeleton”将一个骨骼的动画复制到另一个骨骼,则左腿的动画将会复制到右腿,而右腿的动画被复制到左腿。若要确保将动画复制到相应的正确分支,请使用 SBD 交换图标(位于 SBD 窗口标题栏上)或 +箭头键 (Windows) 或
+箭头键 (Mac) 组合来交换 SBD 窗口中不同分支的位置。
可以使用“Animation”>“IK”>“New Skeleton” 创建由轴心点或关节位置定义的骨骼。
使用 “Animation”>“IK”>“New Skeleton” 创建骨骼。
在创建每个关节时,会向场景结构图 (SBD) 中添加一个 DAG 节点,而且系统会在建模窗口中绘制一个将该关节与上一个关节连接的骨骼。
在绘制骨骼之后,可使用“Edit”>“Duplicate”>“Mirror” 复制和镜像该骨骼,从而创建原始骨骼的反向副本。
还可以通过在骨骼编辑器(“Animation”>“Editors”>“Skeletons”)中切换关节状态,将现有的 DAG 节点转换为关节节点,或者使关节节点成为一般的 DAG 节点。
如果使用“New skeleton”,那么,每次在建模窗口中单击时,就会创建一个新的关节节点作为活动关节节点的子节点,而且系统将会在这两个关节之间绘制一个骨骼。
每次您以这种方式创建关节 DAG 节点时,该节点的轴心点位置会位于您上次在该窗口中单击的位置(还可以通过在键盘上输入轴心点位置来创建新的关节 DAG 节点)。
骨骼是在关节节点与距其最近的祖先节点之间,通过连接这两个节点的旋转轴心点而绘制的。可以更改骨骼的形状(请参见“Animation”>“Tools”>“Bone Style”
)或完全关闭骨骼的显示(请参见“Animation”>“Show”>“Skeletons”
)。
三维骨骼的实际尺寸由轴心点之间的距离定义。骨骼的较大一端显示其上方关节 DAG 节点的旋转轴心点所在的位置,骨骼的较小一端指向其下方关节 DAG 节点的旋转轴心点。由于骨骼是由轴心点定义的,因此您可以使用“Transform”>“Local”>“Set Pivot” 来更改骨骼的长度。
可以通过在应用程序窗口中多次单击来创建关节链。若要创建层次,请在按住 键的同时按小键盘上的四个箭头键之一,在关节节点层次中四处移动。
本部分介绍如何在应用程序窗口中打开或关闭骨骼及其相关约束或 IK 控制柄的显示。
使用反向运动 IK 控制柄,可以控制骨骼不同部分的移动而不会干扰骨骼其他部分。
“Animation”>“IK”>“Add IK Handle”
是一种连续操作工具,可以每次向骨骼中添加一个 IK 控制柄。若要添加单链控制柄,请在该工具的选项框中选择“Single-chain”。然后选择根关节,最后选择末端效应器关节。该工具在执行此操作之后仍然保持激活状态,因此您可以继续选择骨骼的其他部分,以便放置其他 IK 控制柄。
Pick a joint as the root of a single-chain (multi-chain or spline) handle. Pick a root joint to start the handle. (You can drag a pick box around a joint to select it.)
Pick a descendant joint as the end-effector of the single chain (multi-chain or spline) handle. Pick an end joint.
Pick a curve node as the target of the spline handle. Pick the curve.
可以通过以下多种方式,在建模窗口中控制样条曲线控制柄:
如果拾取的是根控制柄,可以采用以下任一方式:
如果拾取的是主控制柄,请使用“Transform”>“Rotate” 和
扭曲该链。
您可能希望使用样条曲线 IK 来控制骨骼的形状,但不控制骨骼在空间中的位置。如果您希望使用一条曲线来控制不同位置的多个相似对象的形状,该功能非常有用。执行以下操作:
使用“Animation”>“IK”>“Set Rest Pose” 定义中性姿势。
单链 IK 解算器使用静止姿势,其所有的唯一解都源于该姿势。静止姿势是关于各个关节的一组值,为 IK 解提供初始值。
每个骨骼关节都“记住”其平移和旋转的静止值(X、Y 和 Z 值)。静止姿势可以复制和镜像到相似的骨骼。有关还原为静止姿势的信息,请参见“使关节和 IK 骨骼恢复为静止姿势”。
或者,可以拾取 IK 控制柄,为 IK 链上的所有关节设置静止姿势。
使用“Animation”>“IK”>“Assume Rest Pose”可将骨骼恢复为其中性姿势。
每个骨骼关节可以采用静止值作为其平移值、旋转值、X 值、Y 值和 Z 值。还可以将关节或一般节点恢复为其中性姿势(即,将其平移值、旋转值、X 值、Y 值和 Z 值均设置为零)。
默认情况下,静止姿势和中性姿势相同。可以使用“Animation”>“IK”>“Set Rest Pose” 更改静止姿势。详细信息请参见“为 IK 骨骼创建中性姿势”。
还可以拾取一个 IK 控制柄,使 IK 链上的所有关节均采用静止姿势。
使用“Windows”>“Information”>“Information Window”菜单项可显示详细信息。
IK 控制柄的名称。可以编辑此字段。
关闭 IK 控制柄的边界盒的显示。
关闭 IK 控制柄的显示。
控制柄的平移坐标。此时,这些坐标是唯一可以编辑的坐标,因为对于“Control type”选择了“TRANSLATION ONLY”。旋转和缩放功能不用于控制该控制柄的行为。
控制柄的旋转轴心点坐标。
控制柄的局部坐标轴坐标。
控制柄的缩放轴心点坐标。
为控制柄的边界盒(由“Limb axis”和“Plane indicator”组成)设置的限制。
边界盒的尺寸。“Size”=“Max”-“Min”。
IK 控制柄的类型:单链、多链或样条曲线。
单击这些按钮可启用或禁用 IK 控制柄。处于禁用状态的 IK 控制柄仍然可见,但是对 IK 链不起作用。若要完全隐藏它,请在 IK 控制柄部分的顶部单击“Invisible”。
位于骨骼层次中最顶层的受 IK 控制柄影响的关节。
位于骨骼层次中最底层的受 IK 控制柄影响的关节。
一个单链 IK 控制柄有三个级别的控制设置,可从“Control type”弹出菜单访问这些设置。
“Pole order”字段用于确定要使用哪两个自由度来旋转极轴。在前面的平面旋转图解示例中,骨骼是在 XY 平面中绘制的。因此,在创建 IK 控制柄时,极轴将自动沿 Z 轴(即,垂直于骨骼平面)放置,而且极点顺序是 ZXY。这意味着,所创建的极轴将与 IK 控制柄的 Z 轴平行(因此与 Z 轴一样也是蓝色),轴方向将通过对极轴先后应用局部 X 旋转和 Y 旋转来调整。
IK 控制柄的解将自行定向到与坐标系同向,以便正常工作。坐标系的方向与关节(“LOCAL”)或场景(“WORLD”)方向一致。
如果 IK 链始终不需要改变其静止位置的方向,则在对骨骼设置动画时只需使用默认设置“Translation Only”。例如,如果行走循环中一个简单两足动物角色的腿部朝向一个固定方向(即,膝部总是朝向前方),则只需平移腿的 IK 控制柄。
但是,如果需要使这个两足动物角色具有“罗圈腿”或“八字脚”外观,或者该角色正在跳舞,则可能需要旋转两条腿的骨骼平面才能实现此效果。在这种情况下,请在“Information Window”中为这些控制柄选择“Plane Rotation”设置,并相应地调整“Plane Rotate”字段。
只有在要将骨骼链的动画设置为在场景中的很大范围内运动时,才需要使用“Plane/Pole Rotation”设置来调整极轴的旋转。特别是,如果链的肢体轴靠近极轴,则该链可能会发生意外的“翻转”;通常,您将需要对极轴进行移动/动画设置,使控制柄的肢体轴不会在给定的场景期间过于靠近极轴。
在链上创建单链 IK 控制柄时,会创建一个与骨骼静止时所在平面垂直的极轴。只要该链不是从距离静止位置很远的位置进行扭曲,而且该链的肢体轴不靠近极轴,则适合从极轴的这一默认位置对骨骼设置动画。否则,可能需要调整极轴或对其设置动画,才能避免该链翻转。
下面是两个躯干的示例,演示了如何利用“POLE/PLANE ROTATION”来实现各种手臂移动效果。
在该示例中,两个躯干完全相同,左手臂上都有 IK 控制柄。“Plane rotate”的默认值是 90 度。“Pole rotate Y”和“Pole rotate Z”的默认值都是零度。左侧的躯干需要执行一个喝水运动,而右侧的躯干将执行跳跃运动。
如果单链控制柄的根关节继承非等比缩放,则平面的世界空间方向将不起作用。
可使用“Run IK”中的运动模糊补偿选项。这样会在靠近跳跃位置的运动模糊采样点处插入其他关键帧。
本部分介绍如何控制 IK 控制柄的显示。
打开或关闭 IK 控制柄可使其处于启用或禁用状态。
您可以执行下列操作:
当 IK 控制柄处于禁用状态时,其行为就像不存在一样,此时您无法选择该控制柄。可以从信息窗口启用或禁用各 IK 控制柄。
使用“Edit”>“Duplicate”>“Mirror” ,可以根据轴平面创建层次的对称副本。
这一功能适用于骨骼以及普通层次,可镜像 IK 控制柄、约束、静止姿势、限制、动画和所选控制柄。
使用该功能,可以执行下列操作:
(与之相对,“Layers”>“Symmetry”按对象副本对称,因此,实际上并不会复制几何体)。
(与之相对,“Layers”>“Symmetry”允许您使用任意对称平面,而且只有几何体变为对称(即,只有叶级别受到影响)。
若要最大程度地利用“Mirror”,请在原点创建角色,然后仅在镜像完成之后对该角色进行变换并执行任何簇附着操作。
选择“Edit”>“Duplicate”>“Mirror” 打开“Mirror Options”框。从该框中可以选择两种类型的镜像和三个镜像平面。
允许您拾取一个分支作为源分支。该工具可复制此分支并将其节点镜像到新分支上。
此时将创建一个新分支作为所拾取分支的同级项。新分支将沿选项框中所定义的平面(“Mirror Across”设置)进行镜像。该分支上的所有 IK 控制柄、约束、动画和骨骼也将被复制和镜像。
您还可以拾取该分支,然后选择“Mirror”项。
允许您拾取现有的分支作为目标分支,而不是使用该工具创建目标分支。选中此选项后,不会镜像几何体。
第一个分支将重塑为第二个分支的镜像。第一个分支上的所有 IK 控制柄、约束、动画和骨骼将替换为根据第二个分支复制和镜像的新对象。
在世界空间中,镜像提供三个镜像平面。此选项可指定用于以后的镜像操作的平面。
使用“Animation”>“IK”>“Run IK”,可借助于附着到骨骼的多链 IK 控制柄创建动画,以便对动画进行渲染。
您可以通过约束动画的所有帧查看骨骼动画。在该操作结束时,系统将使用骨骼的 IK 控制柄设置骨骼的动画。