libccd is library for collision detection between two convex shapes.

libccd implements variation on Gilbert-Johnson-Keerthi (GJK) algorithm + Expand
Polytope Algorithm (EPA). It also implements Minkowski Portal Refinement (MPR,
a.k.a. XenoCollide) algorithm as published in Game Programming Gems 7. libccd
is the only available open source library of my knowledge that include MPR
algorithm working in 3-D space.

However, there is a library called mpr2d, implemented in D programming
language, that works in 2-D space.

Homepage:
http://libccd.danfis.cz/
