Example: Duplicating animation on non-matching hierarchies
 
 
 

With containers, you can also transfer attributes between models composed of different component types and different configurations. In the following example, the walk cycle for a skeleton is transferred to a robot model with no joints at all.

The components for both the skeleton and the robot each reside within their own containers.

However, unlike the previous example, the robot’s pivot points don’t match precisely with the skeleton’s joints. For example, the robot’s elbow is composed of three parts, each of which only rotate in one direction. The skeleton’s elbow is a single joint that rotates in all 3 directions.

To ensure that the robot will mimic the skeleton properly, you must publish each of these individual elbow rotations as one axis of the container’s elbow rotation.

However, just publishing the rotations axis-to-axis does not yield the correct result. This is because the axis of each elbow part is not consistent with the corresponding axes of Person A’s elbow joint.

For example, the robot’s elbow1 X axis actually maps to the skeleton elbow’s Y axis.

To fix this problem, you must rename the attributes as you publish them. By publishing elbow1’s rotateX as the container’s rotateY, you ensure that the movement of the robot’s elbow matches that of the skeleton.

To publish three elbow parts as a single elbow

  1. From the Outliner, select the robot’s left elbow1 node.
  2. Select elbow1’s rotateX attribute in the Channel Box.
  3. Select Assets > Publish to Container > .

    The Publish to Container Options window appears.

  4. Set Publish to Selected channel box attributes.
  5. Set Attribute name to Custom name.
  6. Set Custom string to lelbow.rotateY.

Repeat the above procedure mapping elbow2’s rotateY to the container’s rotateZ and elbow3’s rotateZ to the container’s rotateX.

Once you have published these attributes, you can transfer values from the skeleton container to the robot container.

To transfer the walk cycle to another character

  1. From the Outliner, select PersonA_CNT.
  2. + robot_CNT.
  3. Select Edit > Transfer Attribute Values> .

    The Transfer Attribute Values Options window appears.

    Turn Values on.
  4. Set In connections to Share with source.
  5. Click Apply and Close.

    The robot changes position to match Person A.

  6. Play the animation to see how Person A’s walk cycle is replicated on the robot.

The walk cycle can be duplicated from the skeleton to the robot because at the container level the two objects appear the same, regardless of their internal components.