Armature not moving the mesh correctly?

Hey blenderheads, I have always had trouble with rigging and this project is no different. I am making a rat’s paw with armature, and until recently I had it all working fine and perfect. That is, until I ctrl+z’d a few too many times and then moved some stuff around without realizing what I had undone. Now my paw is acting strange. The thumb is linked to it’s relative armature, but does not move the same distance as the bone. When I go to rotate the bone, the thumb sliggishly crawls a small amount of the distance instead of snapping along with the bone.

I did search the forums and the wiki and google for this, but I couldn’t really explain my problem to the search engines and what information I gleaned I already knew.

Some images illustrating my problem:
http://www.milkshakezombie.com/thumb1.jpg http://www.milkshakezombie.com/thumb2.jpg http://www.milkshakezombie.com/thumb3.jpg

And as I continue to rotate the bone, the thumb retreats into the hand and scales itself.
I thought that perhaps I had selected too many vertices in the vert group, but I quadruple checked and it is all fine. The worst part is that it was working beautifully just moments before, and now it is wrecked when I swear I didn’t change anything. I have deleted the thumb bones and re-skinned them, but that didn’t work either, so there must be a setting I am missing. Any help or even links would be much appreciated, and I’ll post it in WIP as I get more done.

Here’s the blendfile:
http:www.milkshakezombie.com/ratspaw_broken.rar

Hi Brokesy, if you select your bicep vertices you will see that the thumb vertices are also selected. B key and middle mouse select the bicep, leaving only the thumb vertices selected. Click remove. Try pose again. Your thumb now works fine :slight_smile:

You have the thumb vertex group sharing it’s influence with the hand_body vertex group, with both set to 100% influence, so effectively where they overlap (the entire thumb area) the influence is 50%, not 100% … besides which you have envelopes turned on … (EDIT : didn’t notice the bicep group … so the thumb has 33% influence)

You could try and fix this manually with weight painting etc., but you will get better results (and faster) by using the new “Bone Heat” option available in 2.46 . I notice that you didn’t parent the armature to the mesh and just used the modifier, but contrary to some advice you get, it is actually good form to parent your mesh to the armature … And the “Bone Heat” option is only available through the parenting process …

But before you try this you need to fix a few problems and set up the armature for good results . First, you need to apply the scale and rotation on both the armature and mesh objects (both have odd rotation values, and the mesh is scaled too) - this will save you a lot of grief when you start keying for animation .
Then tab into Edit Mode for the armature and recalculate the bone roll with Ctrl-N .
Now go to the Armature panel and turn on the Quaternion and Vertex Group only .
Delete the armature modifier for the mesh .
Select your mesh and then shift-select the armature and Ctrl-P -> Armature -> Create from Bone Heat
Make the “virtual” armature modifier that the parenting process inserted real for the mesh .

Oh man, I feel like an idiot now, thanks for the help guys. I redid the vertice groups and it works all good now. Vertex Pusher: sounds like some advanced stuff you got going there, I’m going to have to look into it, thanks.

EDIT: Oh wow, that bone heat process worked way better than my manual vertex groups ever would, the hand deforms correctly when I pose it into a fist instead of having random skinny bits. Although I don’t quite understand what you mean with applying the scale and rotation, and yeah, the arm started off as massive, so I scaled it down to be in proportion with the rat model I am making. Thanks a heap guys!