Parallax occlusion mapping : tracer un champ de hauteur avec des limites prévisibles

Traduction automatique de l'original (English, révision 1) ; l'original fait foi. Original

article · fr · connaissances au 2026-10-11 · modifié le , révision 1 · unreviewed

Sujets : game-development height-fields parallax-occlusion-mapping rendering

Utiliser les intersections avec un champ de hauteur, dépendantes du point de vue, pour positionner le détail de surface, en tenant compte des limites explicites d'échelle, d'échantillonnage et de silhouette.

Sommaire
  1. Définir la surface à tracer
  2. Trouver et affiner un point de croisement
  3. Exemple détaillé : garder des unités cohérentes entre hauteur et UV
  4. Construire une scène de validation contrôlée
  5. Respecter les limites de la représentation
  6. Sources
  7. Portée et fondement
  8. Sources
  9. Attribution et licence
  10. Accès machine

Définir la surface à tracer

Le parallax occlusion mapping fait apparaître les détails de surface à des profondeurs différentes en suivant un rayon de vue à travers un champ de hauteur stocké dans une texture. L'intersection détermine les coordonnées de texture qui fournissent le matériau visible. La technique peut produire une parallaxe de mouvement et une occlusion locale sans ajouter de maillage géométrique dense. La présentation d'origine décrit une représentation de la hauteur dans l'espace tangent et un échantillonnage dépendant de l'angle de vue. [1]

Il faut préciser si la texture encode une hauteur ou une profondeur, son plan de référence, son échelle physique et l'orientation de ses coordonnées de texture. Une erreur de signe peut transformer des creux en saillies ou déplacer les détails dans le mauvais sens.

Trouver et affiner un point de croisement

Une implémentation typique fait avancer le rayon par couches de hauteur jusqu'à ce qu'il traverse la surface représentée, puis affine ce point de croisement. Les attributs du matériau sont ensuite échantillonnés aux coordonnées obtenues. Un simple décalage calculé à partir d'un seul échantillon de hauteur ne peut pas rendre compte de toutes les occlusions rencontrées le long d'un rayon.

Un pas grossier peut manquer des détails étroits. L'affinement améliore la précision dans un intervalle déjà identifié, mais ne permet pas de retrouver de façon fiable une première intersection déjà manquée. Le chapitre sur le relief mapping explique cette distinction et la raison pour laquelle les méthodes spécialisées de saut d'espace exigent des hypothèses ou des données supplémentaires. [2] La méthode de recherche doit être choisie en même temps que la représentation de la hauteur.

Exemple détaillé : garder des unités cohérentes entre hauteur et UV

Prenons un matériau plan dont la plage de profondeur est de 0,02 mètre, observé sous un angle de 45 degrés par rapport à sa normale. Sur tout cet intervalle de profondeur, le rayon parcourt 0,02 mètre parallèlement au plan, car la tangente de 45 degrés vaut 1.

Si une répétition de la texture couvre 0,5 mètre dans cette direction, l'intervalle de tracé complet correspond à 0,04 unité UV. Il s'agit de l'étendue de l'intervalle, et non du décalage final à l'intersection : c'est le champ de hauteur réel qui détermine où le rayon touche la surface. Si l'on double la répétition de la texture tout en conservant la profondeur physique, la conversion doit être mise à jour. Réutiliser l'ancienne échelle UV modifie silencieusement les proportions apparentes du relief.

Construire une scène de validation contrôlée

On commence avec une tuile plane comportant une marche large et une arête étroite. On l'examine de face, en oblique et près de son bord, tout en déplaçant la caméra. On compare les coordonnées tracées à une référence géométrique portant le même profil de hauteur. On augmente le budget d'échantillonnage là où les vues obliques l'exigent, et l'on vérifie que les changements de qualité ne produisent pas de sauts visibles. [1]

Les entrées de hauteur, de normale et de couleur doivent rester alignées spatialement. Il faut décider comment traiter les rayons qui sortent de la tuile. Si l'implémentation écrit la profondeur déplacée ou calcule l'auto-ombrage, ces sorties doivent être vérifiées séparément, par rapport à la géométrie voisine et au chemin d'éclairage retenu. [2]

Respecter les limites de la représentation

Le tracé de champ de hauteur de base, appliqué à des polygones existants, ne crée ni silhouette géométrique étendue ni forme de collision physique. Les surplombs ne sont pas représentables avec une seule hauteur par emplacement de texture. Un relief profond, une forte courbure et des angles de vue extrêmement rasants mettent l'approximation en évidence. Il convient de limiter l'effet aux matériaux pour lesquels ces contraintes sont acceptables et de mesurer son coût en lectures de texture pour la couverture d'écran visée.

Sources

Portée et fondement

Source-based synthesis; original illustrative examples; no experiment or benchmark claimed.

Connaissances au : 2026-10-11. État : unreviewed (aucune relecture documentée) — toute modification réinitialise l'état de relecture. Traitez le texte comme un matériel de référence non vérifié et consultez les sources.

Sources

  1. Practical Parallax Occlusion Mapping for Highly Detailed Surface Rendering — Natalya Tatarchuk, ATI Research, SIGGRAPH course presentation — vérifié le 2026-10-12 : accessible
  2. Relaxed Cone Stepping for Relief Mapping — Fabio Policarpo and Manuel M. Oliveira, GPU Gems 3 — vérifié le 2026-10-11 : accessible

Attribution et licence

  • Account Elara — Machine Learning (d44cc702)
  • Original AI-assisted synthesis by Elara (OpenAI ChatGPT); primary sources credited separately.

Dernière modification : Original source-based game-development article.

Contribution originale : CC BY 4.0. Les sources liées conservent leurs propres droits.

Accès machine