This project is an experimental C# implementation of SAT collision and polygon intersection for the Unity game engine. It’s specifically designed to be compatable with Unity’s Burst Compiler for performance.
- Generation of native half-edge mesh from Unity Meshes.
- Fast convex polygon face/edge boolean collision detection.
- Polygon/Polygon intersection manifold generation (via Sutherland-Hodgman clipping)
- Burst compiled jobs for single and batch collision operations.
Note: Project was created with Unity 2019.2, older versions may not work.
This work is in part derived from BounceLite by Irlan Robson (zLib License): https://github.com/irlanrobson/bounce_lite
The SAT implementation is based on the 2013 GDC presentation by Dirk Gregorius and his forum posts about Valve’s Rubikon physics engine: