StaticresolveResolves collision between two bounding volumes, computing the minimum translation vector (MTV)
stored in result pointing in the direction to push volume a out of volume b.
The first bounding volume.
The second bounding volume.
Out vector storing the correction to push a away from b.
True if the volumes are intersecting and MTV was computed, false otherwise.
StaticresolveResolves collision between two axis-aligned boxes, returning a correction vector.
The first box.
The second box.
Vector to store the correction (points from b2 to b1, along the axis of least penetration).
True if collision was resolved.
StaticresolveResolves collision between an axis-aligned box and an oriented bounding box, returning a correction vector.
The box.
The OBB.
Vector to store the correction (points from o to b).
True if collision was resolved.
StaticresolveResolves collision between a convex hull and an axis-aligned box, returning a correction vector (points from the box towards the hull).
StaticresolveResolves collision between two convex hulls via the Separating Axis Theorem, returning the minimum-translation-vector correction.
The first hull.
The second hull.
Vector to store the correction (points from b to a, along the axis of least penetration).
True if collision was resolved.
StaticresolveResolves collision between a convex hull and an OBB, returning a correction vector (points from the OBB towards the hull).
StaticresolveResolves collision between a convex hull and a sphere, returning a correction vector (points from the sphere towards the hull).
StaticresolveResolves collision between two OBBs via the Separating Axis Theorem, returning the minimum-translation-vector correction.
True if collision was resolved.
StaticresolveResolves collision between a sphere and a box, returning a correction vector.
The sphere (e.g. Camera).
The box (e.g. Wall).
Vector to store the correction.
True if collision was resolved.
StaticresolveResolves collision between a sphere and an OBB, returning a correction vector.
The sphere.
The OBB.
Vector to store the correction (points from the OBB towards the sphere).
True if collision was resolved.
StaticresolveResolves collision between two spheres, returning a correction vector.
The first sphere.
The second sphere.
Vector to store the correction (points from s2 to s1).
True if collision was resolved.
StaticsweepUniversal sweep dispatcher: sweeps any moving bounding volume from origin with displacement delta against any static volume. Supports both 3-arg (moving, delta, target) and 4-arg (moving, origin, delta, target) forms.
The moving bounding volume.
Time of impact in [0, 1] or -1 if no impact.
Universal sweep dispatcher: sweeps any moving bounding volume from origin with displacement delta against any static volume. Supports both 3-arg (moving, delta, target) and 4-arg (moving, origin, delta, target) forms.
The moving bounding volume.
Time of impact in [0, 1] or -1 if no impact.
StaticsweepSweeps a moving AABB against a static AABB for CCD.
Center of moving box at the start of the step.
Displacement vector of the moving box.
Half-extents of the moving box.
The static box to sweep against.
Time of impact in [0, 1] or -1 if no impact.
StaticsweepSweeps a moving AABB against a static OBB for CCD.
Time of impact in [0, 1] or -1 if no impact.
StaticsweepSweeps a moving AABB against a static sphere for CCD.
Center of moving box at the start of the step.
Displacement vector of the moving box.
Half-extents of the moving box.
The static sphere to sweep against.
Time of impact in [0, 1] or -1 if no impact.
StaticsweepSweeps a moving OBB against a static AABB for CCD.
StaticsweepStaticsweepSweeps a moving OBB against a static sphere for CCD.
StaticsweepSweeps a mathematical ray / fast projectile from origin with displacement delta against any volume.
StaticsweepSweeps a moving sphere against a static AABB for CCD. Approximates the swept volume as the box expanded by the sphere's radius on every axis (a cheap, standard approximation -- the true Minkowski sum would round the box's edges/corners, which this cheap version doesn't).
The moving sphere's center at the start of this step.
The moving sphere's displacement over this step (not normalized).
The moving sphere's radius.
The static box to sweep against.
The time-of-impact as a fraction of delta in [0, 1], or -1 if no impact.
StaticsweepSweeps a moving sphere against a static OBB for CCD, by transforming the sweep into the OBB's local space (where it becomes an axis-aligned sphere-vs-box sweep, same approach as sweepSphereBox).
The time-of-impact as a fraction of delta in [0, 1], or -1 if no impact.
StaticsweepSweeps a moving sphere against a static sphere, used for Continuous Collision Detection (CCD) of fast-moving bodies that could otherwise tunnel through thin/small geometry in a single discrete step.
The moving sphere's center at the start of this step.
The moving sphere's displacement over this step (NOT normalized -- its length matters, since the returned time-of-impact is a fraction of this vector).
The moving sphere's radius.
The static sphere to sweep against.
The time-of-impact as a fraction of delta in [0, 1], or -1 if no impact occurs
during this sweep (including if the two spheres already overlap at origin, since that's a
pre-existing overlap the discrete resolver already handles, not a new tunneling event).
StatictestPerforms a collision test between two bounding volumes.
Static class for collision detection and resolution.