User Guide > Characters > Rigging   

Transferring Attributes

In the following lessons you will learn how to transfer attributes between geometry based on proximity between the two models. A practical application of this is the transfer of capture attributes from a character model to an updated version of the same model with a different topology. Other uses of this transfer capability include passing attributes from one piece of geometry to another to help generate visual effects. Below are two lessons that take you through these scenarios.

Part One: Transferring Capture Attributes
Part Two: Transferring Attributes from a Metaball

Part One: Transferring Capture Attributes

The rigging of a character involves a lot of work setting up a particular piece of geometry to deform properly with the character rig. When a new piece of geometry with a different topology is introduced then Attribute Transfer can be used to quickly pass all of the capture attributes onto the new model.

For this lesson, you will pass capture information from an animated model of a monkey to a new version of the same model with a different topology.

Load Start File


1. Preview the Character Motion

At the Object level, scrub in the timeline to preview the motion. You can see the monkey's arms moving with some squash and stretch in the right arm. The goal of this lesson is to transfer this motion to a new piece of geometry. The model is currently shaded with colors indicating the surface attributes.


2. Navigate to the Geometry level

Select the monkey object then press i to go to the geometry level. Set the display flag on the New_monkey SOP. This is the geometry that will inherit the attributes of the original model. Click on the footprint flag on the capture_edit SOP which appears superimposed over the new geometry. You want to pass the capture information from the node preceding the Deform SOP. It is also important to make sure that the two models share the same space because the Attribute Transfer tool works based on the proximity of points on the new surface to points on the old surface.


3. Apply the Attribute Transfer tool

Press tab > AttribTransfer. Press 7 to choose Connected Primitive selection then click on a part of the old monkey. You can find it poking out in some areas such as the chest or the eyebrow. It will highlight in yellow. When you have it selected, RMB-click to accept.

Next, click on part of the new monkey where it is visible. It will highlight in cyan. RMB-click to accept then turn off the footprint flag on the capture_edit SOP. The new Monkey now shows the attribute colors transferred.


4. Test the Deform SOP

The new attributetransfer1 SOP has been inserted just before the deform_monkey SOP. Set the display flag for the deform_monkey SOP then scrub in the timeline to see if the attributes transferred over correctly. It seems like something is wrong!

Not all of the attributes made it over. Click on the attributetransfer1 SOP and in the Parameter pane, Click on the Detail checkbox under the Attributes tab. Again scrub in the timeline. The attributes have now been successfully transferred.


Part Two: Transferring Attributes from a Metaball

Another use of the Attribute Transfer tool is the ability to pass any attribute from one model to another. An artist may want to use this ability to help generate a visual effect.

The following lesson file includes a metaball is moving through the monkey's chest where a bulge SOP causes a slight deformation of the surface. You will add some arbitrary attributes to the metaball then pass them to the monkey using Attribute Transfer.

Load Start File


1. Preview the Metaball Animation

Scrub back and forth in the timeline. You will see the monkey's chest bulge slightly as a metaball passes through it. In the Network pane, select the monkey object and press i to go to the geometry level. Now as you scrub, you can see the metaball passing through the monkey.


2. Add Attributes to the Metaball

In the Network pane, MMB-click on metaball SOP's output. From the pop-up menu select Convert Meta and place this operator's tile. This converts the metaball into geometry with point information.

Next, RMB-click on the convertMeta SOP's output and from the pop-up menu select Point. Select this operator and in the Parameter pane, change Keep Color to Add Color then change the XYZ expressions to $BBX $BBY $BBZ. This expression uses the point's position in relation to the bounding box to add point values. These attributes have no purpose at this time but they provide a way of previewing how arbitrary attributes can be transferred to another model


3. Set the Display and Footprint flags

In the Network pane, set the display flag for the bulge SOP and the footprint flag for the new point SOP. Scrub in the timeline until the metaball is just starting to penetrate the monkey's chest.


4. Apply the Attribute Transfer SOP

In the Viewer pane, press tab > AttribTransfer. Press 7 to choose Connected Primitive selection. Click on the metaball then RMB-click to accept. Next, click on the monkey then RMB-click to accept. The monkey is shown highlighted in yellow and you cannot see the effect of the transfer. RMB-click on geometry and select Highlight to turn it off. Now you can see the monkey affected by the transfer but the results are not very subtle.


5. Adjust the Parameters

In the Parameter pane, go to the Conditions tab and set the Distance Threshold to around 1.0. Now you can see the effect of the metaball on the monkey. You can further adjust the Distance Threshold to control the area being effected. You can also set the Set Blend Width to soften or blur the effect. Scrub in the timeline or generate a flipbook animation to watch the results in motion.