Cryptomatte

Cryptomatte is a plug-in created by Foundry, based on the Cryptomatte Gizmo created at Psyop by Jonah Friedman and Andy Jones. The native version of Cryptomatte is backwards compatible with version 1.2.8 of the Gizmo.

Cryptomatte creates ID mattes in applications such as Maya using organizational information available from a number of renderers including V-Ray and RenderMan. Nuke can then use the Cryptomatte plug-in to isolate individual mattes in the sequence and apply effects to only those areas of the image.

Original image

Selected mattes shown in yellow

Selected mattes used as a mask
for grading

Example Node Graph

Note:  Nuke's native Cryptomatte plug-in is a new version of the original tool, with a re-ordered Properties panel and vertical Matte List to make selections easily readable. There are three controls, matteOnly, previewMode and singleSelection, that are present in the Gizmo but not available when using the plug-in. For a full list of the Gizmo properties, see the Pysop Documentation.

Note:  Encryptomatte is not currently supported with the Cryptomatte plug-in in Nuke.

Inputs and Controls

Connection Type

Connection Name

Function

Input

unnamed

The image sequence containing the object or material passes.

Control (UI)

Knob (Scripting)

Default Value

Function

Cryptomatte Tab

Layer Selection cryptoLayerChoice Dependent on file

Determines which Cryptomatte layer to use.

If your input contains just one Cryptomatte layer then it is selected by default and no other layer options are available in this dropdown.

If your input contains multiple Cryptomatte layers, one is selected by default but you can change your layer selection using this dropdown.

Manifest Source

manifestSource

Metadata

Determines how the manifest is accessed.

  • Metadata - Choose this option if the manifest is embedded in the input image file's metadata.
  • Sidecar - Choose this option if the manifest is a separate JSON file. If this option is chosen, use the sidecar field to define the file location.

This control can be used to override the manifest source.

Note:  For more information on manifests, see Cryptomatte Metadata and Manifests.

sidecar

sidecarFilepath

N/A

Type or use the browse button to navigate to the manifest JSON file.

Preview

previewEnabled Enabled

Controls whether or not the matte boundaries are drawn in the Viewer.

If enabled, the matte boundaries are visible in the Viewer and each separate matte can be seen. If disabled, the original input is displayed. Mattes can still be selected while Preview is enabled.

Enabled

Disabled

This allows you to quickly switch between your available mattes and input image to help ensure you are making the correct selections.

Picker Add pickerAdd N/A

Add mattes from the Cryptomatte input to the matte selection. This uses Nuke's eyedropper color picker.

Click the color swatch next to Picker Add and Ctrl/Cmd + Click a matte to add it to the selection.

Selected mattes are displayed in yellow in the Viewer. Multiple selections can be added. Once added, matte names are added to the Matte List.

Picker Remove pickerRemove N/A

Remove mattes from the matte selection. This uses Nuke's eyedropper color picker.

Click the color swatch next to Picker Remove and Ctrl + Click a matte to remove it from the selection.

Once removed, matte names are also removed from the Matte List.

Matte List matteList N/A

A list of currently selected matte names. This list can be modified in text form or using the Picker Add and Picker Remove controls.

The Matte List supports basic wildcard functionality so asterisks (*) can be used to select multiple mattes on one line. Asterisks (*) can be appended to a word to represent any number or character.

Note:  For more information, see Using the Matte List.

Clear clearMatteList N/A

Clears the matte list.

All mattes are deselected.

Matte Output matteOutput Enabled, rgba.alpha

Determines whether the extracted matte is written out to a channel and if so, the channel to which the extracted matte is written.

When enabled, the mattes are written to the channel selected from the dropdown.

When disabled the matte is not written to a channel, and would have the same result as setting the channel to none.

Unpremultiply

unpremultiply

Disabled

When enabled, the matte output is unpremultiplied by the input alpha.

Remove Channels removeChannels Disabled When enabled, all channels except rgba and the matte output channel are removed.

Step-by-Step Guides

Keying with Cryptomatte