← Zurück zu Animation & VFX
Displacement Mapping und Normal Mapping sind Textur-basierte Rendering-Techniken, um die Oberflächendetails eines 3D-Meshes virtuell zu verfeinern; Displacement verschiebt tatsächlich die Geometrie, während Normal Mapping nur die Lichtberechnung manipuliert.

Rubrik: Animation & VFX · Unterrubrik: VFX-Techniken · Niveau: Fortgeschritten

Synonyme / Auch bekannt als: Bump Mapping (Vorläufer), Micro-Displacement, Tessellation & Displacement, Height Map, Normal Map, Tangent-Space Normal Map


Was ist Displacement Mapping?

Displacement Mapping verschiebt die Vertices eines Meshes entlang ihrer Normalen entsprechend den Graustufenwerten einer Texture (Displacement Map). Weißer Wert = maximale Auslenkung nach außen; schwarzer Wert = keine Verschiebung (oder nach innen). Die Geometrie verändert sich physisch – das hat entscheidende Auswirkungen: Displacement erzeugt korrekte Silhouetten, korrekte Selbstbeschattung und korrekte Kontaktkanten mit anderen Objekten.

Normal Mapping modifiziert demgegenüber nur den Normalenvektor jedes Pixels im Shading-Schritt. Das Licht "denkt", die Oberfläche sei anders ausgerichtet, als sie wirklich ist. Das Mesh selbst verändert sich nicht – daher keine echten Silhouetten-Details, keine physische Tiefe.


Erklärung

Displacement Mapping – Technische Details

#### Typen

Vertex Displacement (Pre-Tessellation): Vertices werden vor dem Rendering verschoben. Nur so genau wie die vorhandene Polygonanzahl; für Low-Poly-Meshes ungeeignet.

Tessellation + Displacement (Adaptive Subdivision): Mesh wird dynamisch in feinere Polygone unterteilt, dann displacement. Methode der Wahl für Produktions-VFX.

  • Pixar Subdivision (Catmull-Clark): Glattes Subdiv; Standard in RenderMan/Arnold
  • OpenSubdiv: Offener Standard (Pixar, 2012); GPU-beschleunigt; in Houdini, Maya, Blender implementiert
  • Nanite (Unreal Engine): Virtuelles Geometry-System; adaptive Micro-Polygon-Tessellation in Echtzeit

#### Displacement-Formel

`` P_displaced = P_original + N_surface × displacement(uv) × scale ``

Dabei ist P_original die originale Vertex-Position, N_surface der Oberflächennormalenvektor und displacement(uv) der in der Displacement Map an UV-Koordinate gesampelte Wert (0–1 oder –0.5 bis +0.5 für bidirektionalen Displacement).

#### Vektorielles Displacement (Vector Displacement)

Anstelle einer Graustufenkarte enthält eine Vector Displacement Map (VDM) RGB-Werte, die dreidimensionale Verschiebungsvektoren codieren. Ermöglicht extreme Überhänge und komplexe organische Formen (Hörner, Schuppen), die skalares Displacement nicht reproduzieren kann. Export aus ZBrush (Multi-Map Exporter → Vector Displacement Map).

Normal Mapping – Technische Details

#### Tangent-Space vs. World-Space Normal Maps

Tangent-Space Normal Maps (blau-lila Farbe): Normalenvektor relativ zur lokalen Oberfläche codiert; portabel (gleiche Karte auf verschiedenen Meshes nutzbar); Standard in Games und VFX.

World-Space Normal Maps: Absolute Weltkoordinaten-Normalenvektoren; schneller zu sampeln, aber nicht portabel; Verwendung für statische Objekte.

Object-Space Normal Maps: Relativ zum Objekt-Koordinatensystem; verwendbar für deformierbare Meshes in VFX.

#### Berechnung im Shader

``glsl vec3 normal_map = texture(normalMap, uv).rgb; normal_map = normalize(normal_map * 2.0 - 1.0); // aus [0,1] in [-1,1] vec3 N = normalize(TBN * normal_map); // TBN = Tangent-Bitangent-Normal Matrix ``

#### Bump Mapping (historisch)

Bump Mapping (Blinn, 1978) ist der Vorläufer: eine Graustufenmap stört die Normalenberechnung durch numerische Differentiation der Heightmap. Weniger präzise als explizite Normal Maps, aber konzeptuell gleich.

Vergleich der Methoden

EigenschaftBump MapNormal MapDisplacement Map
Silhouette verändertneinneinja
Selbstbeschattung korrektneinneinja
Kontaktkanten korrektneinneinja
Performancesehr hochhochmittel–niedrig
Geometrie-Anforderungbeliebigbeliebigfein (oder Tessellation)
Map-Auflösung8-bit16-bit16-bit oder 32-bit float

Beispiele

  1. King Kong (Peter Jackson, 2005) – Weta Digital's Kong hatte hochauflösende Displacement-Maps für Fell-Textur und Muskeldetails; Vector Displacement für Gesichtsfalten.
  2. Avatar – Aufbruch nach Pandora (James Cameron, 2009) – Pandora-Vegetation und Na'vi-Haut; Displacement für organische Pflanzendetails; Schlüsselmerkmal der Weta-Shader-Pipeline.
  3. Dune (Denis Villeneuve, 2021) – Sandworm-Segmente; mehrstufiges Displacement auf organischen Scaling-Texturen; Oscar für beste VFX.
  4. The Mandalorian (Jon Favreau, 2019–) – Unreal Engine Nanite verwendet Echtzeit-Displacement für LED-Volume-Environments.
  5. God of War (Sony Santa Monica Studio, 2018) – Spieletitel; Kombination von Normal Maps (Echtzeit) für Charakter-Detail mit Displacement (Pre-baked) für Terrain; zeigt den Dualansatz in Games.

