TURNA logo

Tutoriel : Displacement map dans Blender : un vrai relief au rendu

Une displacement map (carte de déplacement) est une image en niveaux de gris qui pousse réellement la surface d'un objet vers l'extérieur ou l'intérieur : pavés qui dépassent du sol, joints de briques creusés, écorce, rochers. Contrairement à une normal map ou à un bump, qui ne font que tromper l'éclairage, elle change la silhouette et projette de vraies ombres sur elle-même. Ce tutoriel explique comment la brancher dans Blender, choisir la bonne méthode de rendu, subdiviser juste ce qu'il faut et éviter les pièges de mémoire.

Bump ou vrai relief : ce que dit le manuel

Blender propose trois méthodes de déplacement, réglées matériau par matériau dans Material Properties > Settings > Displacement :

  • Bump Only : la surface ne bouge pas, seule la normale utilisée pour l'éclairage change. Le manuel de Cycles précise que la silhouette reste fausse et que le relief ne projette aucune ombre sur lui-même. Elle économise la mémoire et convient bien pour les pores de la peau ou de fines rayures.
  • Displacement Only : les sommets sont réellement déplacés avant le rendu. C'est la méthode précise, à condition que le maillage soit finement subdivisé, ce qui coûte de la mémoire.
  • Displacement and Bump : le vrai déplacement porte les grandes formes, le bump les détails fins.

Piège numéro un : par défaut, Blender n'utilise que le bump. Brancher une carte dans la sortie Displacement sans changer cette méthode ne fait bouger aucun sommet. Le manuel ajoute un conseil utile pour Cycles : une fois le maillage très finement subdivisé, mieux vaut passer en Displacement Only, car garder le bump ne fait plus qu'augmenter la mémoire et ralentir le rendu.

Brancher la carte

  • Ajoutez un nœud Image Texture et ouvrez votre carte. Réglez sa Color Space sur Non-Color : le manuel rappelle qu'une carte de données ne doit subir aucune conversion de couleur.
  • Reliez sa sortie Color à l'entrée Height d'un nœud Displacement.
  • Reliez la sortie Displacement de ce nœud à l'entrée Displacement du Material Output.

Le nœud Displacement a trois réglages :

  • Midlevel : la valeur neutre, qui ne déplace rien. À 0,5 par défaut, le gris moyen reste en place, le clair sort, le sombre rentre. Si votre carte a été produite avec le noir comme niveau zéro, réglez Midlevel à 0, sinon tout l'objet gonfle ou se creuse.
  • Scale : l'amplitude du déplacement.
  • Space : en Object Space, le déplacement suit l'échelle de l'objet ; en World Space, il l'ignore.

La profondeur de l'image compte. Le manuel recommande des cartes en 16 ou 32 bits flottants pour le vrai déplacement, car une image 8 bits ne contient souvent pas assez de niveaux et produit des marches visibles. Le format OpenEXR s'y prête bien. Pour une carte utilisée en bump, il conseille l'interpolation Cubic sur l'Image Texture, qui évite l'effet d'escalier.

Une carte n'est pas obligatoire : une texture procédurale branchée dans Height fonctionne de la même façon, sans limite de résolution. Notre tutoriel sur les textures procédurales en donne des exemples, et la fiche displacement map rappelle les notions de base.

Subdiviser juste ce qu'il faut

Le vrai déplacement ne fait que déplacer des sommets existants : un plan de quatre sommets reste un plan. Il faut donc de la géométrie, et c'est là que la mémoire s'envole.

Adaptive Subdivision, dans Cycles

Le manuel la recommande pour préparer un maillage au déplacement : la densité s'ajuste à la distance de la caméra. Ajoutez un modificateur Subdivision Surface et cochez Adaptive Subdivision (Cycles seulement). Deux modes :

  • Pixel : les faces sont découpées jusqu'à une taille cible à l'écran (Pixel Size). Le détail se concentre là où la caméra regarde de près.
  • Object : les faces sont découpées jusqu'à une longueur d'arête cible (Edge Length). Le manuel l'impose pour les objets instanciés, qui fonctionnent mal en mode Pixel.

