The 3 orthogonal local axes of the OBB (X, Y, Z).
Center of the OBB in world space.
Half-extents of the OBB along its local axes (scaled to world space).
The type of the bounding volume.
Clones this OBB.
Checks if this volume entirely contains another volume.
True if entirely contained.
Sets the unscaled local half-extents (and the current halfExtents) from a vector.
See setLocalHalfExtents() for why this should be preferred over mutating halfExtents.
Returns the radius of a sphere that fully encloses the volume. Used for coarse broad-phase intersection tests.
The broad radius.
Checks if this volume intersects with a frustum.
The frustum to check against.
True if intersecting.
Checks if this volume intersects with another volume.
The other volume to check against.
True if intersecting.
Sets the unscaled local center offset.
Sets the unscaled local half-extents (and the current halfExtents) from individual
components. Use this instead of mutating halfExtents directly when the OBB will later
be transformed — it is the value transform() scales from, so it must be updated whenever
the untransformed source bounds change (e.g. once per frame before re-transforming).
Transforms this OBB using a world matrix.
The transformation matrix.
An Oriented Bounding Box (OBB). Essential for the Separating Axis Theorem (SAT) and precise collisions of rotated objects.