Hi
I am trying to find the best way of making my animations work with multiple characters, so I don't have to redo all animations for each character.
For various reasons, I cannot make my artists draw the different characters on the same skeleton. I know that would be the way to go normally, but this project is just set up in a way that does not allow that kind of coordination.
This is my workflow:
I make a basic character, character A, and rig him and make a range of animations for him (walking, running, idle, etc.). There are IK constraints on arms and legs, but none on the spine/neck/head. Legs and arms have one image for the whole limb and are made into meshes so they can bend at the joints. The torso and head are not made into meshes.
Then I import a skeleton with the new character, character B, into the project. I use this skeleton as a guide by which I can adjust the bones so they fit character B.
Using transform contraints as described in your blog posts, I reposition and rescale the bones to fit the guide for character B. The characters are humanoids and drawn in the same style (but varies in sizes, shapes and so on), so it's just small adjustments, a little scaling and a little positioning. I don't adjust the rotation of any bones (although I would love to) as I just can't make that work - everything gets weird if I try that :-)
All transform constraints are built like the ones in the blog post. Each limb has its own constraint, all "local" with the root bone as target.I arrange the transform contraints under a new skin for character B so the bone adjustments are only done on this character.
I then put skin placeholders on all bones and put the images for character B body parts of the new character into the skeleton of character A in each appropriate skin placeholder.
Then I position and scale the images/meshes so they fit the character B guide, to which the bones were fitted in step 3. The scaling is often not 1:1 as the bone the image is attached to might have been re-scaled by a transform constraint to fit a shorter limb or something and the image seem to always inherit the scaling of the bone when attaching. (I have a feeling this last step might be the root of my problems).
To my own amazement, this whole thing nearly, sort of, works. Most animations look fine. Walk and run look great. There are some problems, though:
- - I loose the ablility to rotate spine/neck/head bones on character B (these bones have been re--scaled by the transform constraints). Making an IK for them makes it possible to move them again for animation, but creates other problems.
- - Some images on character B are deforming when their bones move. It might actually be all images, but some might be distorting so little that I don't notice it. If I make an animation with the character making a deep bow, the head distorts visibly, fx. It seems the limb images are not distorting, though - maybe because they have IKs on them?
My guess is that my issues result from me adjusting the scale of the bones through transform constraints as well as then re-adjusting the images themselves afterwards to make them still fit the guide. But I don't know how to avoid this.
Is there a way to achieve what I'm trying to do here? Should I go about it in a completely different way?
I simply don't have the time needed to make animations for each character seperately and, as described at the start of this thread, I unfortunately cannot make the artists all work from the same skeleton.