Tonemapping is a technique that converts color values from a high dynamic range (HDR) to a low dynamic range (LDR) a display can output.

The tonemapping shader is directly integrated into the Viz Engine Render Pipeline and is applied as the last step of the main rendering process, just before the image is processed for video output.

To enable the tonemapping post effect, go to the Scene's Rendering Settings and enable Tonemapping under Color Space. Be sure to enable post-processing effects in the Scene Editor to have a preview of it while editing its properties.

There are two available Tonemapping Operators:

  • Neutral

  • Filmic

Neutral (Khronos) Tonemapper

The neutral tonemapper keeps neutral colors up to a certain maximum and only maps highlights into sRGB color space. This allows to keep all neutral colors, but clamps overshooting shadows and highlights.

image-20250724-131016.png

No tonemapping applied

image-20250724-131323.png

Filmic Tonemapper
(Note color changes on all spheres)

image-20250724-131346.png

Neutral Tonemapper

(Note color changes only on outer spheres)

The neutral Tonemapper should be used if your colors match a given Corporate design.

Filmic Tonemapper

The filmic tonemapping operator proposed by John Hable is used.

The order of the adjustments to the input color is:

  • Exposure

  • Saturation

  • Contrast

  • Tonemap

  • Lift/Gamma/Gain

Exposure / Saturation / Contrast

Parameter

Description

exposure

Adjusts the exposure of the input pixels.

saturation

Adjusts the saturation of the input pixels.

contrast

Adjusts the contrast of the input pixels.

Examples

Screenshot

Information

Default Settings

contrast = 1
exposure = 0
saturation = 1

exposure = 0.5

contrast = 1.2

saturation = 0.2

Tonemapping Operator

The function that is applied on the HDR input colors can be configured using multiple parameters in the Render Graph node. To see how the operator works check out the interactive graph.

Parameters

Parameter

Description

shoulderStrength
linearStrength
linearAngle
toeStrength
toeNumerator
toeDenomiator

Defines the shape of the curve.

whitePoint

Defines the value in the input that translates to 1 in the output.

All values below are squeezed into the range from 0 to 1, everything above results in values larger than 1.

Examples

Screenshot

Information

Tonemapping Disabled

Tonemapping Enabled

Default values.

Tonemapping Enabled

Adjusted values compared to the default ones, to have a slightly improved saturation.

Color Correction

Color correction is done after tonemapping and applies the so called Lift, Gamma and Gain input values: output = (input * gain + lift) ^ gamma.

The formula being used is mentioned in https://en.wikipedia.org/wiki/ASC_CDL. To see what the separate values do check out the interactive graph.

Parameters

Parameter

Type

Description

gain

Multiplier

Adjusts highlights.

lift

Offset

Adjusts brightness.

gamma

Exponent

Adjusts mid-tones.

Examples

Screenshot

Description

Default Settings

lift = 0
gamma = 1
gain = 1

for red, green and blue channels.

Adjusted lift for red and green channels, leaving blue untouched.

Adjusted gamma for red and green channels, leaving blue untouched.

Adjusted gain for blue channel, leaving red and green channels untouched.

Credits

Environment image is taken from https://hdrihaven.com/hdri/?h=leadenhall_market.