Skip to main content

Module collision

Module collision 

Source
Expand description

Collision detection module.

Provides multiple collision detection algorithms:

  • AABB (Axis-Aligned Bounding Box) — fastest, axis-aligned only
  • Circle — for circular hitboxes
  • SAT (Separating Axis Theorem) — for oriented rectangles and convex polygons
  • Broad phase — spatial hashing for large numbers of objects

All collision functions return a CollisionInfo struct with penetration depth and normal, enabling proper resolution — unlike macroquad which has no collision detection at all.

Structs§

CircleCollider
A circle collider.
CollisionInfo
Result of a collision test.
Ray
A 2D ray.
RaycastHit
Result of a ray cast.
SpatialHash
A simple spatial hash grid for broad-phase collision detection.

Functions§

circle_vs_circle
Test collision between two circles.
circle_vs_rect
Test collision between a circle and an AABB rectangle.
point_in_circle
Check if a point is inside a circle.
point_in_rect
Check if a point is inside a rectangle.
ray_vs_circle
Cast a ray against a circle.
ray_vs_rect
Cast a ray against an AABB.
rect_vs_rect
Test collision between two AABBs with penetration info.
resolve_aabb_collision
Resolve a collision by pushing shape A out of shape B.