How LUTs fit your workflow

Where do LUTs and LUT Buddy fit into your workflow? The foundation of modern graphics production is the idea that we want to get all our images into a linear floating point color space. Cineon film scans come in as log space, digital cameras provide sRGB JPEGs. These files must use LUTs to be converted into linear space.

The exception is OpenEXR files (usually from a 3D program) that are already in linear space and need no conversion. All the actual compositing work happens in the linear space. At the end, the finished image is converted back to log space to go back out to film.

While all this is happening, the artist views everything through a preview of how the final log image will appear when printed onto film and projected.

 

 

Using LUT in a linear film workflow

A film workflow is designed around the following LUTs:

log2lin: Converts log Cineon film scans to linear space, typically turning the higher 10-bit values into overbrights (values over 1.0). This is a 1D LUT, performing the same operation to each RGB channel.

sRGB2lin: Converts any standard video image to linear space. White and black usually remain white and black, but everything in between is darkened. This could be thought of as a standard gamma operation. This is also a 1D LUT.

lin2log: Convert back to log space using the inverse of the log2lin LUT. Since this will involve taking overbright values and pulling them back down below 1.0, it requires a 1D I/O LUT. Pixels untouched during comping should “round trip,” i.e. remain unchanged from the original plate.

Film Look: Previews how a log image will appear when printed onto film and projected. This will be some sort of 3D LUT, with the final destination being your monitor. In general, you always view through this LUT while editing the linear composite.

 

 

Other Linear Workflows

Naturally, there are other color spaces your source plate may arrive in, but the general workflow mentioned above will be the same—just replace log with the space you’re working in. the case of an sRGB or video source, you may be able to drop any notion of a film look and simply view the lin2sRGB output directly. However, working with video does not mean you want to abandon the concept of a linear workflow.

 

 

Rendering in Linear Space

The math in 3D a rendering program is inherently linear. And yet, many people design their 3D scenes directly on their non-linear display without any sort of lin2sRGB LUT (or even a simple gamma 2.2) being applied. In some cases this introduces issues that artists are used to working around, and in other cases this just means lights are turned up brighter than they would otherwise.

The problems arise you render an EXR and bring it into your linear workflow. Suddenly the scene is brighter than it was when you were working on it. You could darken it down, but the better choice is to embrace the linearity of your 3D program and view previews through some sort of LUT. Most 3D programs have some sort of gamma setting buried somewhere (just make sure you switch it off for the final render). Or if all else fails, you could view test renders in your compositor with all LUTs set up properly.

To be truly linear in 3D, you will also want to make sure your textures are linear. You may have a gamma control in the material editor, but maybe the simplest method is to use OpenEXR as the de facto file format for everything you do. EXRs are defined to be linear and every program that uses them should incorporate some kind of LUT when displaying them.