I hate shoulders. How do people handle rigging them?
The main problem is that most IK systems treat the arm as if the shoulder has three degrees of freedom. It really doesn’t: it bends and swings, but twist happens in the upper arm, not the shoulder. Three degrees of freedom means there are multiple ways you can orient the shoulder for a given pose, which makes corrective blend shapes a nightmare.
I’ve tried working around this by extracting twist from the shoulder, so rotating the shoulder joint leaves the (bound) shoulder alone, and instead just twists the upper arm twist joints and elbow. It treats the shoulder joint as a twist joint (so it can receive some or none of the twist). That actually works really well: twisting the shoulder simply twists the upper arm and gives only a slight or no twist at the shoulder itself, effectively reducing the bound shoulder to two DOF. This makes deformations make more sense and makes correctives much simpler.
However, you still need to be able to twist at the elbow, since IK systems expect to be able to (and for FK systems it’s a natural thing to want to do too). So, now I’m looking at extracting twist from the elbow and combining it with any twist on the shoulder. I haven’t started on that just yet, but essentially upper arm twist is the combination of shoulder and elbow twist (in the coordinate space of the shoulder), and lower arm twist comes from the hand.
I’m sure these are all solved problems, but I haven’t found any competent info on the subject, so I’m curious how people approach this. The shoulder seems like the single most complex major joint system for rigging.