Skip to content
Level 2Drill-down concept

Skinning & Weight Painting

What the parent explanation assumed you knew:

You understand that MetaHuman has a skeleton of bones that deform the mesh, but not how the mesh 'knows' which bones to follow.

What this page explains:

How skinning weights define the relationship between bones and mesh vertices, enabling smooth deformation when bones move.

The Explanation

Skinning is the process of attaching a mesh (the 'skin') to a skeleton so that when bones move, the mesh deforms naturally. The key is weight painting - defining how strongly each vertex follows each bone.

The Core Concept:

Every vertex in the mesh has a list of bones that influence it, each with a weight from 0.0 to 1.0. Weights must sum to 1.0 per vertex.

vertex_position = Σ (bone_transform × original_position × weight)

Example: Elbow Joint

Consider a vertex at the inner elbow:

  • Upper arm bone weight: 0.4
  • Forearm bone weight: 0.6
  • All other bones: 0.0

When you bend your elbow:

  • The vertex follows 40% of the upper arm's rotation
  • And 60% of the forearm's rotation
  • Creating smooth deformation instead of sharp folding

Linear Blend Skinning (LBS):

The most common algorithm, used by most game engines:

v' = Σᵢ wᵢ × Mᵢ × v

where: v = original vertex position v' = deformed vertex position wᵢ = weight for bone i Mᵢ = transformation matrix for bone i `

Problems with LBS:

1. Volume Loss - When joints bend 90°+, vertices collapse inward (the 'candy wrapper' effect) 2. Collapsing Elbows - Sharp bends cause mesh intersection 3. Unnatural Creasing - Skin doesn't behave like weighted interpolation

Solutions:

1. Dual Quaternion Skinning - Preserves volume better 2. Corrective Blendshapes - Add sculpted fixes for extreme poses 3. Muscle Systems - Simulate underlying muscle bulge

MetaHuman's Approach:

MetaHuman uses a hybrid system:

  • LBS as the base deformation
  • 700+ bones for fine control (especially in the face)
  • Corrective morphs for problem poses
  • RigLogic for optimized evaluation

Weight Painting in Practice:

Artists manually paint weights using tools that visualize influence:

  • Red = full influence (1.0)
  • Blue = no influence (0.0)
  • Gradient between = partial influence

Good weights require understanding anatomy - where does skin stretch vs. compress? Where do bones have exclusive control vs. shared influence?

Visual Aid

See how weight values affect vertex deformation. Adjust bone weights and watch the mesh respond to rotation.

Open interactive demo →

The "Aha" Moment

Skinning weights answer the question: 'When this bone moves, how much should each nearby vertex care?' - and the answer creates the difference between robotic and organic movement.

Go Even Deeper

This explanation assumes you understand these fundamentals. Click to learn more:

transformation matrices

Level 1 fundamental

vertex mesh basics

Level 1 fundamental