I’ve been working on the physics module of the Double Engine for the past week and after lots of trouble, it finally works the way I wanted.
I started by following the contact forces tutorial on My Physics Lab, but the method wasn’t working for me, even the simplified Gauss-Seidel I found here.
Fortunately, I was lucky enough to get help from Scott Lembcke, the author of the Chipmunk Physics Library, who was kind enough to answer all my questions on the TIGsource forums. His answers, together with his paper and the source of Chipmunk, helped me get rid of all my problems and to generally fix my code. Big thanks to you Scott :)
In the video below, you can see how friction (thanks to it the ball can roll around instead of just sliding) and contacts (the objects can now stack without interpenetrating each other) work.
It feels so good to have this working properly. Now that this is finally done, we can begin development of our second game, more info soon!