GenerateLUT

Generates lookup tables, or LUTs, from color management nodes downstream of a CMSTestPattern node. LUTs are generated according to the size of CMSTestPattern cube size.

You can use the GenerateLUT node to create both 1D and 3D LUTs:

1D LUTs assume that the primary color channels (red, green, and blue) are independent, and the output for a particular primary color (for example, red) only depends on the input value of that channel (rather than the values of all three channels). For each input value, there is one output value. 1D LUTs are represented by a curve. They are useful for quickly creating an image for viewing purposes, using less processing power, but they cannot be used to adjust saturation independently of brightness.

In 3D LUTs, the output values of each primary color channel are calculated based on the input values from all three channels (red, green, and blue). For each input value, there are three output values. This is represented by a 3D grid or cube. 3D LUTs can adjust saturation and brightness together, and are very useful for emulating a particular known look, such as Cineon.

Tip:  For good visual fidelity when using 3D LUTs, it is recommended that a log colorspace is used for 3D LUT generation. For more information on how to generate a LUT in log colorspace, please refer to Working with Color.

For more information, see CMSTestPattern and Vectorfield.

Inputs and Controls

Connection Type

Connection Name

Function

Input

unnamed

An arrangement of nodes that do the color correction you want your 3D LUT to do, preceded by a CMSTestPattern node.

Control (UI)

Knob (Scripting)

Default Value

Function

GenerateLUT Tab

output file

file

none

The path and file name of the LUT file you want to generate.

file type

file_type

none

The file format of the LUT file you want to generate. If this is set to auto (the default), Nuke guesses the format from the file name extension.

The following file extensions are recognized:

.3dl - Autodesk and ASSIMILATE Scratch LUT format (3D).

.blut - Side Effects Houdini binary LUT format (3D).

.cms - Light Illusion LightSpace CMS LUT format (1D and 3D).

.csp - Rising Sun Research CineSpace LUT format (3D).

.cub - FilmLight Truelight LUT format (1D and 3D).

.cube - IRIDAS LUT format (1D and 3D).

.vf - Nuke's native LUT format used by the Vectorfield node (3D).

Note:  FilmLight and Foundry have elected to no longer bundle Truelight as of Nuke 11. The Truelight node has been superseded by the free version of Baselight for Nuke which itself can import a BLG (Baselight Linked Grade) that can contain a Truelight strip, plus optionally a lot more in terms of creative grading intent. Together with OpenColorIO and the native Nuke Vectorfield node we feel all the Nuke color management issues for which the Truelight node was originally intended are now addressed.

For further information on Baselight for Nuke, please contact plugin-support@filmlight.ltd.uk

1D preLUT

1D preLUT size

lut1d

1024

The size of the 1D LUT.

style1d

logarithmic

Some systems assume the LUT is designed to apply to logarithmic images, others linear. Some LUT formats are assumed to encode values as either logarithmic or linear. Use this setting to get your output LUT values encoded the way your use of the LUT requires.

3D LUT (These controls are only visible when you’ve selected 3dl in the file type dropdown menu.)

input bit depth (.3dl)

bitdepth_id

10 bit

The bit depth to scale input values to for .3dl files. For example, a 10-bit file has values between 0 and 1023.

output bit depth (.3dl)

output_bitdepth_id

input bit depth

The bit depth to scale output values to for .3dl files. For instance a 10-bit file has values between 0 and 1023. In general this should match the input bit depth.

clamp ouput

clamp_output

enabled

Clamp 3D LUT output values to the range of 0-1. Turning this off allows superwhite values to be represented which are allowed in some packages, such as Nuke. This may cause the result to be unreadable in other packages.

3dl file format

format_3dl_id

autodesk flame/smoke

Select the format you want to use for your .3dl file. The final cube size is determined by the CMSTestPattern which generates the input.

autodesk flame/smoke - use Autodesk preferred cube sizes of 17x17, 33x33, and 65x65.

autodesk lustre - use Autodesk preferred cube sizes of 17x17, 33x33, and 65x65, and output a 3DMESH/Mesh header.

assimilate scratch - scale and offset the 3D LUT. This should be used only for legacy scratch files prior to Flame compatibility.

Generate and Write LUT File

generate

N/A

Generate the LUT file and save it to the output file location.

Python Tab (These controls are for Python callbacks and can be used to have Python functions automatically called when various events happen in Nuke.)

before render

beforeRender

none

These functions run prior to starting rendering in execute(). If they throw an exception, the render aborts.

before each frame

beforeFrameRender

none

These functions run prior to starting rendering of each individual frame. If they throw an exception, the render aborts.

after each frame

afterFrameRender

none

These functions run after each frame is finished rendering. They are not called if the render aborts. If they throw an exception, the render aborts.

after render

afterRender

none

These functions run after rendering of all frames is finished. If they throw an error, the render aborts.

render progress renderProgress none These functions run during rendering to determine progress or failure.