Clutter Engine 0.0.1
|
A class representing an Axis-Aligned Bounding Box (AABB) collider. More...
#include <AABBCollider.h>
Public Member Functions | |
AABBCollider (Vector2 pBoxExtend={32, 32}) | |
Constructs an AABBCollider with the specified box extension. | |
AABBCollider (float pBoxExtend) | |
Constructs an AABBCollider with the specified box extension. | |
~AABBCollider ()=default | |
Default destructor. | |
bool | CheckCollision (ColliderComponent *pOther, hitResult &outResult) const override |
Checks for collision with another collider. | |
![]() | |
ColliderComponent () | |
Default constructor. Initializes friction, bounciness, and collider type. | |
~ColliderComponent () | |
Destructor. | |
void | Subscribe (class ICollisionListener *listener) const |
Subscribes a collision listener to this collider. | |
const ColliderType | GetType () const |
Gets the type of this collider. | |
bool | IsTrigger () const |
Checks if this collider is a trigger. | |
![]() | |
Component (int pUpdateOrder=0) | |
Constructor for Component. | |
virtual | ~Component ()=default |
Virtual destructor for Component. | |
virtual void | Start () |
Called when the component is started. | |
virtual void | Update () |
Called every frame to update the component. | |
virtual void | Destroy () |
Called to destroy the component. | |
void | SetActive (bool pActive) |
Enables or disables the component. | |
void | OnDestroy () |
Called when the component is destroyed. | |
bool | IsActive () const |
Checks if the component is enabled. | |
int | GetUpdateOrder () const |
Gets the update order of the component. | |
void | SetRelativeLocation (const Vector3 &loc) |
Sets the relative location of the component. | |
void | SetRelativeLocation (const Vector2 &loc) |
Sets the relative location of the component. | |
void | SetWorldLocation (const Vector3 &loc) |
Sets the world location of the component. | |
void | SetRelativeScale (const Vector3 &scale) |
Sets the relative scale of the component. | |
void | SetRelativeScale (const Vector2 &scale) |
Sets the relative scale of the component. | |
void | SetRelativeRotation (Quaternion rot) |
Sets the relative rotation of the component. | |
void | SetRelativeRotation (Vector3 rot) |
Sets the relative rotation of the component. | |
void | SetWorldRotation (const Quaternion &rot) |
Sets the world rotation of the component. | |
void | SetWorldRotation (const Vector3 &rot) |
Sets the world rotation of the component. | |
void | AddRelativeRotation (Vector3 rot) |
Adds a rotation to the current relative rotation. | |
void | SetRelativeRotation (float rot) |
Sets the relative rotation of the component. | |
void | SetRelativeTransform (Transform &transform) |
Sets the relative transform of the component. | |
Vector3 | GetRelativeLocation () const |
Gets the relative location of the component. | |
Vector3 | GetRelativeScale () const |
Gets the relative scale of the component. | |
Quaternion | GetRelativeRotation () const |
Gets the relative rotation of the component. | |
Vector3 | GetRelativeRotationEuler () const |
Gets the relative rotation of the component as Euler angles. | |
Transform | GetRelativeTransform () const |
Gets the relative transform of the component. | |
Vector3 | GetWorldLocation () const |
Gets the world location of the component. | |
Vector3 | GetWorldScale () const |
Gets the world scale of the component. | |
Quaternion | GetWorldRotation () const |
Gets the world rotation of the component. | |
virtual Transform | GetWorldTransform () const |
Gets the world transform of the component. | |
Actor * | GetOwner () const |
Gets the owner actor of this component. | |
Public Attributes | |
Vector2 | mBoxExtend |
The extension of the bounding box. | |
friend | CircleCollider |
![]() | |
float | mFriction |
The friction coefficient of the collider. | |
float | mBounciness |
The bounciness (restitution) of the collider. | |
![]() | |
friend | Actor |
Additional Inherited Members | |
![]() | |
virtual void | SetOwner (Actor *pOwner) override |
Sets the owner actor of this collider component. | |
![]() | |
bool | LineTrace (Vector3 start, Vector3 direction, float maxDistance, raycastHit &hit, bool debugPersistant=false) |
Performs a line trace (raycast) using the owning actor. | |
![]() | |
bool | mTrigger = false |
Indicates if the collider is a trigger. | |
ColliderType | mType |
The type of the collider. | |
![]() | |
bool | mIsActive = true |
Indicates if the component is active. | |
int | mUpdateOrder = 0 |
The order in which the component is updated. | |
Actor * | mOwner |
The actor that owns this component. | |
Transform | mRelativeTransform |
The relative transform of the component to its owner. | |
A class representing an Axis-Aligned Bounding Box (AABB) collider.
AABBCollider::AABBCollider | ( | Vector2 | pBoxExtend = {32,32} | ) |
Constructs an AABBCollider with the specified box extension.
pBoxExtend | The extension of the bounding box. |
AABBCollider::AABBCollider | ( | float | pBoxExtend | ) |
Constructs an AABBCollider with the specified box extension.
pBoxExtend | The extension of the bounding box. |
|
overridevirtual |
Checks for collision with another collider.
pOther | The other collider. |
outResult | The result of the collision check. |
Implements clt::ColliderComponent.