Bones Animation -- Keyframing help!

Hello,
To get to the point, it seems my problem is hopefully simple. After creating and setting bones to a certain model, I find that the bones that I use “Auto IK” on does not follow my keyframing. I press I-KEY and no frames are added – or perhaps the selected bones do not follow my keys.

Just as equally, as I attempt to copy a pose and paste the mirrored pose,
http://img406.imageshack.us/img406/3576/000000000000hu1.jpg
the pose immediately mirrors every single bone along the wrong axis that I intended.

Here’s the .blend if you could help. Thank you.
http://www.sharebigfile.com/file/5551/STAGE-4-testwalk.blend.html

First of all, the rotation of your armature and object don’t match, which will give you headaches later and is the reason why mirroring poses doesn’t work.

Unparent the object (Alt+P). Select the object, apply rotation (Ctrl+A), the same with the armature. The armature will get ugly, but it’s worth recreating it now, than later.

Thank you very much. Does this account for why the leg IK gets a little funky after i bend the knee beyond a certain degree?

No, to control IKs correctly you have to define the degrees of freedom of each join. But usually is enough to bend the joins in edit mode a little in which direction you want them to bend.

Hmm, why would the mesh have any effect on the pose-paste-mirrored thingy?

I looked at the file and I thought it was just because the bones weren’t named with a .L/R suffix, but when I changed the names the pose-paste still didn’t work.

I created a new simple foot/shin/thigh/hip/pelvis armature (L/R) and I still can’t get the pose-paste to work. I did create that armature in that same file though … seems unllikely ??? that anything else in the file could be influencing the new armature. I’ll create a brand new file/armature see what happens.

Mike

The rotation of the mesh isn’t a problem while mirroring poses, the rotation of the armature however is, since blender mirrors the pose over the armature objects x axis. And in this case this axis goes front back (instead of left right).

I would personally prefer if Blender objects would be created without any rotations, I think it only confuses beginners.

The reason why the leg bones can’t be keyframed is because of the IK chain. Their position is calculated from R/L_IK_HANDLE and constraints are applied after positioning or rotating of bones, so no matter where you move them, the IK chain will always move them back.

I would suggest you to check out http://mediawiki.blender.org/index.php/BSoD/Introduction_to_Rigging , there is very much valuable info about how all this works.

Ah, thank you both for your contributions. I will definately check out this website, ondrew, to see if it solves my questions – which i am in no doubt of.

However, for argument’s sake, why would the legs respond to keyframing yet the arms would not? Obviously, from my lack of experience, I used a tutorial to achieve my armature system, yet it never explained exactly why it isn’t reasonable to build the leg armature just like the arm/hand armature structure.

Edit: Upon further examination of your solution (unparenting, applying scale and roation, reparenting) there appears another problem. Unless I am missing something, or assuming something incorrect, the mesh deforms at a greater magnitude than how much I move the armature. I attempt to unparent the mesh from the armature alt+P, then apply rotation and scale to both objects individually ctrl+A, then reparent the objects alt+P while the mesh assumes the previous settings of the vertex weight paint to the bones. However, when I attempt to move the IK – or any of the bones individually, aside from the spine, the mesh appears to deform at an exadderated rate.

Check that the mesh doesn’t have multiple armature modifiers assigned to it. Even ‘fake’ armature modifiers count.

Aligorith

That’s because of two things: the centers of the objects don’t match (which matters only a little) and because the armature’s rest position (the edit mode position) doesn’t match the objects rest position.

For example your right lower leg bone is in rest position for example 1 unit away from your leg. That means that while deforming it will stay in 1 unit distance from the leg.

Your first point, ondrew, seems to make sense. However, perhaps this file here will show that my problems persist, even when the mesh matches the rest position of the armature.

http://www.filefactory.com/file/8a1d70/

Your rest positions match, but the rotation of the objects are still wrong. They don’t match and the armature in the front view is rotated by 90 degrees. Object centers also don’t match, but that’s just a small problem.

I fixed all those things and uploaded it here
http://www.megaupload.com/?d=680V3HS0

Excellent, thank you.

It appears this is a pretty confusing error, though. When using 3ds max, I never had such problems with the armatures. It was a lot simplier, too. The IK handle of the legs was the same as the arms and rest of the body. It just seems needless to go through such proceedures and cautions just to prevent the chaos that we just went through with my project.

Yeah, I also found it extremely confusing before I learned to distinguish an object (only the pink center) and it’s data (the assigned mesh/armature/metaball etc).

As I said earlier I would prefer if all objects were created with 0,0,0 for rotations.