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();