What weight painting does and why you need it
Weight painting is how you tell Blender which parts of a 3D model should move when a bone moves. When you rig a character — attach a skeleton of bones to a mesh — each bone needs to know how much influence it has over the surrounding geometry. Weight painting assigns that influence as a gradient of color, where red means "this bone controls this area completely" and blue means "this bone has no control here."
Without weight painting, moving a bone would either move nothing or move the entire model as a rigid block. With it, you can bend an arm at the elbow, rotate a head on the neck, or flex fingers without the mesh tearing or deforming in ways that break the illusion of a real character.
Key Takeaways
- Weight painting assigns how much each bone influences nearby mesh geometry, using a color gradient from red (full control) to blue (no control).
- You access the weight paint mode from the top-left mode selector in the 3D viewport, or by pressing Tab then Z and choosing "Weight Paint".
- The brush strength, size, and weight value all live in the Tool panel on the left side of the screen, and you adjust them before or while painting.
- You can paint on one bone at a time by selecting it in the Outliner or by using the weight paint menu to isolate which bone you are working on.
- Testing your weights means posing the armature in the pose mode to see how the mesh deforms, then returning to weight paint mode to fix problem areas.
Entering weight paint mode and selecting your bone
Start with your character model and its armature already in the scene. Select the mesh (not the armature) in the outliner or by clicking it in the viewport. At the top left of the 3D viewport, you will see a dropdown that says "Object Mode" — click it and choose "Weight Paint Mode," or press Tab to enter edit mode, then press Z and select "Weight Paint" from the pie menu.
Once you are in weight paint mode, the mesh turns white or gray. Now you need to tell Blender which bone you want to paint weights for. Look at the properties panel on the right side of the screen — you will see a section called "Object Data Properties" (it looks like a green triangle). Scroll down until you see "Vertex Groups." This list shows every bone in your armature. Click the bone you want to paint for — for example, "Armature.UpperArm.L" — and it will highlight in the viewport.
If you cannot see the vertex groups list, make sure you have the mesh selected, not the armature. The armature has its own properties panel, and they look different.
Adjusting brush size, strength, and weight value
On the left side of the screen, you will see the Tool panel. If it is not visible, press T to open it. Here you control three things that change how your brush behaves: Size (how large the brush circle is), Strength (how much influence the brush adds or removes in one stroke), and Weight (the actual value you are painting — usually between 0 and 1, where 1 is full influence and 0 is no influence).
Start with a brush size that covers the area you want to paint — for an upper arm, that might be 50 to 100 pixels. Set strength to 0.5 or lower so you can build up the weight gradually instead of painting it all at once. Set the weight value to 1.0 if you want to add influence, or 0.0 if you want to remove it. You can also paint at intermediate values like 0.5 to create a softer blend between bones.
Scroll your mouse wheel to change brush size while painting, or hold Shift and scroll to change strength. This keeps you from having to reach the tool panel constantly.
Painting weights onto the mesh
Click and drag on the mesh to paint. Red areas show where the bone has full influence (weight 1.0). As you move toward blue, the bone has less influence — green is around 0.5, and blue is 0.0. The color gradient shows you at a glance which areas the bone controls.
Paint the area directly around the bone first. For an upper arm bone, paint the entire upper arm red. Then use a lower weight value (like 0.3 or 0.4) to paint a softer transition zone where the upper arm meets the forearm. This blend prevents hard creases when the arm bends.
If you paint too much and need to undo, press Ctrl+Z. If you want to erase weight from an area, set the weight value to 0.0 and paint over it. You can also hold Ctrl while painting to subtract weight instead of adding it — this is faster than switching the weight value back and forth.
Switching between bones and using the weight menu
To paint for a different bone, click its name in the Vertex Groups list on the right. The mesh will update to show the weights for that bone. You can also use the weight paint menu to see all bones at once and isolate which one you are working on. Press Shift+W in weight paint mode to open the weights menu, then choose "Isolate Deform Bones" to hide all non-deforming bones and focus on the ones that actually move the mesh.
Some rigs have many bones — a hand might have 15 or more. Painting each one individually is slow. You can speed this up by using the "Smooth" brush instead of the standard brush. The smooth brush averages the weights in an area, which helps blend transitions between bones without having to paint each one separately. Find it in the Tool panel under "Brush" — it is listed as one of the brush types.
Testing your weights by posing the armature
Weight painting is not finished until you see how the mesh actually deforms. Switch to pose mode by pressing Tab, then pressing Z and choosing "Pose Mode" (or by selecting the armature and changing the mode dropdown). Now rotate and bend the bones to see how the mesh follows.
Rotate the upper arm bone and watch the upper arm mesh. If it tears or folds strangely, or if the forearm moves when it should not, you have a weight problem. Go back to weight paint mode (Tab, then Z, then "Weight Paint"), select the problem bone, and adjust. Paint more red if the bone is not controlling enough area, or paint blue (weight 0.0) if it is controlling too much.
This cycle — paint, pose, check, return to paint — is normal and expected. Professional rigs often take hours of weight painting to get right. Start with rough weights and refine them as you test.
Common weight painting mistakes and how to fix them
The most common mistake is painting too much weight on one bone. If you paint the entire upper arm and forearm red for the upper arm bone, the forearm will move with the upper arm even when you rotate only the forearm bone. Fix this by selecting the forearm bone in the vertex groups list and painting the forearm area blue (0.0) to remove the upper arm bone's influence there.
Another mistake is leaving areas unpainted. If a part of the mesh is white or gray with no color, it has no weight assigned to any bone and will not move at all. Paint it with the appropriate bone's weight until it turns red or another color. You can also use the "Auto Normalize" option in the tool panel — when it is on, Blender automatically adjusts other bones' weights so the total always adds up to 1.0, which prevents unpainted areas.
A third mistake is painting too sharp a transition. If the boundary between two bones is a hard line instead of a gradient, the mesh will crease when it bends. Use the smooth brush or paint intermediate weight values (like 0.3 or 0.5) in the transition zone to create a softer blend.
Frequently Asked Questions
How do I know if a bone is deforming the mesh or just controlling other bones?
Deforming bones have a checkmark next to their name in the Vertex Groups list. Non-deforming bones (like control bones used for animation) do not appear in the list at all. You only paint weights for bones that actually move the mesh.
Can I paint weights for multiple bones at once?
Not directly — you select one bone at a time in the Vertex Groups list. However, you can use the "Smooth" brush to blend weights between bones, or use the "Blur" brush to soften transitions. Both work on the selected bone but affect how it blends with neighboring bones.
What does the "Normalize" option do?
When normalize is on, Blender makes sure the total weight across all bones for each vertex adds up to 1.0. This prevents areas from moving less than they should. Turn it on in the tool panel under "Normalize" — it is usually a good idea to leave it on unless you have a specific reason to turn it off.
Why does my mesh look weird when I pose the armature?
This usually means the weights are wrong — either a bone is controlling too much area, not enough area, or the transition between bones is too sharp. Go back to weight paint mode, select the problem bone, and adjust. Paint more red to increase its influence or more blue to decrease it.
Can I copy weights from one side of a character to the other?
Yes. In weight paint mode, press Shift+W to open the weights menu, then choose "Mirror" or "Flip." This copies the weights from one side (usually the left) to the other (usually the right), which saves time on symmetrical characters. Make sure your bones are named with .L and .R suffixes so Blender knows which bones are mirrors of each other.