Control Rig反向计算

概述Control Rig的正向解算和反向解算

Windows
MacOS
Linux

你可以使用Control Rig修改现有的骨骼动画。Rig反向计算(Rig inversion) 使用户能够将现有动画重新映射到动画rig上,以便用户使用Sequencer调整Gameplay或过场动画。Control Rig中的Backwards Event节点将定义骨骼地图如何映射到控制点或其他控制逻辑。借助Numerical Pre-Sequencer功能,用户能够通过在Sequencer中为每帧动画运行反向解算事件来烘焙到Control Rig。该解决方案允许编辑现有动画序列或编辑记录的运动捕获数据等工作流。

以下方案可用于处理反向的Control Rig轨道。

正向解算

image alt text

使用 正向解算(Forward Solve) ,通过控制点或其他程序化逻辑(例如IK或正弦波)来操控骨骼。与Forward Solve RigUnit节点建立连接。

image alt text

反向解算

image alt text

使用 反向解算(Backwards Solve) 来处理所有需要应用到控制点的传入骨骼动画数据。可以与Backwards Solve RigUnit节点建立连接。

image alt text

反向解算和正向解算

image alt text

先计算反向解算,然后是正向解算。这使得任何带有传入骨骼动画的控制操作首先会驱动控制点。在Control Rig编辑器中,这仅限于预览模式中。

image alt text

Sequencer工作流

如需让Control Rig反向计算在Sequencer中工作,请遵循以下步骤:

  1. 创建关卡序列并将指定的骨骼网格体Actor添加到你的轨道中。

  2. 添加动画轨道并将动画应用到该Actor。

    image alt text

  3. 选择Actor并右键点击,以便显示Control Rig的选项。

    image alt text

使用FKControl Rig进行编辑

此功能将FK控制器添加到所有骨骼,然后将骨骼的动画烘焙到生成的FK控制器上。为关卡序列中的骨骼网格体Actor创建了一个新轨道。

右键点击并选择 使用FK Control Rig进行编辑(Edit with FK Control Rig)

image alt text

这会向名为 FKControlRig 的选定骨骼网格体Actor添加一个新的Control Rig轨道,该轨道在每个控制点都有烘焙关键帧。该过程在关卡序列开始和结束时间进行烘焙。任何之前的动画分段都将显示为灰色。

打开 FKControlRig 轨道,每个控制点上都有关键帧。

要微调编辑,请打开 图表编辑器(Graph Editor),编辑关键帧和曲线。

image alt text

烘焙到Control Rig

此功能类似于**使用FK Control Rig进行编辑(Edit with FK Control Rig)**;但是,除了使用FK Control Rig,还可以应用自定义Control Rig。对于此工作流,至少有一个Control Rig资产需要对所选骨骼网格体Actor的骨架实现反向解算。

右键点击并选择 使用烘焙到Control Rig(Bake to Control Rig)。这将显示你可以从中选择的Control Rig资产列表。

image alt text

选中 按骨架筛选资产(Filter Asset by Skeleton) 复选框,以便仅显示使用当前骨骼网格体Actor骨架的Control Rig资产。

image alt text

使用FK Control Rig进行编辑(Edit with FK Control Rig) 过程类似,此操作会向选定的骨骼网格体Actor添加新的Control Rig轨道。然而,轨道具有所选Control Rig的名称。

image alt text

该轨道在每个控制点上都有烘焙关键帧(baked key)。该流程会在关卡序列开始和结束时间进行烘焙。任何之前的动画分段都将关闭。要微调编辑,请打开 图表编辑器(Graph Editor),并编辑关键帧和曲线。

image alt text

恢复动画

虽然烘焙到FK或自定义Control Rig的功能很重要,但你也可以删除它们,并让动画驱动骨骼网格体。为此,只需从指定的骨骼网格体Actor中移除Control Rig轨道即可。

结果应该是Actor中的剩余轨道。要重新激活动画,请右键单击该分段并将其设置为 激活(Active)

image alt text

受影响的元素

在指定的Control Rig资产中,你可以使用 受影响的元素 填充骨骼层级或控制层级。它填充到任一层级中后,受影响的元素就会出现在另一个层级中,因此你无需重复操作。此信息仅用于允许Sequencer中反转Rig和FK元素之间选择的同步;反转运行不需要此信息。

要在Control Rig编辑器中添加受影响的元素,请转到 细节(Details) 面板。打开 反转(Inversion) 类别,点击 + 按钮,添加元素。然后,选择 元素类型(Element Type)。最后,选择 元素名称(Element Name)这也适用于不同的元素类型。

image alt text

要在Control Rig编辑器中设置受影响的元素,请转到 细节(Details) 面板底部。打开 反转(Inversion) 类别,并从 受影响元素(Affected Elements) 下拉菜单,选择 控制点(Control)骨骼(Bone)

image_21.png

这里可以为 Interaction Rig 建立控制点和骨骼之间关系。建立此连接后,Interaction Rig能够从操控的控制点为受影响的骨骼设置关键帧。

然后,在 Control Rig 中选择新设置的元素;在刚刚设置的元素的 反转(Inversion) 分段中,有设置的内容相对应的新元素列表。

使用Sequencer设置Interaction Rig

为所需的Control Rig设置了受影响的元素后,返回到Sequencer中的关卡序列(Level Sequence),并执行以下步骤:

  1. 选择 骨骼网格体Actor绑定轨道(Skeletal Mesh Actor Binding track),然后右键点击它,并选择 使用FK Control Rig进行编辑(Edit with FK Control Rig)。

    image alt text

    结果应如下所示,如 使用FK Control Rig进行编辑 小节所述。

  2. 要应用 Interaction Rig 系统,找到 动画模式窗口(Animation Modes Window),然后找到 动画模式(Animation Mode) 下的 交互(Interaction) 类别。

    image alt text

  3. 使用下拉列表,选择使用 受影响的元素(Affected Elements) 设置的所需Control Rig对象。

    image_30.png

    完成后,将在视口中应用Control Rig资产;但是,Sequencer中没有Control Rig轨道。

    这会将选定的Control Rig连接到FKControlRig,从而允许操控Control Rig向下填充到FKControlRig。在动画模式(Animation Mode)窗口中选择控制按钮会突出显示其影响的FKControlRig轨道。

    image alt text

标签
欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消