struct SAIBodyInfo { Vec3 vEyePos; Vec3 vEyeDir; Vec3 vEyeDirAnim; Vec3 vEntityDir; Vec3 vAnimBodyDir; Vec3 vMoveDir; Vec3 vUpDir; Vec3 vFireDir; Vec3 vFirePos; float maxSpeed; float normalSpeed; float minSpeed; EStance stance; AABB stanceSize; AABB colliderSize; bool isAiming; bool isFiring; bool isMoving; float lean; float peekOver; float slopeAngle; EntityId linkedVehicleEntityId; };
IAgent.h
AABB colliderSize;
Approximate local bounds of the stance, relative to the entity position.
bool isAiming;
bool isFiring;
bool isMoving;
float lean;
The amount the character is leaning.
EntityId linkedVehicleEntityId;
float maxSpeed;
Maximum speed i can move at.
float minSpeed;
Minimum speed i need to move anywhere (otherwise I'll consider myself stopped).
float normalSpeed;
The "normal" (walking) speed.
float peekOver;
The amount the character is peaking-over.
float slopeAngle;
EStance stance;
AABB stanceSize;
Approximate local bounds of the stance, relative to the entity position.
Vec3 vAnimBodyDir;
Vec3 vEntityDir;
Vec3 vEyeDir;
Direction of head (where I'm looking at).
Vec3 vEyeDirAnim;
Direction of head from animation .
Vec3 vEyePos;
Vec3 vFireDir;
Firing direction.
Vec3 vFirePos;
Firing position.
Vec3 vMoveDir;
Direction of entity movement.
Vec3 vUpDir;
Direction of entity (my up).
const Vec3& GetBodyDir() const;
If valid animated body direction present, use that for better precision
const Vec3& GetEyeDir() const;
If valid animated eye direction present, use that for better precision
IEntity* GetLinkedVehicleEntity() const;
SAIBodyInfo();