erwincoumans / experiments

testbeds, random bits, snippets mainly for real-time physics/graphics development. The GPU rigid body pipeline is moved to a separate repository at http://github.com/bulletphysics/bullet3
129 stars 26 forks source link

Handle larger mass ratios with an improved constraint solver #4

Open erwincoumans opened 12 years ago

erwincoumans commented 12 years ago

Original Bullet 2.x issue is here: http://code.google.com/p/bullet/issues/detail?id=152

The iterative constraint solver in Bullet 2.x doesn't handle large mass ratios well, in other words a rigid body with large mass resting on a rigid body with small mass is unstable. Similarly, constraints can become unstable with large mass ratios (a large arm/constraint pivot can cause a large mass ratio too).

erwincoumans commented 11 years ago

The DaVincyCode 3d project hooks up the PATH solver to Bullet. Some tests show that it can support better mass ratios: https://github.com/erwincoumans/daVincyCode3D http://www.cs.rpi.edu/twiki/view/RoboticsWeb/DVC3d

Path solver http://pages.cs.wisc.edu/~ferris/path.html pathlib from ftp://ftp.cs.wisc.edu/math-prog/solvers/path/pathlib.zip You will need to get a license from ftp://ftp.cs.wisc.edu/math-prog/solvers/path/LICENSE

Someone could write an open source alternative, based on the COMPASS PhD/Matlab code: PhD thesis about Path solver internals and a clone written in open source Matlab code http://www.mat.univie.ac.at/~neum/software/compass/COMPASS.html