Collision Avoidance Behavior for Actors

 
 
 

In locomotion simulations, actors need to avoid colliding with other actors, as well as walls. In order to do this, they need to have a way of checking for collisions and then calculating whether or not the collision is imminent. This section describes how you can set up the data for the actors, which affects how they behave when avoiding collisions in the simulation.

How an Actor Checks for Collisions

So, how does an actor detect a potential collision with another actor? Basically, through its field of view, similar to how a human or animal would see and evaluate potential collisions. You can set the actor's field of view and more with the Vision parameters in the Initialize Collision Avoidance compound that's in the simulation point cloud's Emit ICE tree.

To determine potential collisions, a field of view is calculated from the actor in its forward direction. The extent of the actor's field of view is set by the Horizontal FOV angle and the Far Interaction Limit. The latter defines how many units ahead the actor can see.

If no other actors are detected within the field of view, the actor doesn't change his speed or direction. However, if one or more other actors are detected in the field of view, several factors are calculated during the simulation to determine if a collision is imminent.

If the collision is imminent, the actor slow down or turns away, according to the settings that you make Initialize Collision Avoidance compound, as described in Setting Up How Actors Avoid Collisions.

Those values are initialized and then used during the particle simulation where you can alter the actor's anticipation behavior in the Simulate Collision Avoidance compound, as described in Anticipating Collisions in the Simulation.

NoteCollision detection for walls is set in a different way than using a horizontal field of view - see Avoiding Collisions with Obstacles (Walls).