Motion Retargeting
动作重定向
The retargeting tools are designed to transfer motion from one hierarchy of objects to another. These new tools are specifically trying to correct common issues that arise from this type of motion transfer: issues with mismatched hierarchies, as well as initial object orientation and character proportions differences. While primarily designed to work with a character joints hierarchy, it can be used with any hierarchy of objects.
重定向工具的目的是将运动从一个层次的对象转移到另一个。这些新的工具特别试图纠正这种类型的运动转移所产生的共同问题: 错误匹配的层次结构,以及初始的对象方向和字符比例的差异。虽然主要是设计用于与字符关节层次结构,它可以用于任何层次的对象。
The tools are split between two tags: the Character Definition tag, which is used to identify, map out and match objects between hierarchies, and the Motion Solver tag, which is used to transfer the motion from one hierarchy to the other.
这些工具被分成两个标签: 字符定义标签,用于在层次结构之间识别、映射和匹配对象; 运动规划标签,用于将运动从一个层次结构转移到另一个层次结构。
The Character Definition tag can be set up for each individual character and provides context for the Motion Solver. It is used to identify which object should be matched to which and store additional information such as a reference pose.
可以为每个单独的字符设置字符定义标记,并为运动求解器提供上下文。它用于识别哪个对象应该匹配到哪个对象,并存储额外的信息,如引用姿态。
Compared to the old Retarget tag, these new tools match objects using naming conventions, which allows retargeting between hierarchies that are structured differently. The Motion Solver can also transfer motion between hierarchies of objects that do not have the same initial orientation, which makes these tools useful for much more user-cases than the old Retarget tag (which only works with identical hierarchies and object orientations).
与旧的 Retarget 标记相比,这些新工具使用命名约定来匹配对象,这允许在结构不同的层次结构之间进行重定位。运动求解器还可以在不具有相同初始方向的对象的层次结构之间传递运动,这使得这些工具比旧的 Retarget 标记(只适用于相同的层次结构和对象方向)对更多用户有用。
.

工作流程摘要
To use motion retargeting, you will need a defined source (your animated source skeleton/hierarchy), a defined target (your recipient skeleton/hierarchy) and a Motion Solver tag applied to the target to transfer animations from the source hierarchy.
要使用运动重定向,您需要一个已定义的源(动画源骨架/层次结构)、一个已定义的目标(收件人骨架/层次结构)和一个应用于目标的运动求解标记,以便从源层次结构中传输动画。
As an example case, if we want to transfer motion between two characters, we can follow these steps:
举个例子,如果我们想要在两个字符之间传递运动,我们可以按照以下步骤:
-
Make sure both target and source characters are in their rest pose (T-Pose recommended, for characters) and
facing the same way (negative Z axis is recommended).
确保目标字符和源字符都处于静止姿态(对于字符,推荐使用 t 型姿态) ,并且面向相同的方向(推荐使用负 z 轴)
-
Add a Character Definition tag to each root joint (the joint at the top of the hierarchy, usually the hips
joint).
添加字符定义标签到每个根关节(关节在层次结构的顶部,通常是髋关节)
-
Open the Definition Manager of the source and target skeletons by using the Open Manager command found in the
Attributes of the Character Definition tag of each character.
使用 Open Manager 命令打开源和目标框架的 Definition Manager,该命令可以在每个字符的字符定义标签的 Attributes 中找到
-
From here, you can use the Extract Skeleton command to automatically assign joints to their respective
components/body parts by following custom or preset naming conventions, or manually populate the body
parts list by directly assigning joints or objects to your body parts.
从这里开始,你可以使用 Extract Skeleton 命令,按照自定义或预设的命名规则,自动将关节分配到各自的组件/身体部位,或者直接将关节或物体分配到你的身体部位,手动填充身体部位列表
After identifying your hierarchy of joints or objects, you can then transfer motion from the source to the target character by adding a Motion Solver tag to the target character and assigning both source and target Character Definition tags to the Motion Solver tag. 在确定了关节或物体的层次结构之后,你可以通过在目标字符上添加一个运动求解标签,并在运动求解标签上分配源和目标字符定义标签,将运动从源转移到目标字符
字符定义标签
运动规划标签





