Hand rigging nightmare

Hi,

A newbie here, so be gentle…

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.

http://projectsharlo.suerler.com/img/sharlo.jpg http://projectsharlo.suerler.com/img/sharlo2.jpg

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.
http://projectsharlo.suerler.com/img/Sharlo-hand.jpg

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…

Thanks in advance for your help.

Tugkan
Stockholm

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.

Enrico,

Thank you for your message. I checked again carefully it was neither of them.

I am removing the bones in both hands and will re-do the rigging for the 5th time.

It’s too late for me to give up on this. The guy feels like my buddy now, I can’t give up on him.

Thank you anyway.

Tugkan

A question,

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?

Thanks.

Tugkan

Is the armature modifier first on the list of modifiers?

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.

Hi Calvin,

Your question made me notice a weird situation.

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:
http://projectsharlo.suerler.com/img/virtual.jpg

And when I googled “virtual modifier”, I found a recommendation to click on “make real” button on the first section of this “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?

Help! My brain started to melt…

Tugkan

Hi Orinoco,

Thanks for the idea, but didn’t work.

Still busy here with re-constructing the hand armature.

Tugkan

No that won’t cause a 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 :

  1. Delete all your vertex groups (select the mesh / edit panel vertex groups / Delete button

  2. 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

  1. Select the armature, switch to Pose mode, then select your mesh, switch to weight paint mode

  2. (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.

Mike

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.

Mike

Hi Mike,

Thank you for your detailed description.

Yes I use 2.43 on Ubuntu.

Will follow your procedure when I’m done with the current attempt (not promising).

Thanks for your time.

Tugkan

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!

Which procedure you use, or even if you use vertex groups or envelopes doesn’t really matter (the Ludwig rig is setup with primarily Envelopes).

As I wrote before, the important thing is to get only one bone influenincg a particular area of the finger.

I use a combination of weight painting and the vertex panel. I haven’t used envelopes much.

Mike

Sorry. Sometimes it makes a difference. I’m rebuilding my Capt. Blender rig for much the same reasons. Could there be a bug in 2.43?

Thank you for your replies,

I am now following Mike’s procedure above, will also utilize tips of Greboide.

Orinoco, I don’t know if it’s bug/version issues causes failure of Captain Blender procedures.

I respect the work behind the book and the Captain, but it doesn’t work as smooth as on paper.

I will report you guys the destiny of my Sharlo’s fingers…

Thank you.

Tugkan
Stockholm

Mike and all other helpful guys,

Thank you.

It worked. So one should avoid envelopes (or as described in captain blender book) since described corrections do not help to fix weird deformations.

Procedure written by Mike worked smoothly. Maybe not new to many, but it made my day.

Thank you.

Tugkan
http://projectsharlo.suerler.com/img/beforeafter.jpg