This tutorial provides information on how to configure Color Management to work with the OpenColorIO implementation of the Academy Color Encoding System (ACES), as well as a summary of what ACES is. The article is divided into two parts, theoretical and practical. The theoretical part will help you understand some of the basics of ACES, and how it works, before you get down to the practical part, and consider some of the nuances in setting up Color Management.
What is ACES and Why is it Recommended?
The Academy Color Encoding System (ACES) - is a free, expandable, device-independent color management and image sharing system developed under the auspices of the Academy of Motion Picture Arts and Sciences. It is also a set of technical specifications for working with color, coding, and transformation. This system allows you to store all the data of digital images in the same mathematical space, which allows a more consistent workflow during the transfer of working material between different departments. It is also important that ACES allows you to create archival materials with a high dynamic range and wide color gamut, even taking into account possible future devices.
Some of the ACES features include:
- Wide range of color and light, exposure.
- Predictable image display on a wide range of display devices.
- Preserving the full range of highlights, shadows, and colors.
- Simplifying the matching of images from different cameras.
- More accurate color display with no incorrect color values.
- Work in Linear color space.
- No over highlight and clamp, on bright areas of the image.
- And more...
ACES consists of several components:
- Input Device Transform (IDT) - Color conversion from input material. More properly called an Input Transform.
- Reference Rendering Transform (RRT) - Color transformation from scene-referred to display-referred space, using an S-shaped tone curve, image preparation for output.
- Output Device Transform (ODT) - Transforms to an output device, a transformation such as Rec. 709, DCI-P3, Rec.2020.
In practice, the RRT and ODT are combined and called an Output Transform.
ACES Output Transform Choices
One of the benefits of the ACES system is that it provides Output Transforms for a wide assortment of displays and projectors. You'll want to choose the appropriate Output Transform for your situation based on the following factors:
- Your device (monitor or projector) and how it is calibrated. This could range from a simple sRGB monitor to an HDR monitor calibrated to Rec.2100-PQ, to a digital projector calibrated to DCI-P3. Note that the ACES system documents the viewing environment to be used for each type of device. For monitors such as sRGB or Rec.709, this is a dim environment (rather than a dark environment).
- Your creative white point. The native white point of ACES is D60 and most cinema-oriented projects use this white point. However ACES also provides transforms that adapt to D65, which is commonly used for video-oriented projects. Ideally, the display device would be calibrated to match the creative white point, but this is not always possible. In those cases, the ACES system provides Output Transforms labeled "D60 sim." to simulate the D60 white point on a device calibrated to another white point (such as D65 or DCI).
The D60 native white point of the ACES system was chosen because experiments showed that humans subjectively preferred D60 over other white points such as D65. It is also closer to the white point of the motion picture system. If the creative white chosen for your project is D60 but you need to work on a device calibrated to D65, the "D60 sim." version of the Output Transform for your device will give you a more colorimetrically accurate result. Nevertheless, some people prefer using the non-"D60 sim." version since having the image displayed at D60 but the surrounding user interface displayed at D65 can make color judgments more difficult.
ACES Color Spaces
Gamut comparison (image courtesy of Haarm-Pieter Duiker and Thomas Mansencal)
ACES contains different color spaces, we will look at the main ones:
- ACES 2065- 1 - This is a wide-range Linear, color space, with a larger coverage than the human eye, so it is used for archival copies and transfer of material between departments.
- ACEScc and ACEScct - Logarithmic color spaces intended for color correction.
- ACEScg - This is a Linear space for working with CG/VFX. This is the space you need to use as the main color space for working with color set-up and light in your rendered images. More information is available here.
The Maya ACES workflow (using Syncolor) is simpler to use with fewer transforms, for those users who do not need a full set of transforms.
- First, you will need to download the OpenColorIO (OCIO) configuration package for core ACES transforms https://github.com/imageworks/OpenColorIO-Configs/tree/master/
Set OCIO Config Path
This can be done in two ways:
- Next, you will need to add the path to the downloaded ACES configuration in Maya (most 3D graphics packages already contain a predefined configuration package), but in this case, we will use the downloaded version.
- Install the OCIO variable with the path to the config.ocio file. This can vary according to your ОS (you can install OCIO as the default color configuration for all apps). This can be in the Maya.env or in the user Preferences (similar to the OS variable but only for Maya). For example:
OCIO = C:\OCIO\aces_1.0.3\config.ocio
- Or you can set the path to the config.ocio file in the Maya Preferences for working with projects.
We will consider the second option:
- Start Maya and create a New Project. Open the Preferences window (Windows-> Settings/Preferences-> Preferences). Go to the Color Management settings.
Color Management Preferences
- Set the path to config.ocio at OCIO Config Path
- Enable Use OCIO Configuration
Set Transform Preferences
- Rendering Space ACES - ACEScg.
- Set the View Transform option based on the discussion above in section ACES Output Transform Choices. For example: "sRGB (ACES)".
Define Color Space Rules
Go to the Input Color Space Rules, and choose OCIO Standard Rule or Default. When using Default, you can change the color space by default to what you need, when opening all images in your scene. For example, choose ACES-ACEScg in Rule Conditions -> Add Image Color Space (for opening images), and save your Preferences and scene.
Alternatively, you can deselect 'Use OCIO Input Color Space Rules' so that you can add your own rules for various file formats.
Maya Color Management Preferences
The main color spaces for conversion will be:
- Utility-Linear - Rec.709 or sRGB - choose this for Linear images that use the Rec.709 or sRGB primaries/gamut (which are the same).
- Utility-RAW - for images that do not require conversion (scalar masks, Displacement, Roughness).
- Utility-Rec.709-Camera - for sRGB images, 8-16 bit (lightmaps, matte paints), (JPEG, PNG).
- Utility-sRGB - Texture - recommended color space for sRGB image textures 8-16 bit (JPEG, PNG).
ACEScg - Color space for images that are already converted to ACEScg.
When converting images to Utility-sRGB-Textures, they will become darker than the original. This is normal and gives you the opportunity to work with higher light values without losing contrast.
For all other images, not converted to ACEScg, you will need to individually set-up the color space for the Image and File nodes.
Remember, if you create a project with ACEScg as the rendering space, you will need to set the Color Space so that all images get correctly converted to ACEScg. Images in other color spaces will look wrong without conversion.
Thanks to Doug Walker and Slava Sych for their assistance with this tutorial.