Restitution handling
Posted: Fri Dec 08, 2006 11:08 am
Hi!
Recently, I've tried to impose restitution to my own physics simulator(based on sequentially impulses algorithm presented by E.Catto),
but faced a problem of making box bounce(Restitution works pretty good on bouncing spheres)
I guess that the reason is that sequentially applying impulses at more than 1 collision point makes the total impulse zero. It works correctly for objects with restitution of zero, but makes another objects behave the same way.
I've noticed that bullet physics simulation works with restitution a bit
better - an axis aligned box falling from some height jumps up just a little, gets angular velocity, falls down and rests.
In contrast, PhysX solves this problem - at restitution 1 the box jumps up about 12 times, than getting angular velocity(i think 12 times is comprehensible precision).
Now I consider applying restitution impulse after all the contact solving iterations should help. And possibly apply it not at particular contact points
but to the whole body?
Any suggestions?
Recently, I've tried to impose restitution to my own physics simulator(based on sequentially impulses algorithm presented by E.Catto),
but faced a problem of making box bounce(Restitution works pretty good on bouncing spheres)
I guess that the reason is that sequentially applying impulses at more than 1 collision point makes the total impulse zero. It works correctly for objects with restitution of zero, but makes another objects behave the same way.
I've noticed that bullet physics simulation works with restitution a bit
better - an axis aligned box falling from some height jumps up just a little, gets angular velocity, falls down and rests.
In contrast, PhysX solves this problem - at restitution 1 the box jumps up about 12 times, than getting angular velocity(i think 12 times is comprehensible precision).
Now I consider applying restitution impulse after all the contact solving iterations should help. And possibly apply it not at particular contact points
but to the whole body?
Any suggestions?