Colour Management

Color management is important to create renders and assets that are physically authentic and await peachy on multiple display devices. It is used both to ensure all parts of the pipeline interpret colors correctly, and to brand artistic changes like exposure and color grading.

../_images/render_color-management_different-exposures.jpg

Different views and exposures of the aforementioned return.

Blender's color direction is based on the OpenColorIO library. By using the same OpenColorIO configuration in multiple applications, the same color spaces and transforms will be available for consistent results.

Workflow

Scene Linear Color Space

For correct results, unlike Color Spaces are needed for rendering, display and storage of images. Rendering and compositing is best washed in scene linear color space, which corresponds more closely to nature, and makes computations more physically authentic.

../_images/render_color-management_linear-workflow.svg

An example of a linear workflow.

If the colors are linear, it means that if in reality, we double the number of photons, the color values are as well doubled. Put another manner, if we have two photos/renders each with i of two lights on, and add together those images together, the result would be the same as a render/photo with both lights on. Information technology follows that such a radiometrically linear infinite is all-time for photorealistic rendering and compositing.

However, these values do not direct correspond to homo perception or the way brandish devices work. and epitome files are often stored in different color spaces. And so we take to take care to do the right conversion into and out of this scene linear color space.

Brandish Transforms

Transforming scene linear colors to display involves both technical and artistic choices.

Right brandish of renders requires a conversion to the display device color space. A computer monitor works differently from a digital picture palace projector or HDTV, and and then needs a unlike conversion.

At that place is likewise an artistic choice to exist made. Partially that is because display devices cannot display the full spectrum of colors and only have limited effulgence, so nosotros tin can squeeze the colors to fit in the gamut of the device. Besides that, it can as well exist useful to give the renders a detail wait, due east.g. as if they have been printed on existent photographic camera film. The default Filmic transform does this.

../_images/render_color-management_linear-display-space.svg

Conversion from linear to display device space.

Image Colour Spaces

When loading and saving media formats it is of import to have color management in mind. File formats such as PNG or JPEG volition typically store colors in a color infinite ready for brandish, non in a linear space. When they are used every bit textures in renders, they need to be converted to linear first, and when saving renders for display on the web, they also demand to be converted to a brandish space.

For intermediate files in production, it is recommended to utilise OpenEXR files. These are always stored in scene linear color spaces, without any information loss. That makes them suitable to store renders that tin later be composited, color graded and converted to different output formats.

Images can also contain data that is not actually a color. For example normal or displacement maps merely contain vectors and offsets. Such images should be marked every bit Not-Colour Information so that no color space conversion happens on them.

Settings

Reference

Editor

Backdrop

Panel
../_images/render_color-management_panel.png

Color Management properties.

Brandish Device

The device that the prototype is beingness viewed on.

Most computer monitors are configured for the sRGB color space, and so when working on a computer usually this option should just exist left to the default. It would typically be changed when viewing the image on another display device continued to the estimator, or when writing out paradigm files intended to be displayed on another device.

Rec709 is unremarkably used for HDTVs, while XYZ and DCI-P3 are common for digital projectors. Color management tin exist disabled by setting the device to None.

View Transform

These are different ways to view the epitome on the aforementioned display device.

Standard

Does no extra conversion besides the conversion for the brandish device. Often used for not-photorealistic results or video editing where a specific await is already baked into the input video.

Filmic

For photorealistic results and better treatment of high dynamic range colors. The contrast can be adjusted past irresolute the Expect option for the Filmic view transform.

Filmic Log

Converts to Filmic log color space. This can exist used for export to colour grading applications, or to audit the epitome by flattening out very dark and light areas.

Raw

Intended for inspecting the image just non for final consign. Raw gives the image without whatsoever colour space conversion.

Imitation Color

Shows a heat map of image intensities, to visualize the dynamic range.

Await

Cull an artistic consequence from a set of measured picture response data which roughly emulates the wait of certain motion picture types. Applied earlier color space conversion.

