Original Post
Hi there, These last few weeks I went back to the physic code I started some months ago (>6) and you maybe remember my thread about it. Well, I've been reading a lot of things ever since and I improved it quite a lot so here it is. This is DirectX8 and it uses triadic operator without checking for support (Geforce2MX has it) so I suppose it should work almost everywhere. Comments are more than welcome, if people are interested I can post a kind of what worked/what didn't about the various tricks I tried to make it more stable. The most interesting thing being that it actually is almost a bare implementation. Most tricks I used to use (sticky col, time warp) where in fact not useful or would even cost some stability when used. So it's impulse based with normal Euler integrator and close to no damping, 32 iterations max, largest mass ratio in scenes is 1/10 all under standard Earth gravity, scales are corrects so, for example, the books are small and light. The previous version couldn't stabilise one book of this size on the ground at 150hz \:. There's a lot of drifting going on at 75hz and I've started studying how to solve contact points simultaneously because it definitively is the key to more stability. The problem being that my maths really are not up to the task so far. You may find some setup too stable and that's due to the activation threshold being too large. Simultaneous contact solving should allow to reduce that threshold so stacks can deactivate and activate as expected. I also have some ideas on how to improve the reactivation heuristic that would require that I maintain a list of sleeping contact wich I do not have now... Oh and yes, I still only have OBB/OBB collision (well with contact support) so I really need to add some more of these... [Edited by - b34r on June 23, 2005 2:02:40 AM]
