In my first blender project, I want to animate my Sharlo character based on Charlie Chaplin. I am following Captain Blender procedure from Tony Mullen’s book.
I reached to a point, I can’t go any further and cannot solve the problem.
I assigned the vertex groups through armature by WeightPaint/W-button/‘ApplyBoneEnvelopesToVertexGroups’. And made corrections by checking vertex groups in mesh/edit mode.
Now, when it’s time to make posing for action constrains, such as drvFingersCurl, finger mesh deforms in an unexpected way as below. It reacts to the rotation of the armature lesser than expected, plus get bended weirdly at joints.
Does the problem at the picture look familiar to any of you??
I repeated the whole procedure with different vertex group assignments and weigh painting… And read a lot online/offline. But I could not solve the problem.
All experience/suggestion/guessings are welcomed! Please help…
I must fix this problem with hands since movement of hands/fingers will be the central action in the animation.
And as usual, behind schedule and deadline getting closer…
Maybe you have the “envelope” button in armature edit window selected? Or else, others bones affecting the vertex groups of that finger, that is the vertices of that finger are also in other vertex groups.
Instead of WeightPaint/W-button/‘ApplyBoneEnvelopesToVertexGroups’ method, with the re-made hand bones, I want to create vertex groups manually, naming with own bone.
Would it cause a problem? Same as automatic optin but doing it manually?
Turn on the axis display for the bones, and see which way they are pointing. You may need to set your bone roll angles back to zero, or 90, or just all the same, (Ctrl+r in pose mode, I think) to avoid those twisty deformations. Sorry if this advice is a little vague, but this area is unclear exactly how it works and calls for experimentation.
Actually I had several failures while building armature according to Mullen’s book, so I simply deleted the armature and imported th Ludwig’s armature. Removed every constraint, and started from plain armature.
Anyway, after your quesion I saw I have an inherited “virtual modifier” as below:
And when I googled “virtual modifier”, I found a recommendation to click on “make real” button on the first section ofthis“NoobtoPro” page, but now I’m stuck between a lot of things to digest at once.
Does this “make real” / “virtual modifier” thing sound relevant to my hand rigging problem?
I have Tony’s book, and I actually was meaning to question him on his bone/weigth painting / envelope method (Maybye he’ll see this thread and chime in).
IMO, his procedure is a bit convuluted and overly complex, but it may well work better for him and produce good results. I haven’t done a lot of rigging so I don’t really have a good answer.
But in general, you can use manual vertex assignment or parent to bone/automatic group creation or weigtht painting or even the “Tony method” in almost any combination.
The end result is the same : vertex group(s) with vertices assigned to one or more groups.
The usual answer to your original problem of deformatiions is that you have more than one vertex group (bone) influencing the vertiices, or you don’t have the vertex influence “strong enough” (weight).
My .02 on the procedure :
Delete all your vertex groups (select the mesh / edit panel vertex groups / Delete button
Check that the armature modfier has Envelope turned off . If you starting over with a new armature modifier, I would use CTR-P / Make Parent to Armature / Don’t Create Grouops
*EDIT After doing that, select the mesh and from the Edit / Modifiers Button panel, click the “Make Real” buton, then turn off the Envelopes button in the Armature modifier
Select the armature, switch to Pose mode, then select your mesh, switch to weight paint mode
(Assuming you’re using 2.43 …) bring up the wieght paint “Floating” panel with “N”. Change the Opacit to 1.0
Then select a bone, and weigth paint the hand / finger area for each bone, ensuring that the mesh turns completly red for the area you’re painting.
You can check the mesh by pressing SH-LMB on a mesh area. A “popup” menu will display the vertex group(s) that are influencing the area. To start with I would make sure that there is only one vertex grouop (bone) influencing any one area). For fingers you generally don’t want more than one bone affecting any given mesh area.
If you do get multiple vertex groups affecting a mesh area, you can fix it either by weight painting at weight = 0.0 or preferably use the edit / vertex panel to select the affected areas and remove vertices using the Select / Remove buttons. The “box select” (B) key and “double box” (BB) are handy for selecting vertice groups and holding down ALT after "BB) will deslect vertices.
The “virtual” mofiier gets created when you “CTR-P” (parent) the mesh to an armature. Why it doesn’t just create an “ordinary” armature modifier is probably a complex codiing issue.
Anyway I would always press the Make Real button and then turn off the Envelopes button (if it’s on).
Actually I forgot to mention this step in my previous message, I’ll add it in.
for going manually,do create vertex groups names, according to bones names and follow along using the just made vertex groups and assign the right vertex to it using both weight paint and edit mode assign function, for weight paint select your armature and go pose mode, select the mesh and go weight paint mode, now when you select a bone it will assign vertex to that bone, this way you dont need to be worried by the name of the things, one thing you should do is make a new armature, this will avoid some errors i think,success!