Schritt-für-Schritt Workflow

  1. High-Res-Sculpt erstellen: Hochdetailliertes 3D-Modell in ZBrush/Blender sculpen (Millionen Polygone).
  2. Low-Poly-Basis erstellen (Retopologie): Produktions-taugliches Low-Poly-Mesh erstellen (Quad-Topologie, saubere Edge Loops).
  3. UV-Unwrap: Saubere UVs ohne Überlappungen und minimale Verzerrung; UDIM für mehrere UV-Kacheln bei komplexen Charakteren.
  4. Normal Map backen: Raycast-Projektion des High-Poly-Details auf das Low-Poly-Mesh in Marmoset Toolbag, Substance Painter oder Houdini.
  5. Displacement Map backen: In ZBrush: Multi-Map Exporter → Displacement Map (32-bit EXR); Midpoint auf 0,5 für bidirektional.
  6. Shader-Setup: In Arnold/Houdini: Displacement Shader mit der EXR-Karte verknüpfen; Scale und Dicing Rate einstellen.
  7. Tessellation kalibrieren: Adaptive Subdivision aktivieren; Dicing-Rate so setzen, dass Subpixel-Genauigkeit erreicht wird (0,5–1 px).
  8. Test-Render: Silhouetten und Selbstbeschattung prüfen; Normal Map für Detailschicht hinzufügen.

In der Praxis

ZBrush (Maxon): Sculpting-Werkzeug der Wahl; exportiert sowohl Normal Maps als auch Displacement Maps (32-bit EXR); Vector Displacement Maps für extreme Geometrie.

Substance Painter (Adobe): Normal-Map-Baking-Pipeline; PBR-Workflow mit Normal, Roughness, Metallic; ideal für Game-Assets und Broadcast-VFX.

Houdini (SideFX): Displacement in Render-Netzwerk via Displacement-Shader-Node; adaptive Tessellation über vm_shadingquality.

Arnold (Autodesk): standard_surface-Shader mit separatem displacement_map-Node; unterstützt 32-bit Float Displacement und Vector Displacement.

Blender Cycles: Material-Node mit Displacement-Buchse; adaptive Subdivision in den Render-Einstellungen aktivierbar; kostenfrei.


Vergleich & Abgrenzung

AnwendungEmpfohlene Methode
Charaktere in Nahaufnahme (VFX)Displacement + Normal (Kombination)
Hintergrund-AssetsNormal Map (Performance)
Terrain (VFX)Displacement (Silhouette wichtig)
Echtzeit GamesNormal Map (Leistung), Nanite für moderne Hardware
Architektur-VizNormal Map + leichtes Displacement für Beton/Stein

Häufige Fragen (FAQ)

Warum kombiniert man Displacement und Normal Maps? Displacement Map verändert die große Geometrie (tiefe Falten, Poren-Relief); Normal Map fügt sehr feine Mikrodetails hinzu (Poren-Textur, Hautstruktur), für die Tessellation zu teuer wäre. Die Kombination ergibt maximalen Detail bei akzeptabler Renderzeit: Displacement für Makro-Details (> 0,5 mm), Normal Map für Mikro-Details (< 0,5 mm).

Was ist der Dicing-Fehler in Arnold? Der Dicing-Fehler (Dicing Rate) bestimmt, wie fein das Mesh für Displacement tesselliert wird. Kleinere Werte (z. B. 0,25) = feinere Tessellation = genauerer Displacement, aber höhere Speicher- und Renderkosten. Ein Wert von 1,0 bedeutet ca. 1 Pixel pro Tessellation-Triangle. Für Nahaufnahmen empfehlen sich 0,25–0,5; für Hintergrund-Objekte 1,0–2,0.


Verwandte Einträge


Weiterführend

  • Blinn, J.F. (1978). Simulation of Wrinkled Surfaces. SIGGRAPH 1978 Proceedings.
  • Cook, R.L. (1984). Shade Trees. SIGGRAPH 1984 Proceedings.
  • Pharr, M., Jakob, W. & Humphreys, G. (2023). Physically Based Rendering (4. Aufl.). MIT Press.
  • Autodesk. (2023). Arnold Displacement Shading Reference.
← Zurück zu Animation & VFX
Infotag · 13. Mai · 15:00 Uhr · Vor Ort

Sei am Mittwoch dabei.
Bring Eltern oder Freunde mit.

Ein halber Nachmittag, der dir drei Jahre Klarheit bringen kann. Kostenlos, unverbindlich, ehrlich.

  • Rundgang durch Studios, Schnitträume und Tonstudio
  • Echte Absolventenfilme sehen
  • 1:1-Beratung zu Bewerbung & BAföG
  • Studierende direkt fragen
  • Kaffee, kein Sales-Pitch
  • Auch online möglich

Platz beim Infotag reservieren

Dauert 30 Sekunden. Bestätigung per E-Mail.
100 % kostenlos · keine Verpflichtung · jederzeit absagbar
Displacement Mapping vs. Normal Mapping — Wiki | Lazi Akademie Esslingen