Joint Position
When making a long chain of bones as in a tail, you want it to be relatively straight, or at the very least evenly arced. You don't want a ragged line of joints you've roughly eyeballed. "Close enough" works sometimes, but often breaks things later on.Here's a super easy method for clean joint chains. When you make a new joint in the chain and its parented, zero out its translate and rotate values and then scrub the translate x until its an appropriate distance for you. Rotate the previous joint until the position is where you want it, and then freeze transforms on your joints. Rinse and repeat and you'll often find that only minor rotation tweeks are needed as you go.
Try to make sure your joints are somewhat evenly spaced. Its easy to see by running running up and down the joint chain and watching the translate x values change.
Joint Orients
You'll definitely want to orient your joints. Joint orientation and rotate order are just as important as position when it comes to animating well. Proper joint orients & rotate order is the difference between smooth tweens and gimbal lock horrors. I don't know how much gimbal lock you've run into, but once was enough for me to be religious about my joint orients and rotation order ever after.A quick method for checking what the joint orients are is to set the move tool to object rather than world space. Then when you select the joints, the move tool's arrows will follow the joint's orientation so you can see which directions things are flowing. All joints in a skeleton should follow the same convention: x points down the chain towards the next joint, and z is like a pin through the hinge of any hinge joints. Y is either up or down, it doesn't matter too much which way as long as its consistent.
If you select the root joint of a skeleton and go to skeleton > orient joints then maya will make its best guess as to what the joint orients should be. It's usually pretty close, so starting with that is always a good idea. Then you can just run through all the joint chains and check for things that need adjusting. Usually fine bones like hands/fingers/feet are where the most tweeks will be needed, as well as every joint that's at the end of a chain (maya can't auto-orient end bones).
To change joint orient, just go to the attribute editor under joints. Typically all that's needed after running maya's orient joints command is to slide the joint's x orient until the z properly hinges their motion. (holding control while dragging on an attribute editor value will make it a slider, nice and easy). You may have to temporarily unparent any down stream joints so they don't lose their positions. As soon as the orient is the way you like it, you can reparent them.
For end-of-chain joints, zero out the joint orients and then adjust from there. 9 times out of 10 zeroing them out is all that's needed.
Rotate Order
Making sure you have the right rotation orders is a little more tricky. I'd say 80-90% of the time default xyz works perfectly as long as you've got your orients set up right. Unless you've run into rotate order problems previously, it's hard to know what's good or not, so I wouldn't always worry about it before binding the skeleton. When you're starting to set up your rigging controls, though, watch for it. If you put a control in and the joint goes weird before being able to reach a particular position, then play with the joint order to see if that's the problem.The best way to check rotate order is to turn your rotate tool to gimbal and then try achieving different positions with the joint. If you quickly get gimbal lock, that's a big warning flag. Set a different rotate order and try again until you can do the most without getting gimbal locked.
Control Objects
As a note for your FK controls, having proper joint orients and proper null groups on your controls will make FK controls a breeze (see previous post for information about null groups). If both are correct then you can just do a direct connection of the rotates. Nothing runs faster than that or is less buggy if you have to do set-driven fixes later on.Quadruped Rigging
Spine
The hardest part about quadraped animation is that the body's movement can be driven by either the front or the end of the spine. Our bones have a fixed order, however, so you may be required to create multiple spine bone chains. Simple FK spines like bipeds can have just won't cut it in a quadraped. You'll need to use a spline IK to drive the joints, and use then cluster deformers to grab particular CVs of the spline IK's curve. Those clusters can then be parented to various control objects.The simplest cluster spline IK set-up has one control at the front of the chain and one control at the end (in the case a shoulder cage control and a hind quarters control). A spline with 5 CVs would allow for 2 to be parented to each control object, and the one in the middle to be parent-constrained to both so it floats between them appropriately.
More complicated set-ups will have a spline curve with more CVs and multiple control objects along the spine for more fine-tuned spinal positions, but that much control isn't required for most animals.
Body Control
So after you've got the shoulder cage and hindquarter control objects, they need to be able to move together and drive each other, without creating a cycle loop that would confuse maya.The best solution I've seen is to have a body cage control which will drive both shoulder and hindquarters. This body cage can then use various pivot points which correspond to the shoulder and hindquarter control objects. There are a lot of different options for going about that, from constraining rotate pivots to a multiple group solution.
Leg IKs
The quadraped leg has more joints in it than the biped leg, so how to put in an IK control and still get proper form from your animal is something you need to consider.One universal thing to keep in mind is that the rear ankle (hock) joint doesn't move like a human's. It's even more rigid and should be treated as a hinge. So you have two hingle joints to contend with in the hind leg, at the knee and hock. One approach uses an IK from the hip to the hock and a reverse foot from the ground to the hock. You do you'll definitely want FK switching so you can have an easier time of animating the leg when its off the ground. Reverse foot controls that go up to the hock are hard to animate in the air and still get quality results.
I've also seen dual IK set-ups with two regular IK handles, though I don't think I like them as much. One IK runs from the hip to the hock, and the other runs from the knee to the ankle. They're a little too loose for my taste, though relatively quick to animate if you don't care about being precise.
My favorite solution so far is a dual IK setup that uses one springIK and one regular IK, although setting it up is a little tricker. Thankfully there's a tutorial online that explains it pretty well: http://morganloomis.com/2011/the-hind-leg/
No comments:
Post a Comment