Weight painting tips? Please help

So I’ve been working on a model for a very long time now, I’m getting close to finishing it. The problem I’ve run into now is weight painting. My main problem is there are layers of clothes I have to deal with. Another problem is fairly odd parenting (ha ha ha) by this I mean when I move the upper arm, the bottom part of the skirt will move with it. Does anyone know of any shortcuts I can use to make all this easier? Tips, pointing out something I’m doing wrong, etc? P.S, I paired the mesh to the skeleton with automatic weights and that’s the source of my problems.

Tip 1: try to use single, manifold meshes. If you have multiple meshes, retopo to a single mesh.
Tip 2: avoid autoweights unless weighting a single, manifold mesh.
Tip 3: select individual vertices and look on sidebar/item/vertex weights to see what they’re weighted to.
Tip 4: learn how weights work by weighting low poly stuff using only assignment (with one or more vertices selected, properties/object data/vertex groups/assign).

In general automatic weights is a good starting point and then you slowly work your way identifying issues and fix one by one.

First thing to do is find each deform bone in your armature that is affecting parts of the mesh it shouldn’t.

This can be done in a couple of ways and it really depends on how the model is setup.

Lets take the upper arm and skirt as an example. If they are two separate objects (with the same armature applied), then on the skirt object under Object Data Properties, look at the listed Vertex Groups.

With logical naming, there is likely a group called upper_arm.R which matches the bone that deforms the right upper arm. There is no reason for the Skirt object to have that Vertex Group, since the upper_arm.R bone should never control the movement of the skirt.

As such, you can just delete the vertex group from the skirt object, along with any other vertex groups that shouldn’t move the skirt. Apply that process to every separate object you have.

Now, if it is all one single model, then you can’t delete the vertex groups, so you have to weight paint.

The easiest way to do that at first, is to select your armature/rig and then CTRL- Left Click the mesh object to select it and enter Weight paint mode.

With each of the bones visible, again hold down CTRL and Left Click each one of those deform bones. As you do, the area’s of the model that are weight painted to that bone will show in colour from light blue to red.

By default a dark blue colour means 0 weight paint, while red is 1 or full weight paint. Then using the weight paint brush set to 0 with a strength of 1, paint over any area that should be a dark blue but isn’t.

So with upper_arm.R selected, if parts of the skirt are green/red, paint them all till they are solid dark blue. Ideally under Options in the Brushes panel, turn Auto Normalize on. That way all weight painting will add up to 1, which is ideal.