2009
backtracking clip, and if that fails, it will backtrack to the previous clip, and
so on, until a solution is found.
In the example, if the current script of a biped is:
walk_start
walk
walk_L90
and a collision is encountered during the walk_L90 clip, the biped will backtrack
to the end of the walk clip and attempt to try a different clip in place of the
failed left turn. If that fails, it will try the next best choice, and so on.
TIP The inclusion of stopping and loitering motions in the motion flow network
is sometimes helpful in preventing excessive backtracking since stopping is always
an effective way to avoid collisions in a tight situation. In general, the more variation
in speed and direction that is possible, the more quickly the backtracking feature
will find a solution.
In order to make the backtracking computationally manageable, the biped
crowd members are computed one at a time, in order of
priority on page 4907.
Thus, the crowd interaction is accumulated with each successive biped added
to the animation. In other words, each waits its turn to compute its complete
animation, which entails avoiding the bipeds that have been computed before
it. It follows that bipeds with the lowest priorities generally encounter the
most collisions, since they must steer around all the bipeds that have higher
priorities.
Preparing Characters for a Biped Crowd
To create a biped crowd simulation, you will need several bipeds. Because the
crowd simulation factors in each biped's leg length when applying clips to
the biped, your simulation will be more accurate if your bipeds are the correct
size from the start.
One straightforward workflow would be:
■ In a separate file, create or acquire a few character models for your scene.
■ Skin the characters with Physique or with another method, such as the
3ds Max Skin modifier.
■ Clone the characters and change something about each one, such as the
color of clothing or hair, and the character's height. See
Scaling a Character
on page 4660.
Using Motion Synthesis | 4797