15#include "../../Utils/Math/Rotation.h"
16#include "../../Utils/Math/Vector3D.h"
17#include "../../Scene/Objects/Object3D.h"
Represents a spherical boundary object for motion and collision simulations.
void Update(float dT, Vector3D acceleration, Quaternion rotation)
Updates the sphere's position and velocity based on acceleration and rotation.
Object3D * object
Pointer to the 3D object associated with the sphere.
Vector3D velocity
Velocity vector of the sphere.
float radius
Radius of the sphere.
bool IsIntersecting(BoundarySphere *bO)
Checks if the sphere intersects with another BoundarySphere.
Vector3D position
Current position of the sphere.
float GetRadius()
Gets the radius of the sphere.
Vector3D centerPosition
Center position of the sphere.
void Collide(float elasticity, BoundarySphere *bO)
Resolves collision between this sphere and another BoundarySphere.
Object3D * GetObject3D()
Gets the associated Object3D of the sphere.
Quaternion previousRotation
Previous rotation of the sphere.
Represents a 3D object with geometry, material, and transformation data.
A mathematical construct representing a rotation in 3D space.
Represents a 3D vector (X, Y, Z) and provides methods for vector arithmetic.