If you’re running the springIK then you get a graph with on solver that you can adjust how the spring tension runs through the joints. In our Quad rig we hook this graph up to a channel on the controller so the animators can push the ik tenion almost in a wave up through the joints. Image a big cat and the way their leg compresses and expands as they crouch down and leap…this is a great way to help get that effect
I ran into this a little over a year ago and had to do exactly what Morgan found. Keep the IK joints out of the main hierarchy and under a world-space node, then constrain them into the main rig. This was pretty annoying and I was about to put in a support ticket until I found the solution. I’d like to know if this is a bug or just the way the solver works (which probably means it’s a bug).
Ah that old chestnut! Been a while since we wrote our Quad setup but yes, I remember the issues of grouping the systems to the Hips and the issues with the pole vectors. Our rig setup uses switching chains, 3 extra chains that the IK,FK and solution data is switched via, so all we ended up doing was to point constraint the systems to the hips rather than parent constrain them.
The flip stuff on generation I seem to remember we got round by making the IKSolver with the enabled flag off, then setting the poleVector up, then at the end of the build turning the solvers on.
But then as I said, probably 3 years since we wrote this stuff. Hooking the graph start and end to a control channel works a treat though and gives you a really nice control over the bias of the spring