Steeriously
0.1
|
steer | All steering functions are templated for easy application to objects inheriting from Agent. Because of this, it is easy to add into any type of design - be it a class hierarchy or a more advanced data structure or system (such as an entity component system). All functions return a steer::steer::Vector2 that can be used to calculate a force with which the entity should be moved given each type of behavior. Combine each calculated force with a weight (any scalar value - but keep it sane or behavior could become strange). Simply multiply each weight, or weights, by the force generated by each behavior's return value to fine-tune it. In addition to the steering functions themselves, this file contains various utilities used by them to perform their work |
Agent | The invisible, but highly necessary, automaton which drives your *game entity/graphical representation's motion. Getters and Setters are provided, *however it will always be easier to just use the data - since it is all public |
BehaviorParameters | Data table with default values used to define variables for guiding steerable objects (agents) |
ArriveComponent | An example implementation of the arrive steering behavior. The agent will seek the target with a dampened arrival |
EvadeComponent | An example implementation of the evasion steering behavior. The agent will flee from the target while predicting it's trajectory |
FleeComponent | An example implementation of the flee steering behavior. The agent will flee from the target when it enters its threat range |
FlockingComponent | An example implementation of the flocking steering behavior. The agent will interact with other members of the flock utilizing alignment, separation, cohesion, and wandering behaviors |
HideComponent | An example implementation of the hiding steering behavior |
InterposeComponent | An example implementation of the interpose steering behavior |
OffsetPursuitComponent | An example implementation of the offset pursuit steering behavior |
PathFollowingComponent | An example implementation of the path following steering behavior |
PursuitComponent | An example implementation of the pursuit steering behavior |
SeekComponent | An example implementation of the seek steering behavior |
SuperComponent | An example implementation of the an agent with every steering behavior implemented |
WanderComponent | An example implementation of the wander steering behavior |
Matrix2D | A class for 2D matrices and related operations |
Path | Class providing the necessary structure for path following behavior |
SphereObstacle | Class to aid in obstacle avoidance routine |
Vector2 | A 2D vector struct used in many steering calculations |
VectorMath | Stateless VectorMath class utilizing static methods to manipulate vectors. Copies of Vector2 are cheap, therefore all functions are "pass by value" at this time |
Wall | A class for constructing 2D walls for wall avoidance behaviors |