Features
- Collisions only - no gravity, rigid body handling, or complex solvers
- Is data-oriented and functional
"Sweep" tests indicate at least 1 of the objects is moving.
The number indicates how many objects are moving. e.g., box-box-sweep2 means we are comparing 2 aabbs, both of which are moving.
"Overlap" tests don't take movement into account, and this is a static check to see if the 2 entities overlap.
plural forms imply a collection. e.g., BoxSegmentsSweep1Indexed() checks one box segment against a set of line segments.
If there is more than one collision, the closest collision is set in the h *Hit argument.
- Clone this repository
- In the terminal, change to the examples directory
cd examples - Run a folder with
go run ./foldername. Example:go run ./box_box_sweep1
Most of these collision checks were adapted from existing open source repos:
- github.com/mreinstein/collision-2d
- youtube.com/watch?v=NbSee-XM7WA - ray-tilemap (RayTilemapDDA)
- jonathanwhiting.com/tutorial/collision - box-tilemap (TileCollider)








