Making variations of a rigged character by non-uniformly scaling bones...?

I’ve rigged a simple character. I need about a dozen more different-looking characters for the background of a scene; they need to look like different people, but they don’t need to do much, just be posed, maybe with a little idle motion (sway, head turns).

No reason they can’t have the same topology, so I’m hoping I can just duplicate my first one, armature and all, then change clothing colours, swap the (static) hair mesh out for different ones etc.

Ideally I want to change their body proportions too; have some shorter, some fatter etc. Non-uniform scaling of the bones would let me do this quite simply: Am I right in thinking that the only no-no with armatures with non-uniformly scaled bones is if you try to use IK? That is, as long as I stick with FK for any posing / simple movements, I should be fine?

If your armature has a “root” bone (normally between the feet) to which all major bones and IK targets are parented, you can scale this bone in any axis and not cause problems to an IK chain, since the IK targets will also scale proportionally. Take a look at the Rigify armature, I have just tried this on a human rigged with this and it works fine.

Cheers, Clock.

Oh, cool, thanks! Have to see whether it screws up the mesh deform too much (a tall character might end up with thick arms when extended horizontally, thin arms when they’re hanging down) but could well be good enough for background chars, and IK would save a lot of time. Ta!

Even with IK, you’re likely to be able to get away with this. Just make sure to reposition your IK targets appropriately. It DOES depend on other constraints used as well. A complicated rig could have a lot of mechanism bones that won’t work properly when you start violating their assumptions by scaling bones.

What I’d recommend doing is writing your scaling to your mesh and armature, by a) applying the armature modifier to the mesh and b) ctrl-a applying your pose as rest pose. Then you can recreate the armature modifier. This leaves you without any non-uniform scaling, with a model where you can safely clear all transformations, where you can safely load animation from the same style of skeleton. Give it a quick check afterwards, and you should be good to go.

Nice. Thanks bandages - I knew it was doable to rejig the armature/mesh, but didn’t realise quite how simple it could be - now you’ve laid out the steps it’s kinda obvious. Many thanks for throwing some light :slight_smile:

If you are using linked assets, you can link a group into your production scene, scale the group instance to any size you want and then just proxy the rig and it will work the same as before. Simply duplicate and rename your original file for each character you want to link.