
The one thing that is unclear to me is, how do I find the contact point from EPA? Gino's paper explains it, but I don't fully understand what I have to do. http://www.win.tue.nl/~gino/solid/gdc2001depth.pdf Each lambda is a vertex weight, correct? Then you can express v in terms of each point in the polyhedron and their respective weights? Gino also explains how you solve for the lambdas by building a huge matrix and computing the inverse of it. I don't understand how this works.

Edit: I figured it out. I'm using a different closest point on triangle algorithm, which determines barycentric coordinates. Then all you need to find the contact points are the barycentric coordinates of the final triangle, along with the support points that formed that triangle.