The current lineup of the characters autonomous avatars, to generate dynamic virtual worlds, every day, represent everyday reality or fantasy with great fidelity and realism.
Structured models to implement autonomous characters recreation simulations and virtual worlds ( game programming, movies… ) are based on different strategies whose main objective is the animation of a complex group of characters in a particular environment. A fleet of spacecraft, a flock of birds or a herd of animals can be subjected to this treatment computer.
Mixing techniques currently “key framing” and interpolation between two states with complex processes of automatic generation of trajectories as scheduling “autonomous characters”. Film “Avatar” is the latest example of the state of art of these techniques.
Craig W. Reynolds, en Steering Behaviors For Autonomous Characters, performs a structuring “process” [1] motion of an autonomous. Besides giving an interesting definition:
“An autonomous (CA) combines aspects of a robot with some improvisational skills human nature ” y / o animals.
A CA has a certain logic of action and a system to capture information about the environment in which it operates. The information is necessary to produce the stimulus that triggers the corresponding actions. The rationale behind the choice of the corresponding action and the set of possible actions themselves characterize the CA.
The determination of motion trajectories to achieve shift targets in the environment is a developing field of research. The solution of the problems that arise can be addressed under different calculation models of idealization and.
The analysis or basic geometric approach (idealized models) to simplify its conceptualization is an interesting graphical alternative. Another alternative may be to generate the equations of motion and minimize values (zero gradients) depending on objectives, using numerical techniques and probability.
The decomposition of the global motion process repeated addition in three sequential steps (are repeated in a continuous loop) may be useful in the design of the overall action in different environments CA:
- Selecting the action: Setting targets, preparing a strategy and plan.
- Calculation: The object may be subjected to external forces and / or internal, and encontrase in different intermediate states between actions.
- Movement phase: Calculated data are converted into movement of the object, which in turn is subject to certain restrictions or limitations of movement of the object.
Behaviors based models
A generalization or adaptation to other more complex problem is always more approachable from a previous analysis with simplified models. The use of square, circumferences etc.. in the idealization of the real forms serves this purpose.
The analysis presented by Reynolds classifies a sufficient processes for a variety of actions and movement responses using them combinedly.
It is worth listing them to understand the idea:
- Seek: Chasing a static object (Max speed). This action is considered base building model as discussed in the remaining.
- Flee: Running away from a static object (Max. Speed). If at every moment try to pursue (Seek) symmetrical object (of our ) from which we flee, these actions are therefore chained.
- Pursuit: Chasing a moving object (Seek for estimating the position of the object following pursued.)
- Evasion: Fleeing a mobile object (Flee from the estimated position of the object following chaser)
- Offset pursuit: Move at a distance from another object (Seek a fixed distance from point to predict the next position of the other object).
- Arrival. Pursue a static object but slowing down as it approaches the target.
Other slightly more elaborate functions can be:
- Obstacle avoidance: Avoid obstacles but without fleeing.
- Wander: Random movement variations.
- Path following: Follow a path approximately.
- Wall following: Tracking a wall at a certain distance.
- Containment: Movement restricted to a certain region.
- Flow field following: Seguimientote of a vector field.
- Unaligned collision avoidance: Avoid collision with the predecessor element.
And others like: Separation, Cohesion, Alignment, Flocking, Leader following.
In this scheme should be thinking about the possibility of chaining actions to form complex behaviors that simulate human decision processes very elementary level.
The choice of action or set of actions to perform, Nesting with them and their application in the corresponding order, can vary substantially the sequence of movements of the object. It is also necessary to establish a kinematic model customized for each object, although motion functions can be devised in a more generic.
[1] Translation “Motion Behaviors” as “Moving process” has been used to understand it as a set of chained actions or as a strategy pattern
Related and references:
- Defining Virtual Reality
- LOD (Level of Detail)
- Intelligent Virtual Characters
- Avatar was created over 4.000 servers with GNU / Linux