Limiting the roll on a rigid body cylinder joint chain I am trying to setup a rig that is based on rigid body shapes driving bones that then drive a mesh. The current setup is a chain of cylinders attached to each other with rigid body constraints (point type.) A chain of bones is child of an IKed to the cylinders, and a mesh strip is controlled by the bones. (See attached file.)

Currently is working well, except that the cylinders can roll over and twist the bones too much. I would like to limit the amount they can roll. This seems to be the local Z. I have tried the Limit Rotation constraint. This succeeds in having them stop rolling at a certain point, but then they fall over and begin rotating in other directions.

How can I stop their roll without this new poor behavior? The file is attached showing my setup. Is there a better way to do this?
All you really need to do is get rid of the Child Of constraints on all of your bones.

The other thing I did which will improve the accuracy of the simulation, is change the shape of the ridge body collision shapes, so that they are thinner and wider (they can also be much shorter).

In this picture I have the ridge body collision set to "Box", and as you can see it works fine.




For reference here is before and after.