Articulated structure impulse propagation

Please don't post Bullet support questions here, use the above forums instead.
Moroz
Posts: 3
Joined: Fri Jun 16, 2006 10:56 am
Location: Saint-Petersburg, Russia

Articulated structure impulse propagation

Post by Moroz »

Hello everybody,

I'm working on physics simulator with the following structure:
1) Baraff algorithm (Linear-time dynamics' 96) for resolving constraints
2) velocity+position post stabilization for correcting numerical drift
3) Catto's SI for contacts

The problem is with propagating impulse through articulated figures. Please correct me if I'm not right. Having directed tree of constrained bodies, if we apply impulse to some body in the hierarchy its parent and upper will not be affected according to the Barraf's algorithm.
The only paper I found which describes impulse propagating was Mirtich's PhD. He tells about impulse propagation for Featherstone's method there. But I can't understand how to adapt it to my case.
After that I made some experiments with propagating impulse up in hierarchy and received some pretty results. I do as follows: calculate impulse in joint anchor point and propagate it (scaled by some s < 1) to the parent body with respect to blocked by joint DOFs until topmost body is met.

The question is: am I right doing so and how to deduce this s coefficient. I understand that it depends on masses and inertias of bodies, but I'm not sure to choose appropriate way.

Thank you in advance (and excuse me for my english if so)
Erin Catto
Posts: 316
Joined: Fri Jul 01, 2005 5:29 am
Location: Irvine

Post by Erin Catto »

Baraff's algorithm gives you a way to compute the acceleration of the tree due to applied forces. You should apply a single test impulse as the force to determine the effective mass at the contact. You can then solve for the impulse and apply the full value to the tree.

See this paper for details:
http://www.research.scea.com/research/p ... DC2004.pdf

Note that the impulse propagation is quite expensive. With Baraff's algorithm you could simply ignore the tree when applying impulses.
Moroz
Posts: 3
Joined: Fri Jun 16, 2006 10:56 am
Location: Saint-Petersburg, Russia

Post by Moroz »

Thank you very much Erin, I'll try to follow your advice.