Houdini 20.0 Nodes Dynamics nodes

Crowd Solver dynamics node

Update crowd agents based on the custom steerforces and adjusting animation playback of clips

On this page
Since 14.0

Crowd Solver is used to integrate custom steerforces as well as set animation data that is used by agents. The steer forces use custom weights to control their overall effect. The weighting is normalized based on all of the steer forces. The main attributes driving the animation behavior are the clipnames (names of the current clips being played), cliptimes (current time of the clip being played) and clipweights (weights when blending multiple clips together in state transitions).

Parameters

Start Frame

Start frame of the simulation.

Particle Behavior

Orientation Constraint

Min Speed

Minimum speed of the agent before change of orientation can occur (this will prevent agents flipping/jittering back and forth at very low speeds).

Speed Constraint

The speed of the agent will be scaled based on agent orientation/facing direction and velocity direction. Value of zero will result in speed unaffected, where at Max Angle the speed will be zero. Any values in between will be linearly scaled 0 to 1.

Min Angle

Minimum angle between agent and its velocity when speed is at its full.

Max Angle

Maximum angle between agent and it’s velocity where speed is zero.

Drag

Overall drag applied to the agents.

Avoidance

This controls affect how the agent interact with each other to prevent/avoid self intersections.

Agent Separation

This will force the agent to keep separate of each other preventing self intersections when they are within the search radius. It’s used to resolve collisions that are created when agents are very close to each other.

Agent Group

Allows user to specify a subgroup of agents.

Weight

Weighting of the force used to prevent intersections (higher values will cause the force to have more effect).

Force Scale

Scale of the force used to separate the agents; direction is away from the overall group of agents which are affecting current agent.

Braking Force

Scale of the force used to slow down the agent; direction is opposite of the current velocity of the agent.

Use Field of View

Use field of view when resolving agents. For example with 180 degrees, only agents in front of the current agent will affect it.

Field of View

Angle of the field of view being used by the agent. Direction is in the velocity direction.

Force Separation

Enforce that agents don’t self intersect. Sometimes the Force Scale is insufficient to stop self collisions, this will push the agent to the radius boundary. It may result in popping in very dense areas as agents try to resolve themselves.

Agent Avoidance

This will force the agents to avoid each other up to a certain distance based on anticipation time.

Agent Group

Allows user to specify a subgroup of agents.

Weight

Weighting of the force used to prevent intersections. Higher values will cause the force to have more effect.

Force Scale

Scale of the force that is used to alter agent path to avoid other agents.

Anticipation Time

How far into the future look for possible collisions (this uses current velocity to project the possible distance).

Anticipation Rotation

Controls how much the agent turns away from possible collisions. This value is scaled based on the Anticipation Time; it represents the maximum rotation the agent is allowed per timestep.

Anticipation Braking

Scale of the force used to slow down the agent; direction is opposite of the current velocity of the agent.

Look At

This controls agent head override (direction the agents are looking at). To create a target agentlookat DOP should be used.

Agent Look At

This enables the effect.

Agent Group

Allows user to specify a subgroup of agents.

Eye Offset

Additional offset to the lookat target (depending on rigs some head bones pivots might be set around neck region this will allow to shift the eye line)

Limit Head Turn Per Frame

This will limit how fast the head turns to face new direction.

Head Turn Angle

How fast the agent head bone can turn.

Terrain

This controls how agents are projected on the ground/terrain. It also allows for feet projection on the terrain and agent tilt when navigating uneven terrain.

Agent Projection

This will project the agents on the given terrain.

Agent Group

Allows user to specify a subgroup of agents.

Source

Source for the terrain object (SOP path or DOP object)

Mode

Controls direction of the agent projection.

Direction Vector

Use the direction specified.

Up Attribute

Use the agent Up attribute.

Offset

Additional offset that will shift all agents up or down.

Agent Feet Adaption

This controls how feet/terrain penetrations is resolved.

Agent Group

Allows user to specify a subgroup of agents.

Ankle Offset

Height of the ankle pivot position relative to the ground.

Toe Offset

Height of the toe pivot position relative to the ground.

Lean Angle Per Frame

How fast the agent can lean when moving over uneven terrain.

Backward Lean

Minimum backwards tilt when walking down an incline.

Forward Lean

Maximum forwards tilt when walking up an incline.

Animation Behavior

This controls how the agent animation clips are played (speed/retiming).

Method

Lets user specify how the animation should be handled.

Lock Particle Speed To Mocap

Locks the speed of the agent particle to the original mocap locomotion speed. For this option to work, the agent has to be baked with Convert to inplace animation option on the Agent ROP.

Retime Mocap To Particle Speed

The animation clip is retimed based on the agent particle speed and inplace animation speed, set on the Crowd State DOP.

Retiming Disabled

This will disable any animation clip retiming.

Allowed Variance

Lets user limit how much the animation is retimed. This will effectively set min/max speeds for the agents based around the inplace animation speed.

Source Blend Lookup

The lookup curve that is used when animation transitions from source state to destination state.

Destination Blend Lookup

The lookup curve that is used when animation transitions from source state to destination state.

Inputs

Crowd Source object, Crowd State nodes, Crowd Transition nodes.

Outputs

Agent primitives.

See also

Dynamics nodes