Cryptomatte is a piece of open-source software created by Jonah Friedman and Andy Jones at Psyop. It is also used synonymously for the specific style of image created by the software or other software working alike.

Cryptomatte
Original author(s)Jonah Friedman
Andy Jones
Developer(s)Psyop
Initial release10 July 2016; 8 years ago (2016-07-10)
Stable release
1.4 / 3 May 2021; 3 years ago (2021-05-03)
Preview release
1.5.0.beta / 10 March 2021; 3 years ago (2021-03-10)
Repositorygithub.com/Psyop/Cryptomatte
Written inPython, Lua
LicenseBSD 3-clause license
Websitegithub.com/Psyop/Cryptomatte
Top: The splash screen of blender 2.81 as rendered image
Bottom: The same scene as cryptomatte image view

Cryptomatte became a quasi-standard in the industry, because of its ubiquity, integration into popular 3D graphics software, and ease of use.

Render processing

edit

The program itself creates an ID matte of a scene that can be used to create for example image masks for single or multiple objects in the scene. The ID matte has a very distinctive look and itself is sometimes referred to as cryptomatte. These cryptomatte images are in general very colourful assigning each object or material a different random colour. The program creates mattes that support motion blur, transparency and depth of field using data that is already available at render time.[1]

Supported render engines

edit

Cryptomatte images can be created by several 3D graphic programs like Blender,[2] Autodesk Maya,[3] Autodesk 3ds Max[4] or Houdini[5] and are usually exported using the OpenEXR file format.

Whether a program is able to generate a cryptomatte or not is determined by the render engine being used. If a program supports more than one render engine it is possible that it can generate cryptomatte images with one engine while being unable to do so with the other one. Blender, for example, had no option to create a cryptomatte image before version 2.80.[6] With version 2.80, only the "Cycles" path-tracing render engine supported creating a cryptomatte whereas "Eevee", the newly added real-time render engine, did not. The support to create cryptomatte images was added to Eevee with version 2.92 that was published on February 25, 2021[7] one and a half years after Eevee was first published.[8]

The following render engines are known to support creating cryptomatte images:

Render engine name Shipped with Added with version
Arnold[9][10] Autodesk 3ds Max
Autodesk Maya
Arnold 5.2
Cycles[6] Blender Blender 2.80
Eevee[8] Blender Blender 2.92
Mantra[11] Houdini Houdini 16.5
Karma[12] Houdini Houdini 18.5
Modo renderer / mPath[13] Modo[14] Modo 14.2
Redshift[15] Cinema 4D (CPU-only) Redshift 2.6.11
3Delight[16] Katana 3Delight 1.7.32[16]
Unreal Engine (Movie Render Queue)[17] Unreal Engine 4.26
Radeon ProRender[18] Radeon ProRender 3.1
Octane Render[19]
RenderMan[20]
V-Ray[21]

Supported compositing software

edit
Compositing software name Added with version
Autodesk Flame 2020[22]
After Effects 17.0[23]
Nuke 13.0[24]
Blender (Compositing Nodes) 2.8
Houdini (COP) 16.5[11]
V-Ray (V-Ray Frame Buffer) 5 Update 1[25]
Adobe Photoshop Exr-IO 2.0[26]
Gaffer 0.61.2.0[27]

Workflow example

edit

In a 3D scene a cryptomatte image can be created that assigns a unique ID to each object. The objects usually also have distinct colours that make a scene with many objects very colourful. The ID matte can be used to pick one or more objects in a scene. The ID matte can either be exported or it can be used by the 3D software itself for compositing.

An example workflow would be to use the cryptomatte image to generate a mask that itself is used to limit an effect to only a certain part of the image. It can thereby be used to quickly create masks without the need of re-rendering a whole scene.

The example workflow for images:

The same workflow for video files:

The masks in the examples can be used to limit a visual effect so that only the cube in the middle is affected.

Licensing

edit

The developers published the program's source code and licensed it under the BSD 3-clause license "to turn it into an ecosystem around an open standard". Their goal was "to see a diverse ecosystem of renderers that can create Cryptomatte images and plugins for compositing applications to decode them".[1]

See also

edit

References

edit
  1. ^ a b Cryptomatte on github.com
  2. ^ Cryptomatte Node on docs.blender.org
  3. ^ Cryptomatte in Maya on rmanwiki.pixar.com
  4. ^ Cryptomatte on docs.arnoldrenderer.com
  5. ^ Cryptomatte on sidefx.com
  6. ^ a b Blender 2.80 Release Notes: Cycles on wiki.blender.org
  7. ^ index of blender 2.92 release on download.blender.org
  8. ^ a b Blender 2.92 Release Notes: EEVEE on wiki.blender.org
  9. ^ Cryptomatte Shader docs.arnoldrenderer.com
  10. ^ Solid Angle ships Arnold 5.2.1. CG Channel. October 23, 2018
  11. ^ a b What’s new in Houdini 16.5 Side Effects Software
  12. ^ Karma Renderer FAQs. SideFX
  13. ^ Foundry ships Modo 14.2. CG Channel. November 13, 2020
  14. ^ Foundry announces strategic decision to wind down development of Modo. Foundry.com. November 7, 2024
  15. ^ Redshift Version 2.6.11リリースノート (in Japanese). Born Digital. June 12, 2018
  16. ^ a b Changelog - 3DELIGHT. DNA Research
  17. ^ Movie Render Queue Render Passes. Epic Games
  18. ^ AMD ships Radeon ProRender 3.1 for Blender and Maya. CG Channel. April 1, 2021.
  19. ^ CRYPTOMATTE on aoktar.com
  20. ^ PxrCryptomatte on rmanwiki.pixar.com
  21. ^ Using the Cryptomatte In V-Ray for 3ds Max on tutorials.cgrecord.net
  22. ^ Autodesk ships Flame 2020. CG Channel. April 16, 2019
  23. ^ Adobe ships After Effects 17.0. CG Channel. November 4, 2019
  24. ^ Foundry ships Nuke, NukeX, Nuke Studio & Nuke Indie 13.0. CG Channel. March 17, 2021.
  25. ^ Chaos releases V-Ray 5 for 3ds Max Update 1. CG Channel. February 24, 2021
  26. ^ New: Exr-io 2.00 with cryptomatte support. Exr-IO is a third-party plugin
  27. ^ "Release Gaffer 0.61.2.0 · GafferHQ/gaffer". GitHub. Retrieved 2023-07-21.
edit