Serious problem with rigging/weight painting...Please help!

Please excuse me, but I may rant a bit in this post since my temper is long gone since I started rigging/weight painting in blender.

Everything… I’m trying to rig a character using rigify.
Example: the shoes (character split up in several separate object) should only be influenced by the foot bones.
However they seem to react to pretty much everything to some degree, including the “Helper bones”…wtf!?
(The helper bones are hidden when applying the envelope)
I’ve also tried selecting all the vertices and manually selecting the bones in the vertex group, however once this is done it resets itself and adds a bunch of bones that I don’t want.
Normalize or not…doesn’t matter.
The “N-List” to the right tells me that this shoe (all vertices selected) is influenced by Foot_L and Calf_L…
Alright, sounds right… yet still when I move around the foot, several other bones are deforming the shoe.

And when it comes to the weight painting I’m going completely insane.
I’ve learned that even if a bone has 100% influence over an area, other bones can still affect this!?
Soo…Am I suppose to go through every single bone and subtract the weight paint from the specific area?!

And these are just the shoes…
The upper body is a complete mess since there’s a lot more bones there and every single one wants to control everything.
It’s not like the model itself is badly designed or has stuff to close together.

I’m really hoping I’m doing some noob mistake, but I’ve been at this on and off for months and watched several tutorials on the subject but to no avail.
I’m new to blender rigging, but been using blender itself for about a year, and before that I’ve got about 10 years of experience from Autodesk Softimage and I’ve rigged hundreds of characters, yet here I can’t even do it with the finished rigify rig…

Please would someone help me, give me some tips or recommend a good tutorial that addresses these issues?

Most major weightpainting issues come from problems with your model/meshes. Either n-gons and tris, or un-applied scale location or rotation of the mesh in object mode and or un-applied location, rotation and scale of the armature.

I am very familiar with the Rigify rigs and I am not sure what you mean by “helper” bones. The only bones that should take weights should be the deformation bones. These bones will have the prefix DEF and have the deform checkbox checked in the bones properties.

Unfortunately, your screenshot has clipped any useful information so I am guessing at your problems. Please supply a .blend (Use as you will not have the post count to post it here. There is a special spot for uploading .blends. Upload and give us the link in this thread.)

I also would not use bone envelopes. Auto weighting is a better method and hand weighting is my preferred method.

Weights work like this: If you have a vertex assigned to one bone and have any influence whatsoever, it will move with that bone 100%. If that vertex is assigned to more then one bone, Blender will interpolate the difference. So, even if you set a bone to have 100% weights, if another bone have 100% weights, Blender will treat it as 50% to each bone. This means that even minute weights will have some minor effect. If you do not want a vertex to be affected by more then one bone, remove the unwanted bone weights completely from the vertex.

You can do this in edit mode of the mesh using the Vertex Weights in the N-Panel or in weight painting mode. Weight Painting Mode can be difficult to read if you are not also in wireframe(Hotkey-Z) mode. The glossy glare can mask minute weights.

I can help you if you supply a blend to work through.

Good luck!

1 Like

Thanks DanPro…if that’s really your name… for the quick response!

I was using the UE4 Addon/rig when writing this and there it’s called “Helper bones” and “Deformation bones”.
So “helper bones” is basically all those little gadgets that helps you control the rig like “knee-target” and such.
Although I have the same problem with the Rigify rig. (Hiding everything except the def-bones before enveloping)

I do use AutoWeight, as it was recommended by most tutorials and my character is set to scale/location.
Also, the thing you mentioned about vertex weight in edit mode, that’s where it seem to reset itself to whatever it wants.
Meaning I select the bones I wish to affect a certain object and normalize (or not), if I screw around with something else and go back to it, it has added other bones to it again…

Since I’m doing this for UnrealEngine, is it possible that the microscopic scale is screwing everything up?
Set to metric and 0.01 scale, so everything is VERY tiny. (The rig itself is not scaled, only the character to match it, and of course set to its new scale/rot/loc)

I’m setting up a new scene now with the Rigify rig to try again and if there’s still trouble I’ll upload the scene.

Hmm…also, instead of starting a new thread… you know why this is happening?
(If the above gif doesn’t work: )
It’s only in Ortho view, which I think is weird since Ortho doesn’t have any near-clipping.

Sorry for bombarding the thread, but here’s the scene:

This is focused on the shoes and the main problem is:
When selecting the vertices on ONE shoe and assigning the foot bones (foot and toe) and normalizing, it sets it to 50/50.
Then do the same thing on the other shoe…
Now, selecting these to vertex groups back and forth it sometimes adds the lower leg bone to the group automatically, or in some cases setting the influence of one of the bones to 0…
And the most annoying part is that it sets the influence equally over the whole foot, Not based on what vertices are closest to the bone…just…everything.
Please tell me that I’m just doing some stupid noob mistake and that it can all be fixed by pressing some magic button.

I’ll take a look. One more post and you will hit the ten minimum for un-moderated posts.

Pretty easy fix. Not sure what tutorials you are following, but they must suck… :slight_smile:

Do this:

  1. Select your armature and make sure you are in Pose Mode.

  2. Select the armature properties tab (Man Icon) and then select the layer I have highlighted. This is the deformation bone layer in the rigify rigs. (Standard and Pitchypoy versions.)

  3. Select the lower three bones on each leg. (Foot, toe and shin.)

  4. CTRL-I to invert the selection and then H to hide. Reselect the bones that are not hidden. (Hotkey-A)

  1. Next, select your shoe mesh. (Object mode.)

  2. Under Vertex Groups, select the black down arrow and then Delete All Groups.

  3. Enter Weight Paint Mode

  4. Select all visible bones. ( should be six, right and left versions of foot, toe and shin_02)

  5. Under the Weights tab, Assign Automatic From Bones.

  6. Rejoice!

Exit weight paint mode and try the rig out. Some minor weight painting may be required, but autoweighting gave me pretty good results.

This is the method I often use to restrict the vertex goups on meshes that do not need all of the vertex groups a nude figure would need. Rinse and repeat for other clothing.

Don’t forget to use mask modifiers on your body mesh. There is no need to make blender calculate meshes that will not be visible.

Good luck!

I’m starting to think auto weighting only works for hi-res meshes…¬_¬

Anyway, I cleared the assignments, did some manual ones, and the mesh works quite nicely. I just followed a simple rule: If a vertex is clearly under the influence of a bone, it will be assigned to that bone. If it is near the joint of two bones, it gets equal weight from the two.

This rule works nicely, and can be tweaked later, but is a good start.

EDIT: DanPro showed me the way.

Damn, you’re my hero! From now on I shall call you Professor DanPro.
Thank you so much for taking the time to look through it and for posting such a detailed explanation!
Blenders weightpainting is a bit awkward in my point of view, but once you know how to do, you can get by without any trouble.

Again, thanks!