I’m working in Blender 2.54, busy rigging a mesh for a project I’m doing for a client.
When I add an armature modifier to the mesh and weight paint it (based on various vertex groups for the fingers, etc.), the object moves out of alignment with the rig.
Before I add an armature modifier to the mesh, the mesh and rig line up well:
The figure is not one solid mesh, so I can rig him with various objects, e.g. arms, legs, hands, etc. It did not do it to other parts of the body - only the hands now.
The problem is partially the misalignment, but when I try to animate the rig, the mesh screws up badly due to the misalignment.
It has not happened to me before (in older versions of Blender). Could it be Blender 2.54?
Else, any other guesses what it could be?
PS: Please don’t comment on the shape of the hand - it is non-human!
I think I found the problem. I therefore document it here for somebody who may encounter the same problem in future.
I believe it is caused by the combination of the following factors:
Rigging the model as a set of separate objects to the same armature, and
Having IK constraints higher up in the rig
I have an IK constraint on the forearm, with the target at the wrist. I also added a pole target to control the elbow’s angle. Activating the IK causes a slight movement in the rig. The mesh is also very sensitive to the pole angle.
It seems as if the hand (as a separate object), although being modified by the rig, did not seem to “be aware” of the IK constraint above it.
I now merely joined the hand mesh with the forearm mesh - and the problem seems resolved. (The meshes are still not linked, only joined, i.e. I did not connect any of their vertices)
Hi, this is a little off-topic, but it’s better to put the Subsurf modifier underneath the Armature modifier. In your case the armature deformation happens after the subsurf, which will make things slow and give ugly deformation
Thanks for that tip, Sago. I also tried to swap it now (again, as I think I tried it last night too) to see whether that may resolve the problems, but it did not work.
But I agree: it is better to have them the other way round.