Le panneau Render Properties > Subdivision règle le reste :

  • Dicing Rate Render et Viewport : un multiplicateur de la taille des micropolygones. Augmenter la valeur allège la scène.
  • Offscreen Scale : grossit progressivement les micropolygones hors du champ de la caméra. Une valeur haute économise la mémoire, une valeur basse soigne les reflets et les ombres des parties hors champ.
  • Max Subdivisions : un plafond, même si le taux de découpe en demanderait plus.
  • Dicing Camera : une caméra de référence pour la découpe. Le manuel la recommande pour éviter les scintillements dans une animation où la caméra bouge.

Pour une surface plane ou architecturale, réglez le modificateur sur Simple plutôt que Catmull-Clark : le manuel cite justement ce cas, augmenter la résolution d'un maillage pour une displacement map sans arrondir ses angles. La fiche sur le modificateur Subdivision Surface détaille les autres options.

Dans Eevee

Eevee n'a pas de subdivision adaptative. Dans ses réglages de matériau, Displacement Only n'est pas pris en charge et se replie sur Displacement and Bump, qui déplace bien les sommets. Il faut donc subdiviser avec des niveaux fixes. Le manuel signale deux limites : le déplacement est recalculé à chaque échantillon, avec un coût qui grandit avec leur nombre, et le réglage Max Distance doit couvrir l'amplitude maximale du relief, faute de quoi un objet au bord du cadre peut disparaître ou perdre ses ombres. Il prévient aussi que déplacer une géométrie en ombrage plat sépare les faces voisines.

Le relief dans toutes les directions

Le nœud Displacement pousse la surface le long de sa normale. Pour une oreille, une branche ou une écaille qui se replie, le nœud Vector Displacement déplace dans les trois directions, à partir d'une carte vectorielle produite par un logiciel de sculpture. Le manuel distingue deux espaces : Object Space pour un objet immobile, un peu plus rapide et moins gourmand, et Tangent Space pour un objet qui se déforme, comme un personnage animé, afin que le relief suive la déformation. Attention, sa valeur Midlevel par défaut est 0, pas 0,5.

Le modificateur Displace

Le modificateur Displace déplace les sommets du maillage lui-même, dans la vue 3D et pour les deux moteurs. Ses réglages : la Texture, les Coordinates (UV pour une image dépliée), la Direction (normale, un axe, ou RGB to XYZ pour une carte vectorielle), Strength, Midlevel et un Vertex Group qui limite l'effet à une zone. Placez-le après un modificateur Subdivision Surface dans la pile. Il convient quand d'autres outils ont besoin du relief : une simulation physique, un objet posé sur un terrain, un contrôle visuel en mode Solid. Sa densité est fixe, elle ne suit pas la caméra.

Erreurs courantes

  • Rien ne bouge : la méthode du matériau est restée sur Bump Only, ou le maillage n'est pas subdivisé.
  • L'objet gonfle en entier : le Midlevel ne correspond pas au niveau neutre de la carte.
  • Des marches en escalier : carte 8 bits. Repassez en 16 ou 32 bits.
  • Des déchirures le long des coutures : les îlots UV ne se raccordent pas dans la carte. Notre tutoriel sur le dépliage UV aide à placer les coutures.
  • Le rendu manque de mémoire : augmentez le Dicing Rate et l'Offscreen Scale, baissez Max Subdivisions, ou repassez les petits détails en bump. Notre article sur l'erreur Out of Memory dans Cycles liste les autres leviers.

Et au rendu ?

Le déplacement adaptatif fait partie du rendu lui-même : la géométrie est découpée au moment de calculer l'image, à la densité que demande la caméra. Une animation qui longe une façade en relief ou survole un terrain demande ce travail à chaque image. L'add-on TURNA envoie la scène depuis Blender et répartit les images de l'animation sur 1 à 8 machines GPU, au temps réellement consommé. Le calculateur de temps de rendu donne une estimation avant de lancer.

Calculez vos rendus Blender sur des GPU loués à la demande

TURNA répartit vos scènes Blender, en Cycles comme en Eevee, sur 1 à 8 machines GPU en parallèle. De 2,90 à 49,90 €/h selon le palier, facturés au temps réellement consommé, estimés avant le lancement. 25 € de crédits offerts à l'inscription.

Créer un compte Voir les tarifs

Articles similaires