Skinning

Processus de liaison entre un mesh et une armature, permettant au mesh de se déformer quand les os bougent. Étape clé entre modélisation et animation.

Skinning facial : le lip ring (18 bones) permet des expressions réalistes grâce aux poids assignés.

Le Skinning est le processus qui lie un Mesh Mesh Structure de base d'un objet 3D composée de vertices, edges et faces formant une surface polygonale. C'est la géométrie fondamentale de tout modèle 3D. Voir la définition complète → (la « peau ») à une Armature (le « squelette »). Une fois skinné, le mesh se déforme automatiquement quand les os bougent. C’est l’étape qui transforme un modèle statique en personnage animable.

Le principe

Imaginez une marionnette :

  • Le mesh = le corps visible de la marionnette
  • L’armature = les fils et la croix de contrôle
  • Le skinning = l’attache des fils au corps

Sans skinning, bouger l’armature ne fait rien au mesh. Avec skinning, chaque mouvement d’os entraîne les vertices correspondants.

Skinning vs Rigging vs Weight Painting

Ces termes sont liés mais distincts :

TermeDéfinition
RiggingCréation de l’armature et des contrôles
SkinningLiaison mesh ↔ armature
Weight Painting Weight Painting Technique d'attribution de poids aux vertices pour contrôler l'influence des os sur le mesh. Essentiel pour obtenir des déformations naturelles en animation. Voir la définition complète → Ajustement fin des influences

Le workflow complet :

  1. Rigging : construire le squelette
  2. Skinning : attacher la peau au squelette
  3. Weight Painting : affiner les déformations

Types de skinning

Linear Blend Skinning (LBS)

Méthode standard, aussi appelée « Smooth Skinning » :

  • Chaque vertex est influencé par un ou plusieurs os
  • Les influences sont pondérées (weights)
  • Simple et rapide à calculer
  • Problème : écrasement aux articulations (« candy wrapper effect »)

C’est la méthode par défaut dans la plupart des logiciels.

Dual Quaternion Skinning (DQS)

Méthode avancée qui préserve mieux le volume :

  • Utilise des quaternions au lieu de matrices
  • Moins d’écrasement aux articulations
  • Plus lourd en calcul
  • Meilleur résultat sur les torsions (poignets, épaules)

Disponible dans Blender via l’option « Preserve Volume ».

Comparaison LBS vs DQS

Linear Blend (LBS)Dual Quaternion (DQS)
RapidePlus lent
Écrasement possiblePréserve le volume
Standard industrieOptionnel
Bon pour le jeuBon pour le film

Dans les logiciels 3D

Le skinning est universel :

  • Blender : Armature modifier + Parent With Automatic Weights
  • Maya : Smooth Bind / Rigid Bind
  • 3ds Max : Skin modifier
  • Cinema 4D : Bind command
  • Houdini : Capture / Bone Deform

Focus Blender

Skinner un mesh (méthode rapide)

  1. Sélectionnez d’abord le mesh
  2. Puis l’armature (Shift + clic)
  3. Ctrl + P → choisissez une option de parentage

Options de parentage

OptionDescription
Armature DeformLie sans générer de poids (vide)
With Empty GroupsCrée les vertex groups sans poids
With Envelope WeightsPoids basés sur les enveloppes des os
With Automatic WeightsPoids calculés automatiquement (recommandé)

With Automatic Weights est le point de départ recommandé pour la plupart des cas.

Ce qui se passe techniquement

Quand vous skinnez un mesh :

  1. Un Armature modifier est ajouté au mesh
  2. Des Vertex Groups sont créés (un par os)
  3. Des poids sont assignés aux vertices (si automatic weights)
  4. Le mesh est parenté à l’armature

Vérifier le skinning

Pour voir si un mesh est skinné :

  1. Sélectionnez le mesh
  2. Allez dans Modifier Properties
  3. Cherchez un modifier Armature
  4. Vérifiez que l’Object pointe vers votre armature

Armature Modifier : les options

OptionFonction
ObjectL’armature qui déforme le mesh
Vertex GroupLimite l’influence à un groupe spécifique
Bind ToVertex Groups ou Bone Envelopes
Preserve VolumeActive le Dual Quaternion Skinning
Multi ModifierPermet plusieurs Armature modifiers

Preserve Volume

Pour activer le Dual Quaternion Skinning :

  1. Sélectionnez le mesh
  2. Dans le modifier Armature
  3. Cochez Preserve Volume

Recommandé pour les bras qui tournent, les épaules, les hanches.

Bone Envelopes

Alternative aux vertex groups :

  • Chaque os a une « enveloppe » invisible autour de lui
  • Les vertices dans l’enveloppe sont influencés
  • Plus simple mais moins précis
  • Rarement utilisé pour les personnages finaux