Exposure

Used to control the image effulgence (in stops) practical earlier color space conversion. It is calculated as follows: \(output\_value = render\_value × 2^{(exposure)}\)

Gamma

Actress gamma correction applied after color infinite conversion. Note that the default display transforms already perform the advisable conversion, so this mainly acts as an additional issue for artistic tweaks.

Sequencer

The color space that the Sequencer operates in. By default, the Sequencer operates in sRGB space, but it can also exist set to work in Linear space like the Compositing nodes, or another colour space. Different color spaces will give dissimilar results for color correction, crossfades, and other operations.

Use Curves

Adapt RGB Curves to control the image colors earlier the color infinite conversion. Read more about using the Curve Widget.

Image Files

When working with paradigm files, the default color space is usually the correct one. If this is not the case, the color infinite of the image file can exist configured in the image settings. A mutual situation where manual changes are needed is when working with or baking normal maps or deportation maps, for case. Such maps exercise non actually shop colors, simply data encoded as colors. Those images should be marked every bit Not-Color Information.

Image data-blocks volition always store float buffers in memory in the scene linear color space, while a byte buffer in memory and files in a drive are stored in the color space specified with this setting:

Color Space

The color space of the paradigm file on a drive. This depends on the file format, for example, PNG or JPEG images are oft stored in sRGB, while OpenEXR images are stored in a linear color infinite. Some images such as normal, bump or stencil maps practice not strictly incorporate 'colors', and on such values, no colour space conversion should e'er be applied. For such images, the colour space should be gear up to Non-Color.

Past default simply renders are displayed and saved with the return view transformations applied. These are the Render Consequence and Viewer image data-blocks, and the files saved directly to a drive with the Return Animation operator. Withal, when loading a return saved to an intermediate OpenEXR file, Blender cannot notice automatically that this is a render (it could be e.g. an prototype texture or displacement map). We need to specify that this is a return and that we want the transformations practical, with these two settings:

View as Return

Display the image data-block (not only renders) with view transform, exposure, gamma, RGB curves applied. Useful for viewing rendered frames in linear OpenEXR files the same as when rendering them directly.

Salvage every bit Render

Option in the prototype save operator to apply the view transform, exposure, gamma, RGB curves. This is useful for saving linear OpenEXR to e.g. PNG or JPEG files in display space.

OpenColorIO Configuration

Blender comes with a standard OpenColorIO configuration that contains a number of useful brandish devices and view transforms. The reference linear Color Space used is the linear colour infinite with Rec. 709 chromaticities and D65 white bespeak.

Withal, OpenColorIO was also designed to give a consistent user experience across multiple applications, and for this, a unmarried shared configuration file tin can be used. Blender will use the standard OCIO surroundings variable to read an OpenColorIO configuration other than the default Blender ane. More information about how to set up upwards such a workflow can be found on the OpenColorIO website.

Blender currently use the post-obit color infinite rules:

scene_linear

Colour space used for rendering, compositing, and storing all float precision images in memory.

data

Colour space for not-color information.

aces_interchange

ACES2065-ane color space. Used to derive chromaticites of the scene_linear colour space, for effects such as blackbody emission.

color_picking

Defines the distribution of colors in color pickers. It is expected to exist approximately perceptually linear, have the aforementioned gamut every bit the scene_linear color space, map 0..i values to 0..1 values in the scene linear color space for predictable editing of material albedos.

default_sequencer

Default color space for the Sequencer, scene_linear if not specified.

default_byte

Default color space for byte precision images and files, texture_paint if not specified.

default_float

Default color space for bladder precision images and files, scene_linear if not specified.

The standard Blender configuration includes support for saving and loading images in ACES (code and documentation) colour spaces. Withal, the ACES gamut is larger than the Rec. 709 gamut, and so for all-time results, an ACES specific configuration file should exist used. OpenColorIO provides an ACES configuration file, though information technology may need a few more than tweaks to be usable in production.