Houdini 17.0 Nodes Dynamics nodes

POP Steer Path dynamics node

Applies force to agents/particles according to directions from a path curve.

On this page

This is a crowd behavior node, but you can also use it on regular particles (see the Output attribute parameter).

Tip

Once agents reach the end of the curve, they will continue to alternately move along the direction at the last point and be pulled back by the Path variance, making them bounce around the end of the curve. You can avoid this by using a bounding box trigger at the end of the curve to put agents that reach the end into a new state.

Parameters

Activation

When this is off, the node will have no effect. You can animate this to turn the behavior on or off at different times.

Group

Only modify a certain group or groups out of all agents/particles. You can name groups of agents using the Group name parameter on the Crowd Source geometry node.

Output Attribute

If you are working with agents, set this to "Crowds steerforce". If you are working with particles, set this to "POP force".

This controls whether the node modifies the agent’s steerforce attribute (used by the crowd solver) or the particle’s force attribute (used by the POP solver).

Weight

Available when Output attribute is "Crowd steerforce". This number is used by the crowd solver to normalize and scale multiple forces that apply to an agent.

SOP Path

Path to an object or geometry node containing the path curve (for example, /obj/geo1/curve1).

Method

How the node uses the curve to influence agent movement.

Curve lookup

Agents find the closest point on the curve, take the forward tangent direction at that point, and apply force in that direction to the agent.

Curve point walk

When an agent first "locks on" to the path, it finds the closest control point on the curve, and remembers the control point’s point number in an attribute. From then on, it uses the curve direction at the control point, and increases the point number when near the next control point on the curve (for example, use the curve tangent direction at point 2 until the agent is closer to point 3). This method allows you to use self-intersecting paths.

Resample Path

When Method is "Curve point walk", use a set of regularly spaced control points along the curve instead of using the actual control points from the curve geometry. This is usually the best option unless you've specifically placed the control points of the curve with path following in mind.

Segment Length

When Method is "Curve point walk" and Resample path is on, the spacing of the points along the curve to use.

Reverse Direction

Act as if the direction of the curve was reversed when computing directions. (You can "actually" reverse a curve using the Reverse geometry node.)

Force Scale

The strength of the path direction force.

Constraint Force

How much force is applied to make the agents/particle maintain their initial distance to the curve.

Search Radius

The maximum distance (in meters) agents will look for the path.

Anticipation

How far ahead to look for path changes. The higher the number, the earlier agents/particles will begin turning in response to upcoming bends in the curve.

Path Variance

The maximum distance (in meters) the agent/particle is allowed to be from the initial distance before the node begins to apply the Constraint force to move it back toward the curve.

Examples

The following examples include this node.

FootLocking Example for Crowd Solver dynamics node

This example demonstrates how to set up foot locking for an agent.

Street Crowd Example Example for Crowd Solver dynamics node

Crowd example showing a street setup with two agent groups

The setup creates two groups of agents. The yellow agents are zombies which follow a path of the street. The blue agents are living pedestrians that wander around until they come into proximity of the zombies and then they swtich into a running state.

Triggers to change agent states are setup in the crowd_sim dopnet. The zombies group uses proximity to the stoplights and the color of the light to transition into a standing state when lights are red. The living group transition into a running state when they get close to the zombie agents.

Note

The animation clips need to be baked out before playing the scene. This should happen automatically if example is created from Crowds shelf. Otherwise save scene file to a location of your choice and click Render on '/obj/bake_cycles' ropnet to write out the files. The default path for the files is ${HIP}/agents.

See also

Dynamics nodes