VIDEOMONTAZHERDAVINCI RESOLVE · VIDEO · AI

FUSION · NODE REFERENCE

CreateBumpMap

Height image to RGB bumpmap image

CreateBumpMap accepts a normal 2D RGBA image, extracts height from a selected channel and produces an RGB bumpmap as an ordinary image stream. That image is normally passed to BumpMap in Bumpmap mode when a 3D Material is required.

Materials & TexturesIntermediate

CreateBumpMap

Overview

What CreateBumpMap does

CreateBumpMap is an image-to-image converter. The input is a normal RGBA height image and the output is an RGB bumpmap image. BumpMap is the later node that converts that image data into Material.

A height map stores a scalar height value per pixel. A bumpmap stores perturbed normal direction in RGB, which is why the Viewer shows a technical color image rather than a grayscale height field.

Blackmagic distinguishes height maps, bump maps and normal maps. CreateBumpMap creates bump data intended to modify existing surface normals; it does not replace geometry or silhouette.

Filter Size selects the neighborhood used when deriving local height change. The current Inspector exposes 3 and 5, corresponding to 3×3 and 5×5 pixel neighborhoods.

Filter Size 3 generally preserves more local fine structure. Filter Size 5 samples a wider area, costs more to render and can make noisy or stepped height information less abrupt.

Height Channel selects the scalar source. Luminance is convenient for ordinary grayscale heightmaps; Red, Green, Blue and Alpha are useful when height is packed into a specific channel.

Average, Max and Min are source-extraction choices, not artistic blend modes applied after bumpmap generation.

Selecting Alpha as Height Channel means alpha values are treated as height. It does not mean the output becomes a transparency matte.

Height Scale controls the amplitude or contrast of the generated bump response. It is a normal-perturbation strength control, not a world-space height measurement.

Excessive Height Scale can produce extreme normal directions, hard highlights and synthetic-looking shading. Fix noisy source data or Filter Size before relying on extreme scale values.

Clamp Normal.Z clips lower values of the blue/Z component in the generated bump texture. Treat it as a technical limiter for extreme normal directions rather than another strength control.

A useful diagnostic order is Height Channel first, Filter Size second, Height Scale third, then Clamp Normal.Z only if extreme slopes still need limiting.

Wrap Mode defines where the filter samples neighbors beyond the image boundary. This matters because gradient calculation still needs a neighborhood at the edge.

Wrap samples across the opposite edge, Clamp extends the edge pixel and Mirror reflects the image. Their differences are easiest to judge with deliberate detail near the boundary.

Wrap Mode is not a UV tiling control for the 3D object. It only changes CreateBumpMap filter behavior outside the 2D source boundary.

Texture Depth controls the precision/bit depth of the generated bumpmap: Source, int8, int16, float16 or float32 in the current capture.

Low precision can reveal quantization or banding on smooth gradients, sometimes more clearly in specular lighting after BumpMap than in the RGB image itself.

float16 is a practical high-precision diagnostic option. float32 is useful for technical tests but cannot repair a poor or already banded source map.

CreateBumpMap output can be viewed directly, saved, blurred, color-processed or compared channel by channel because it remains a normal image stream.

Ordinary color processing of an RGB bumpmap changes vector components of the encoded normal perturbation. That can be intentional, but it must be judged under lighting rather than by color aesthetics.

The classic chain is height image → CreateBumpMap → BumpMap with Source Image Type = Bumpmap → Blinn/Phong Bump Map Material → geometry → Merge3D → Renderer3D.

Leaving the downstream BumpMap in Heightmap mode causes the already packed RGB vectors to be interpreted again as scalar height data, which is a different algorithm and usually the wrong boundary.

CreateBumpMap performs no displacement. None of its controls adds vertices or changes the geometry outline; use Displace3D or another geometry deformation when the silhouette must change.

Do not approve the result only because the RGB bumpmap looks plausibly blue/purple. The real check is predictable lighting direction on a known material and known relief pattern.

The current article is anchored to the bundled Resolve captures for Filter Size, Height Channel, Clamp Normal.Z, Wrap Mode, Height Scale and Texture Depth. Confirm internal IDs and serialization live before automation.

When to use it

  • Convert Fast Noise or a grayscale texture into an RGB bumpmap

  • Read height from a packed R/G/B/Alpha channel

  • Prepare micro-relief for Blinn/Phong without geometry displacement

  • Create a Fusion-native bumpmap reference for convention checks

  • Build tileable bump textures with explicit border behavior

  • Store or process bumpmap data as a normal image before material conversion