In Atoms, agents are simulated using the concept of gravity that drive the agent up vector. Thanks to this idea you can also simulate your agents walking on 3D meshes and not just on 2D planes.
The way you apply gravity your agents is by setting the gravityField on some of the Behaviour Modules, such as the State machine, Cache reader and Clip reader.
Gravity fields are actually height fields (you create them with the Height Field Manager). During the simulation Atoms uses the normal of the gravity field to change the gravity metadata of the agent and rotate his up vector.
For example, if you have a very uneven height field (like in the picture), you can create a smoother mesh as your gravity field.
The gravity field is not the only way to drive the agent up vector. Any custom behaviour module can change the gravity metadata of the agent to achieve the same effects.