Cryptomatte 1.0 released!

Awesome! I totally forgot about this. :sparkler:

Here really not an expert on Blender compositor and Masking, but here my first test. I’m not even sure I’m applying the settings correctly :smiley:
Look at hair edges

Thanks to Stefan, Brecht, Lukas and everyone involved in this!


How do you use it ? Is there something to activate for Cycles or is it ON by default ?

EDIT : I am using Blender 2.80, but there is an issue with the Cycle UI apparently :confused:

For now it is only in 2.79 from Master, it is not in 2.8 branch. You have to compile 2.79 from Master by yourself or wait for tonight for buildbot builds.
You have available settings in Render Layers tab under Passes item.
Then in compositing nodes you find the node under Matte group.
What I do is render. Then in compositing nodes I choose Cryptomatte “Pick” output. Then I choose objects or materials with Cryptomatte “Add” selecting pipette from UV/Image editor.


Just a quick comment on this great new feature:

I noticed that it’s possible to save a rendered image with Cryptomattes as a 16-bit half float EXR, which clips the super high and low values needed for Cryptomatte to work. Most of the channels contain “inf” or “-inf” values instead of e.g. “-50023542852372352335.111”.

To avoid loads of bug reports I guess it would be best to force 32-bit full float EXR output if Cryptomatte layers are enabled. Also DWAA compression (and maybe some other types) is lossy and completely destroys the Cryptomatte layers as well. Maybe this compression type should also be disabled if Cryptomatte is enabled?

Some basic usage notes:

Pablo in Blender Today:

Pablo in Spanish:


I’ve tried the new 2.8 Build with cryptomatte
The devs say it works with Depth-Of-Field, and it does. colorcorrecting the matte’s isnt perfect though, see the following image.


still, that`s pretty cool!

btw, why that strange naming of outputs in renderlayer nodes in compositor? seems they are not sequential, it`s slightly confusing which to use

Has anyone imported cryptomatte to nuke and have it working? mine does not working.
Some channel name?

Yeah, there is still some problems left with the naming conventions in the manifest. Nuke does it differently than the other compositing tools. It might work in Fusion but currently it either works in Nuke or it works in the other programs. Lucas is aware of it and tries to find a solution where it works everywhere.

Lukas Stockner is investigating

I don’t know if I’m doing something wrong but if I have a lot of objects in the scene it dosen’t seperate it in different colors in the cryptomatte object pass:


I exportet it in .png 16 bit and cyrptomatte level is 16. i used blender 2.79 Master (nov1 build).

Cryptomatte is designed to be used with the corresponding compositor node and in order to preserve its data, it must be saved in lossless float32 format. It was never meant to be used without the Cryptomatte compositing node.

1 Like

Thanks for the information! Saved it as .exr float 32 bit and it seems to work now! Could also convert it in Photoshop to a normal 8 bit .psd file via copy/paste without any issue for selections in photoshop:


Like skw said:

You are not supposed to use this without the compositing node, because if you convert it to 8 bit image and select colors in photoshop, the masks are not going to be accurate. This method would defeat the purpose of it completely. Please use it the way it is meant to be used.

But it works without any issues:

I using everything what makes the job in 2D less a pain. For overpainting 3D stuff the selections are good enough for me.

@skw : this is awesome and a true game changer for compositing ! Thanks a lot !

I’ve got a few questions for you, fell free not to answer them if you’re busy :slight_smile:

1/ What is the purpose behind the Asset pass ? It says that it render matte of objects with the same parents.
Let’s say I want a matte of a linked character made of several parts, where and how that parenting should take place ?
Wouldn’t it be better to output a matte per collection ? even if it’s a bit different than the original Criptomatte specs it could fit well blender’s workflows.

2/ Is it possible at some point to be able to enter "Circle* " in the node to matte all the object’s names that starts with Circle ? Does CM have this kind of filtering options ?

3/ Do you think it will be possible to have CM for EEVEE ?

It’s great to see Blender/Cycles be on part with the new technologies , actual ID masks where always a pain to use in general.

Here is another good example from Zacharias Reinhardt


Seems impossible if objects can be part of different collections. Objects can however have only 1 parent.

That’s clever ! it takes me some time to figure out why this can’t work and cry a bit, but that’s ok…
Anyway it seems a bit weird and counter-intuitive to use parenting to set mattes …

All that said I can’t wait to have some errors in my render to correct them with Criptomattes !