That’s easy. You just have to rig the cap to a bone that is a child of the squash and stretch bone. Your rig is nice, and I’m no animator (just a hobbiest one) so I can’t comment about keeping the graph editor clean or not. Your rig has a lot of character, but I think you can simplify a lot of things.
For instance, you have squash and stretch in the head, and you use 3 bones for it, but you can get the exact same result by just scaling the head bone along it’s local y axis. No need for the additional 2 stretch bones (stretch to and target bone) And you need to reset your stretch modifier, because by default, it is stretched a bit.
You can pull the hands and the feet off. and you have some skinning issues in the ankles. Maybe it’s your preference, but I also think you have a LOT of controls for the spine, and only in FK. By default, you pull the fingers off, instead of rotating them.
Why do you have a hand IK that has it’s Y axis pointing upwards (not useful in graph editor?!) when all that bone does is being parented to the hand control bone? Why not lose the hand control bone altogether? You have two bones here were you need only one.
There is also something weird going on in the feet. The poletargets for the knees are located straight in front of the knees, so an offset value of 90 degrees should be correct. However, you have 82 degrees. This is most likely happening because the pivot for the lower leg and the IK target (foot.l) are not exactly the same. This is also the case for the toe and footmiddle(shin) bones. And why do you have your heelbone’s pivot at the ankle? also, for preference, why not have the heelbone (which you use as a footcontrol) aligned with the world? That way the z axis is upwards, and should be easier for using in the graph editor, right?
You also have an issue in the arms ease in and out value for the Bbone segments. In rest pose the arms look different from the rest pose in edit mode. It’s hard to notice but this makes the upper arm distort a bit at the shoulder. he solution would be to either position the shoulder aligned to the arm, or use a child bone between the shoulder and the upperarm that is aligned to the upperarm. You make that bone a child to the shoulder, and the upperarm a child to that new bone. That way you keep the shoulder pivot, but you lose the distortion.
About ordering your parts, why do you have so many bodyparts as separate objects? Every part has a separate armature modifier, while it is much cleaner, and easier to work with to have everything in a single object. If I make the parts selectable and clear their rotation, some parts turn 90 degrees, if I clear the scale, every part get’s blown up, if I clear the location, everything jumps to the world’s 0,0,0. IMO, a good rig has a character object/objects that have their loc/rot/scale 0/0/1 and aligned with the rig.
And the rig should also have it’s origin in XYZ 0,0,0, which is not the case. It is slightly offset, at the left ankle. This is my preference, but I would join all the objects, make sure the loc/rot/scale is 0/0/1, and just have one character object, with one modifier. Even if you’re not supposed to select the character object, even if you do select it (and the rig/armature object) if you clear the loc/rot/scale, everything stays nicely in place.
(You can fix this by using ctrlA, and applying loc/rot/scale for all your objects, or just add a new object, like a plane, that doesn’t have a weird location, rotation or scale, and join all your other character objects with that new object. You may want to go into edit mode and remove the actual plane though…)
I love how this character looks, but even without the issues about location/rotation/scale, there are too many controls and too much of a hassle to make it animator friendly to ME. I’m not trying to say you are doing things wrong here, after all you say you are a professional animator, I’m just saying, that for my tastes, the rig is not intuitive enough…
I’m working on a rig right now, which is almost complete. You can find the wip here: http://blenderartists.org/forum/showthread.php?t=192517
or look at my website: http://thelowlander.wordpress.com/ (I’ve used this rig in more characters, you can see them in the first few posts)
If you like, I could send you the rig to play with. I think you would like it, and I am curious about a pro’s opinion anyhow, but on the condition that you don’t share it, as it is not finished, and I’m not sure about releasing it yet.
PS. If you want the cap to deform proportional to the squashed head (which is probably what you’ll want), you’ll have to use a lattice. Put one around the head with the cap. Have the lattice deform the head/cap, and make the lattice Put the control bone’s pivot in the center of the sphere/head, make it a child of the headbone (or have a childbone in the center of the head, and constrain the control bone for the cap to the location of the childbone, in case a scale issue might appear, or just uncheck “inherit scale” which is simpler/cleaner to do.
I have a very old ballrig which uses a lattice to rotate while squashed. The same idea should work for the head. You can find it on my old site: http://sites.google.com/site/tielemanm/hidden225. I just checked, and it works fine in blender 2.52. (open without loading the UI, so you’ll get the default 2.52 ui instead, which is better)