Using several different compounds, you can constrain the scaling, orientation, or whole pose of a deformer in the actor's proxy rig.
The hierarchy of the rig proxy matters when you want to constrain multiple deformers in a branch, such as an arm, leg, or the upper body. Make sure that the deformers are parented correctly in the rig proxy, then you can constrain the parent deformer to affect that branch. See Modifying the Actor's Rig for more information.
If you want to control specific deformers based on conditions you set, you can use constraints within an action state system - see Modifying Deformer Transformations with Action States for more information.
Constraining a Deformer's Orientation
Using the Crowd Orientation Constraint compound, you can constrain the rotation of a deformer in an actor's rig proxy to angles that you define. For example, you could rotate the actor's torso deformer, which is the parent of the upper spine, arms, and head, to make the actors bow down as shown in the crowd below.
In the simulation point cloud's Skeleton Simulation ICE tree, get a Crowd Orientation Constraint compound and plug it into an ICETree port below Set Locomotion or Set Stadium Animation.
In a Get Data node, set the reference to the deformer you want to constrain.
You can display the rig proxy as described in Modifying the Actor's Rig to help you find the correct deformer.
Plug the Get Data node's Out Name output into the Proxy Deformer Name port of the Crowd Orientation Constraint compound.
If you are constraining a parent deformer, make sure that the Child Compensation Transformation option is off in the Crowd Orientation Constraint compound's property editor so that the child deformers are also affected by the constraint.
Set the Rotation XYZ axis values in the Crowd Orientation Constraint compound.
In this example, the Rotation is being driven by random values within a defined range.
Set the Blend value in the constraint compound to blend between the weight of the original simulation (value of 0) and the new rotation value you're defining (value of 1).
You can animate this value to change the rotation, such as making the actors bow down and then return to their original upright position.
Constraining a Deformer's Scale
Using the Crowd Scaling Constraint compound, you can constrain the scaling of a deformer in an actor's rig proxy in its local space on any or all of its XYZ axes. This is handy for making adjustments to actors who use the same rig, but need different proportions, or to simply add randomization to the actors in the crowd.
If the deformer is a parent of other deformers, you can scale the whole branch, or just the parent. For example, you can constrain the scaling of the actor's upper body by scaling the torso deformer, which is the parent of the upper spine, arms, and head, as shown in the crowd below.
You can also scale the whole actor at emission by setting the particle's Size and Scale values - see Setting Up the Crowd Particle Emission. This allows the actor's legs and feet to properly detect the terrain.
In the simulation point cloud's Skeleton Simulation ICE tree, get a Crowd Scaling Constraint compound and plug it into an ICETree port below Set Locomotion or Set Stadium Animation.
In a Get Data node, set the reference to the deformer you want to constrain.
You can display the rig proxy as described in Modifying the Actor's Rig to help you find the correct deformer.
Plug the Get Data node's Out Name output into the Proxy Deformer Name port of the Crowd Scaling Constraint compound.
If you are constraining a parent deformer, make sure that the Child Compensation Transformation option is off in the Crowd Scaling Constraint compound's property editor so that the child deformers are also affected by the constraint.
Set the values for any or all of the Scaling XYZ axes in the Crowd Scaling Constraint compound.
In this example, the Scaling on each axis is being driven by random values within a defined range.
Constraining a Deformer's Pose
Using the Crowd Pose Constraint compound, you can constrain all three transformation types (scaling, orientation, and position) of a deformer in an actor's rig proxy using only one constraint. Of course, you can constrain only the transformations you want.
The procedure for using this compound is the same as for the Crowd Orientation Constraint or Crowd Scaling Constraint compound above, except that you can set the XYZ axis values for any or all of the Scaling, Rotation, and/or Translation parameters in the Crowd Pose Constraint compound.