Setting up Roll Extraction

Setting up roll extraction requires you to configure a set of character properties, and to set up your HIKEffectorSetState with the necessary solving step.

Step 1. Setting the solving step

When you call the HIKSetIKSolvingStep() function to set the solving step in your HIKEffectorSetState, you must include the HIKSolvingStepRollExtraction step. For example:

For details on IK solving steps, see Solving Selected Body Parts.

Step 2. Enabling roll extraction

Use the following set of character properties to control the amount of roll to extract from your character’s shoulders, elbows, hips and knees:

These properties are of the HIKPropertyOffOn type. You must activate each property you want to use, and set its value. For example:

HIKSetPropertyMode(MyPropertyState, HIKLeftArmRollId, 1);
HIKSetPropertyValue(MyPropertyState, HIKLeftArmRollId, 0.6f);
HIKSetPropertyMode(MyPropertyState, HIKLeftForeArmRollId, 1);
HIKSetPropertyValue(MyPropertyState, HIKLeftForeArmRollId, 0.6f);

See also Character Properties.

Step 3. Enabling roll propagation (optional)

Use the following set of additional character properties to control the amount of roll to extract from each of your character’s roll Nodes and apply to the child of the roll Node:

Unlike the other roll extraction properties introduced above, you do not have to activate these properties. Simply set their values as follows:

HIKSetPropertyValue(MyPropertyState, HIKLeftArmRollExId, 0.5f);
HIKSetPropertyValue(MyPropertyState, HIKLeftForeArmRollExId, 0.5f);

See also the property descriptions under Character Properties for additional details.