Panda Bullet

Welcome to Bullet. To be honest I never managed myself to fully understand the effect of those values, but they have been easy to wrap.

Ok, so here is what I know: Constraints have some “location” where the two bodies are connected. This location does not have to be inside or on the surface of either of the two bodies. Depending on the type of constraint it could be a point (e.g. ball and socket), or a line (e. g. hinge or piston).

Now the TransformStates given in the constructor are the transform to this connection point/line, given inside the local reference frames of each boy. Or looking at it the other way: when starting at the connection point/line they are the inverse transform to the two bodies.

Be aware that a TransformState does not only have an rotation (heading/pitch/yaw), but also a translation (x/y/z). Scale and shear are not used here.