Réponse courte
Choisir selon le changement visible
Utilisez une normal map pour les petits détails. Utilisez le displacement lorsque le relief doit modifier le contour ou les contacts. Les deux se complètent souvent.

Guide de décision
Choisir selon le changement visible
Une normal map stocke une direction par texel. Le shader modifie l’éclairage tandis que les sommets restent en place. Cette solution est rapide et stable pour les matériaux répétés et les scènes temps réel.
Une displacement map stocke une hauteur et déplace des sommets ou de la microgéométrie. Elle peut modifier le contour, mais demande assez de subdivision, une bonne échelle et un budget adapté.
La méthode la plus robuste combine displacement pour les formes larges et normal map pour les fissures fines. Vérifiez le résultat sous la lumière et la caméra finales.
Notes de production
Limites de production et exemples concrets
La silhouette est le critère le plus net. Une normal map peut éclairer une brique, mais son bord reste plat; le displacement peut le casser avec assez de subdivision.
Les ombres donnent le second test. Pour un creux qui doit produire une ombre de contact, la normal map seule ne suffit pas. Réservez le displacement aux grandes formes et la normal aux rayures.
La texture et le renderer doivent partager l’échelle UV. Déclarez les données de hauteur et de normale comme non colorées; un mauvais canal vert ou tangent basis inverse le relief.
Le coût dépend de la couverture écran. Décidez par asset et par caméra, avec une variante normal-only pour les niveaux de qualité bas.
Choisir selon l’asset et la caméra
Mur en pierre
Displacement pour les bords cassés et les contacts; normal map pour les pores et petits éclats.
Vêtement de personnage temps réel
Normal map pour le tissage et les coutures lorsque la caméra ne résout pas chaque fil.
Objet sculpté en gros plan
Validez les grandes formes en displacement avant d’ajouter le microdétail normal.
En bref
Normal map contre displacement map
| Critère | Normal map | Displacement map |
|---|---|---|
| Ce qui change | La direction de la lumière par pixel | La position de la surface ou la hauteur du maillage |
| Silhouette | Le contour ne change pas | Le contour peut changer avec assez de géométrie |
| Coût à l’exécution | Généralement faible et stable | Plus élevé, selon la subdivision et la couverture écran |
| Échelle de détail | Fissures fines, pores, tissu et petites rainures | Reliefs larges, pierres, briques et zones de contact |
| Risque de réglage | Canal vert, espace colorimétrique ou intensité incorrects | Hauteur, subdivision, échelle ou auto-intersection incorrectes |
| Complément courant | À privilégier quand la caméra ne résout pas la géométrie | Ajouter une normal ou un bump pour le microdétail |
Workflow pratique
Choisir et tester sans surprise
Définir le besoin visible
Demandez si le détail doit modifier le contour ou seulement les reflets. Pour un matériau répété et éloigné, une normal map suffit souvent.
- Vérifiez la distance de caméra la plus proche.
- Notez les détails qui doivent recevoir une ombre de contact.
- Séparez les objets héros des matériaux répétés.
Préparer une hauteur propre
Dans une image en niveaux de gris, le blanc est plus haut, le noir plus bas et le gris moyen neutre. Retirez les ombres et lumières déjà cuites.
- Gardez une plage de hauteur volontaire.
- Ne prenez pas une photo ombrée pour une hauteur brute.
- Prévisualisez à l’échelle de tuile finale.
Générer et orienter la normal map
Créez une normal map tangentielle puis choisissez OpenGL ou DirectX selon le moteur. Le PNG est une donnée, pas une couleur à corriger.
- Commencez avec une force et un contraste modérés.
- Utilisez peu de flou pour réduire le bruit.
- Inversez Y si les creux ressemblent à des bosses.
Ajouter le displacement si nécessaire
Vérifiez la subdivision ou la microgéométrie et exprimez la hauteur en unités de scène. Testez d’abord sur un plan ou une sphère.
- Subdivisez avant d’augmenter la force.
- Gardez une échelle cohérente avec l’objet.
- Revérifiez ombres, contacts et silhouette.
Valider avec la lumière finale
Une carte peut sembler bonne dans un aperçu plat puis échouer dans le shader réel. Testez les angles rasants et frontaux à la distance finale.
- Comparez la même échelle UV pour toutes les cartes.
- Contrôlez mipmaps, filtrage et compression.
- Conservez la source de hauteur avec les exports.
Erreurs courantes
Pourquoi le résultat semble faux
Attendre une silhouette avec une normal map
Elle suggère un relief par l’éclairage, mais le bord reste plat. Utilisez du displacement ou de la géométrie pour le contour et les contacts.
Traiter la hauteur comme une couleur
La gestion des couleurs peut déplacer les valeurs. Déclarez les données de hauteur et de normale comme non colorées si le moteur le demande.
Régler le displacement avec la texture seule
Une valeur de gris n’a pas d’unité physique avant la définition du matériau et du maillage. Ajustez-la avec la taille, la subdivision et la caméra.
Employer une seule carte à toutes les distances
Les assets proches peuvent combiner displacement et normales, tandis que les assets lointains se contentent souvent d’une normal map stable.
Références officielles
Vérifier la documentation du moteur
Les versions et pipelines peuvent modifier les libellés et les valeurs par défaut. Consultez ces références officielles pour votre version exacte.
FAQ
Questions sur les normal maps et le displacement
Le displacement est-il meilleur que la normal map ?
Pas toujours : le displacement est utile quand le contour change, la normal map reste efficace pour les petits détails.
Une normal map remplace-t-elle le displacement ?
Oui si le contour et les contacts ne comptent pas, car elle ne déplace pas la géométrie.
Faut-il utiliser height, bump ou normal ?
Height est une source en niveaux de gris, bump dérive l’éclairage et normal stocke la direction en RGB.
Pourquoi mon displacement paraît-il plat ?
Vérifiez subdivision, amplitude, matériau et distance de caméra avant d’augmenter la force.
Peut-on combiner les deux cartes ?
Oui, avec la même échelle UV : displacement pour les grandes formes et normal pour le microdétail.