Houdini 20.5 Crowd simulations

Foot planting workflow

How to set up agents to adapt their animation to terrain and prevent skating.

On this page

Overview

Terrain adaption adapts the animated foot placement of agents to the terrain they're moving over. Foot locking ensures agent feet stay planted in the same place while on the ground, preventing “skating”.

Houdini uses two extra channels alongside an agent’s animation channels to indicate when a foot is “on the ground” in the animation cycle. (A value of 1 in the channel means the foot is planted. Values from 0 to 1 blend between planted and the original animation.) The solver locks the ankles and toes in place on the terrain for the duration of the foot plant.

Houdini can automatically generate these channels for you based on when the ankle joints are at their lowest points in the animation cycle.

Set up

Use the controls on the Agent Prep SOP's Additional channels tab.

  • Specify your agent’s channel names for each ankle/toe on the Agent Prep SOP.

  • Click Create Foot Plant CHOP Network to automatically generate the foot-plant channels for the agent’s animation.

This automatically create a Foot Plant CHOP in a CHOP network to generate the foot plant channels from the character’s animation. However, you could manually create the channels or generate using your own CHOPs and specify the channels in the settings instead.

When terrain adaptation is on in the crowd solver and the Enable Foot Locking parameter is enabled, the solver will automatically use the foot planting channels.

Tips and notes

  • For advanced users, the hou.AgentClip HOM class has methods for querying and sampling non-transform channels in a clip, or you can use the agentclipsample VEX function to sample in VEX.

  • The foot planting functionality is implemented in the lower-level Agent Terrain Adapation DOP inside the solver. This node may be useful if you implement your own low-level crowd solution.

  • The Agent Clip SOP is the low-level node that adds channels to an agent. This node may be useful if you are implement your own low-level crowd solution.

See also

Crowd simulations

Getting started

  • Basics

    An overview of Houdini crowd simulation concepts.

  • Setup

    How to set up and edit a crowd simulation.

The moving parts

  • Agents

    About agents, the moving actors that make up a crowd simulation.

  • States

    About agent states, the virtual mood of each agent that controls the agent’s animation and the behaviors it runs.

  • Triggers

    How to specify conditions that cause agents to change from one state to another.

  • Caches

    Tips for efficiently caching and loading crowd sims.

Behavior

Appearance

  • Diversity

    How to create a more realistic crowd by making agents look and act differently.

  • Attaching cloth

    You can add and constrain vellum cloth as part of agent shape geometry, and then simulate the cloth based on agent movements.

Terrain

  • Foot planting

    How to set up agents to adapt their animation to terrain and prevent skating.

  • Terrain

    How to specify terrain geometry for agents to walk across.

  • Obstacles

    How to set up obstacles for agents to avoid.

SOP crowds

Crowd Procedural