Pour visualiser : sélectionnez l’armature en Edit Mode, activez Envelope dans le Viewport Display.

Workflow de skinning complet

1. Préparation du mesh

Avant de skinner :

  • Mesh propre, topologie correcte
  • Transformations appliquées (Ctrl + A → All Transforms)
  • Origine au bon endroit
  • Pose en T-pose ou A-pose

2. Préparation de l’armature

  • Os correctement nommés (.L, .R pour la symétrie)
  • Hiérarchie parent/enfant logique
  • Transformations appliquées
  • Même origine que le mesh

3. Skinning initial

1. Sélectionnez le mesh
2. Shift + clic sur l'armature
3. Ctrl + P → With Automatic Weights

4. Test des déformations

1. Sélectionnez l'armature
2. Passez en Pose Mode
3. Bougez chaque os pour tester
4. Identifiez les zones problématiques

5. Correction par Weight Painting

1. Sélectionnez le mesh
2. Passez en Weight Paint Mode
3. Ctrl + clic sur un os
4. Peignez pour corriger les poids

6. Itération

Répétez les étapes 4-5 jusqu’à satisfaction.

Problèmes courants et solutions

« Automatic Weights » échoue

Message d’erreur : « Bone Heat Weighting: failed to find solution »

Causes possibles :

  • Mesh non-manifold (trous, faces internes)
  • Géométrie trop complexe ou trop simple
  • Os trop éloignés du mesh

Solutions :

  • Nettoyez le mesh (Merge by Distance, supprimez les faces internes)
  • Vérifiez que les os sont à l’intérieur du mesh
  • Essayez « With Empty Groups » et peignez manuellement

Vertices qui ne bougent pas

Cause : Aucun poids assigné sur ces vertices.

Solution :

  • Vérifiez les vertex groups
  • Peignez des poids en Weight Paint Mode
  • Utilisez Weights → Assign Automatic From Bones

Déformation bizarre / vertices qui volent

Cause : Poids sur le mauvais os ou poids trop élevés.

Solution :

  • Identifiez le vertex group problématique
  • Nettoyez les poids parasites
  • Utilisez Weights → Clean pour supprimer les poids très faibles

Écrasement aux articulations

Cause : Linear Blend Skinning classique.

Solutions :

  • Activez Preserve Volume
  • Ajoutez des edge loops aux articulations
  • Utilisez des Corrective Shape Keys
  • Ajoutez des os de twist/roll

Mesh qui traverse lui-même

Cause : Pas assez de géométrie ou poids mal répartis.

Solutions :

  • Ajoutez des subdivisions aux zones problématiques
  • Affinez le weight painting
  • Utilisez des Shape Keys correctifs

Skinning pour les vêtements

Méthode 1 : Skinning direct

Skinnez les vêtements directement à l’armature, comme le corps.

  • Avantage : simple, léger
  • Inconvénient : peut traverser le corps

Méthode 2 : Transfer Weights

Transférez les poids du corps vers les vêtements :

  1. Sélectionnez le vêtement, puis le corps
  2. Object → Link/Transfer Data → Transfer Mesh Data
  3. Cochez Vertex Groups

Méthode 3 : Mesh Deform

Utilisez le corps comme « cage » de déformation :

  1. Ajoutez un modifier Mesh Deform au vêtement
  2. Sélectionnez le corps comme objet de référence
  3. Cliquez Bind

Plus lourd mais évite mieux les intersections.

Méthode 4 : Surface Deform

Similaire à Mesh Deform mais colle à la surface :

  1. Ajoutez un modifier Surface Deform au vêtement
  2. Sélectionnez le corps
  3. Cliquez Bind

Skinning pour les objets rigides

Pour les accessoires (ceintures, armures, armes) :

Option 1 : Parent to Bone

  1. Sélectionnez l’objet, puis l’armature
  2. Ctrl + P → Bone
  3. L’objet suit l’os à 100%

Option 2 : Child Of Constraint

  1. Ajoutez une contrainte Child Of
  2. Ciblez l’os souhaité
  3. Plus de contrôle que le parentage direct

Pas besoin de weight painting pour les objets rigides.

Optimisation

Pour le jeu vidéo

  • Limitez les influences : max 4 os par vertex (standard GPU)
  • Nettoyez les poids faibles : supprimez les poids < 0.01
  • Normalisez : poids totaux = 1.0 par vertex

Dans Blender : Weights → Limit Total (limite à N influences)

Pour le rendu

  • Plus de liberté sur le nombre d’influences
  • Dual Quaternion recommandé pour la qualité
  • Corrective Shape Keys pour les détails

Pour aller plus loin