Skip to content

Robust and simple implementation of the Expanding Polytope Algorithm (EPA)

License

Notifications You must be signed in to change notification settings

notgiven688/unified_epa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unified EPA (UEPA) Demo

uepa_tests

Robust and simple implementation of the Expanding Polytope Algorithm (EPA).

The demo is written in C#, with OpenTK as only dependency.

Some Details

The implementation itself is contained in UEPA.cs with ~400 lines of code. The algorithm detects whether two convex objects are separated or colliding and returns the points of closest distance and deepest penetration, respectively.

The expanding polytope algorithm is used also for the separating case - simplifying the algorithm for collision detection for the general case.

Run the demo

The demo should be able to run cross-platform utilizing OpenGL.

  1. Install the .NET 9.0 SDK
  2. git clone https://github.com/notgiven688/unified_epa.git
  3. cd unified_epa && dotnet run -c Release

Screenshots

YouTube Video

alt text

About

Robust and simple implementation of the Expanding Polytope Algorithm (EPA)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages