DonDickieD wrote:
I implemented post stabilization ...[snip]... has the advantage that the interpenetration resolvement doesn't contribute to the pesistent momentum.
Persistent momentum?
DonDickieD wrote:
One thing that is not clear from the paper is if I need to rebuild the Jacobian after the position update or if I can use the same Jacobian like before the position update?
Yes you can reuse your Jacobians, just ignore the tangential directions. This means you can solve for the constraint impulse/force and the projection in the same step. This is easily implemented using something like PGS, you work on two Lagrange multiplier vectors and right hand sides at the same time.
DonDickieD wrote:
Second Bradley stated that the actual result of the LPC is a velocity rather then a displacement. So do I need to integrate the result after running the LCP solver?
It is just first order world physics, but set delta_t = 1 and use a simple Euler update scheme, this works fine for me.
DonDickieD wrote:
I use the same LCP solver like the ODE (SOR). I only set the CFM to zero and simply pass the penetration depth as b. Is this correct?
Yes, and throw away tangential directions as well. Note you can still keep the regularization if you want. This improves the numerics and dampens the projection lengths (alleviates overshooting, but do not remove the problem:-)
DonDickieD wrote:
What about mixing Baumgarte and Post Stabilization.
Post- and pre stabilization is good for different things. As far as I know people already mix the two kinds of stabilization.
DonDickieD wrote:
This way I am able to compute the new penetration depth after the position update and feed this into the second LCP. Any other recommendations? What are your experiences?
Do your error correction before the dynamics then you can ``trust'' your penetration depths. Or solve for both the constraint forces and projections using the same LCP.
There is little difference in whether you do projection followed by dynamics or vice versa. Any cyclic permutation of the same order of events in your simulation loop will get you to the same place. The difference in the choices have more to do with praticalities... howto estimate good penetration depths after a position update (without having to run another collision query) kind of problems...
On a side-note Baraff used post-stabilization formulated as an LCP prior to Cline, see
Code:
@article{618272,
author = {David Baraff},
title = {Interactive Simulation of Solid Rigid Bodies},
journal = {IEEE Comput. Graph. Appl.},
volume = {15},
number = {3},
year = {1995},
issn = {0272-1716},
pages = {63--75},
doi = {http://dx.doi.org/10.1109/38.376615},
publisher = {IEEE Computer Society Press},
address = {Los Alamitos, CA, USA},
}