When rendering in CG be that in Arnold, Vray, Renderman or another renderer it is often necessary to create ID mattes.
ID mattes are used to “pull keys” on areas you would want to adjust latter on in post-production for example altering the colour or saturation of an individually rendered element. Traditionally you only had a choice of either red, green, or blue as you need pure colors. Once you have used three matte channels you would then need to create a new render for more matte areas.
The Current method of creating mattes involves assigning red, green and blue again and again until you have covered all the materials or shaders in your scene.
A new innovation has been developed called Cryptomatte that does it by storing data about the individual shaders, assets and objects and storing this as code within an EXR image. This image does not show any true colors as such, but rather the information to control the objects. To use the data you will need to either composite your work in Fusion or Nuke.
This method is open source and has been developed by the commercial company psyop.
One of the creators of Crypromatte John Friedman says “Cryptomatte is a tool created at Psyop by Andy Jones and myself. It creates ID mattes automatically using organizational information already available at render time. This organizational information is usually names, object namespaces, and material names. It also supports motion blur, transparency, and depth of field, making it a pretty complete solution to the problem of mattes”
This technique has seen wide adoption in production pipelines by companies including: psyop, automatik-vfx, darlings-post, The-Mill, Milk-VFX, MPC, ILM, Framstore, DoubleNegative.