Displacement Map
A grayscale texture that physically moves mesh vertices along their normals based on brightness values, creating real geometric detail that affects silhouettes, shadows, and occlusion.
A displacement map is a grayscale texture whose brightness values physically move mesh vertices along surface normals. Unlike normal maps that only fake detail through shading, displacement creates real geometry affecting silhouettes, shadows, and occlusion.
- Vertex displacement: Each vertex moves along its normal proportional to the map value. Requires sufficient vertex density to capture fine details
- Hardware tessellation: DirectX 11+ dynamically subdivides polygons on the GPU before displacement. Pipeline:
Hull Shader → Tessellator → Domain Shader - Micro-displacement: Production renderers (RenderMan, Arnold) subdivide to sub-pixel levels at render time for film-quality detail
- Value range: 0.0 (black, inward) to 1.0 (white, outward), with 0.5 as neutral. 16-bit or 32-bit precision recommended to avoid banding
Used extensively in film VFX for rock, terrain, and skin wrinkles. Games require tessellation-capable GPUs, so displacement is typically combined with normal maps. Blender implements this via Subdivision Surface and Displacement modifiers.