What is a Tonemapper?
Tone mapping is the process of converting a high dynamic range (HDR) image into a standard dynamic range (LDR) image that can be correctly displayed on screens and in print. HDR images contain more information in highlights and shadows than regular displays can handle, so tone mapping helps balance contrast, saturation, and details to create a visually pleasing result.
There are many tone mapping methods, each affecting the final render differently. In this article, we will focus on the three tonemappers we support: ACES, Narkowicz, and Khronos PBR.
ACES (Academy Color Encoding System)
Supported since: WEB SDK 2.7.4 and iOS SDK 7.1
ACES is a color encoding system developed by the Academy of Motion Picture Arts and Sciences. It offers a cinematic look with soft highlights and natural colors, expanding the dynamic range while preserving more details in both shadows and highlights.
Key Features of ACES:
- Smooth Highlights Roll-off – Instead of simply clipping bright areas (as in Reinhard) or sharply dropping off (as in linear mapping), ACES gradually smooths out highlights. This creates a more cinematic effect, as overexposed areas remain soft and retain detail.
- Hue Preservation & Chromatic Adaptation – In some cases, ACES slightly alters saturated colors, especially in the orange-yellow and blue areas of the spectrum. For example, a very bright blue may shift toward turquoise.
- Increased Contrast and Cinematic Gamma – Unlike linear and more neutral tone mappers (such as Khronos PBR), ACES produces a more striking image, though it may deviate from physically accurate rendering.
Narkowicz Tonemapper
Supported since: All versions
The Narkowicz tonemapper is a fast and lightweight tone mapping method developed by Krzysztof Narkowicz. It is based on the Hejl 2015 curve, but optimized for better performance.
Key Features of Narkowicz:
- Increased Contrast – Produces a more contrast-heavy image than ACES, making it appear sharper and more vibrant.
- Minor Color Shifts – Small color alterations may occur, though they are less pronounced than in ACES.
Khronos PBR Tonemapper
Supported since: WEB SDK 3.4
Khronos PBR is the standard tonemapper used in the glTF specification, developed by the Khronos Group. It is designed for physically based rendering (PBR) and ensures accurate color representation.
Key Features of Khronos PBR:
- Physically Accurate Rendering – Does not introduce stylized effects and preserves a realistic look.
- Neutral Color Representation – Colors remain as close to the original as possible, without tonal shifts.
- No Strong Effects on Contrast or Saturation – Unlike ACES or Narkowicz, this tonemapper does not add extra cinematic or artistic enhancements.
Which Tonemapper Should You Choose?
Khronos PBR – Accurate Color Representation
ACES – Soft Highlights Without Overexposure
Narkowicz – Increased Contrast