Character's finger end shrinks when rotating the bone.

I’m not sure how to fight this. I tried different weight paints but nothing works. No matter what I change the weight to the mesh always shrinks and curves instead of deforming more (rigidly?). I’m thinking its probably the bone position but I’m not sure.



I have a couple ideas for this, If you make this last bone over sized ( maybe this only works when the computer creates the bone weight( create from bone heat)). second an extra ring of faces ( face loops) where the bone hinges but I have better luck with the extra large bone, the size of the bone makes a difference. I see it sticking out some

What you are getting is pretty much what you would expect given your weight painting.

Firstly, ensure that you have a sharp break between the finger sections. You should have maybe 5 edgeloops at the join, and weight paint them 100%/0%, 75%/25%, 50%/50%, 25%/75% and 0%/100% then everything from then on 100% belonging to the relevant section of the finger. Make sure that nothing belongs to any other vertex group.

Basically, armatures/bones move mesh geometry, and try to smooth the effects to a curve. If you want a sharp curve, you need more geometry, so add some extra loops around the finger.

If the finger then flattens as you bend it, you will need to add a ‘fan’ bone, which is another bone that is constrained to rotate half the angle that the joint rotates, and the loops at the point of the bend belong to this bone, which helps to hold the shape of the mesh.

Matt

You could also use a mesh deformer modifier and use the armature to use the deformer.

In my experience, whenever something is deforming wierdly its always because I have some errant weight painting from some other bone on it by mistake, sigh. Often the amount so small that you can’t even see it in the weight paint view using the default color scheme. To check, click on the vert and then look in properties to see which groups it belongs to. Good luck.

oops dup, anyone know how to delete a reply?