In general, the way I do CP weighting is this:
* Before I start weighting I'll get the joint as close as I can using fan bones
* I have a modeling window open to access the CP weights and next to it I have the model in an action to watch the effect of the weighting. I can grab the splines or CPs in the Action window (where the joint is rotated) and these are also selected in the modeling window were I'll right click on them and select 'Edit CP Weights'
* I will only weight one side of the model then I'll use the MirrorBones plug-in to mirror my work to the other side
* In most cases, in the CP Weighting dialog box I can make an adjustment and click on Apply to see the result in the action window and then, if needed, adjust the weights again and click on 'Done' (trying to click on Apply a third time does not work so well... I should report this). If further adjustments are needed I'll just reopen the Edit Weights dialog box.
* I've found that in the action window, instead of rotating the bone by hand it is often far better to set key frames for the rotation extremes and then scrub through the time-line to rotate the joint. This way you can turn on the geometry bones to see what is happening, exercise the joint in muscle mode to see it without the bones in the way and there are other advantages I can't think of right now (?). On joints that move in more than one axes, eventually you must go back to direct manipulation of the control bones for the fine tuning.
* In joints that move in more then one axes I get the extreme rotations in the 3 main axes one at a time, then check at the extremes of rotations half way between these and finally free motion. Weighting is a one-way affair and find a weighting that works best for all rotations is the name of the game -- fine tuning beyond this is left for smart skin.
* Because my brain has been dulled by calculators, in instances where I have points weighted between more then two bones I have a spread sheet which assists me in the proper division of weights. Say the CP(s) are already weighted between two bones: I can enter the existing weights in the spread sheet and then I can estimate the percent I'd want to give the third bone as if there was only one other bone, the enter this and the spread sheet automatically gives me the proper adjusted percentages for the existing bones.
* I rotate the model a lot to see it from different views and I rotate the bone in its extremes to see the effects of the weighting.
* In many cases I work the silhouette of the mesh first and then do any splines in between
* I always try to weight CPs in groups then, if needed, adjust smaller groups or single CPs as needed. I try to use logical groups (like a circular spline or logical square) and on occasion I'll create temporary groups so I remember what CPs were weighted the same.
* In most cases I'll do a 50/50 split for the spline directly over the rotation pivot then I'll start with a 25% reduction progression (75/25 -- 88/12 -- 94/6) as the splines radiate out from the pivot and fine tune from there. If the splines come too close to another joint, many times a third bone will get mixed in to ease the transition.
Please add any other tips or methods you've found!
Cheers,
Rusty