Object ID (Material ID) from Blender to AE or Nuke?


How do I correctly use the Object Material ID outside Blender? I can use it on the Blender compositor, but this time I need to export to Nuke or After.
How do I “pick matte ID” that Object ID pass? I am using Blender 2.79. No Cryptomatte here.
Please help.
Thanks.

You can export multiple image files from Blender compositor using File Output.

1 Like

Export using exr, it is needed because id-s are outside range 0.0-1.0 and you don’t want to clip them. In Nuke you can use grade node or expression to select the color, in grade node set white and black levels to your id value (use sampler for easy picking and add expression to drive another value by first). With expression node shuffle your id-s to alpha channel and then use an expression like a == 2.0 ? 1 : 0 in alpha box. Here 2.0 is the id value you want to get matte for.

2 Likes

Yeah. This is the kind of thing I was talking about. Great to know the grade node can isolate the color by adjusting the black and white points. Yeah, once it gets iso, I can go any route to matte.
Will give it a spin. Wilk post progress.
Thanks!!

You mention to set white/black values to the Id number I want to choose. I see everything white (overblown). I guess they have to be normalized before? or Grade node takea care of the normalization?

Eh, maybe it doesn’t work the way I initially thought, I wrote it by heart. I’ll try it later, there definitely is a way to use grade node for this.

Yeah, because what do you use for compo? Nuke? Maybe if it’s possible for you please send a capture on the node setup to relate it to material ID. I see cast overblown white. Don´t think any info is there.

Cheers.

Cryptomatte is in the nightly builds of 2.79.

1 Like

Then I guess when one Opens appending a SCENE, cryptomatte goes out the window. Oh frikken wow, an “easter egg”…

Any value above 1.0 is white in viewer unless you gain it down or use some log viewer lut. Yes, I use Nuke.

Fiddled a bit with it, grade node doesn’t cut it as is, I had an idea that doesn’t quite work out. But using expression node is the easiest way for single-node id mask creation. It won’t allow picking colors though, for that you could build a gizmo with a few simple nodes.

With expression all you need to do is shuffle IndexOB channel to alpha and in expression node use a == id ? 1 : 0 expression for alpha value:


First shuffle after read node simply shuffles color data from RenderLayer_Combined to RGBA channels, it is not related to object masking.

If you want to use id mask for actual masking, as an alpha channel, you should first unpremultiply RGB by alpha, then copy new alpha in (as on screenshot) and premult after that with new alpha. You also need a mechanism for antialiasing id pass, because by definition, id values are discrete and not antialiased (single pixel can’t blend id values) unless you use some more elaborate method like cryptomatte.

If you want mask for color corrections etc, just plug it into mask input of grade etc node.

1 Like

I don´t understand. What do you mean?

Just a general thank you for making me aware of the Cryptomatte. Super tool for compositing.

1 Like

Hey, I did a full review on that: https://www.youtube.com/watch?v=TFFM-oLQnls

1 Like

I had a 2.79 imported scene into 2.79b. If it´s done like this, cryptomatte will not appear on 2.79b. This is what I refered as “easter egg” (I was being sarcastic), and I further mentioned “cryptomatte goes out of the window” meaning: Cryptomatte options dissapear.

Ah, no, Cryptomatte is not in 2.79b.
Cryptomatte is in the 2.79 nightly builds the thing that used to be called Master. Master is now the nightly build of 2.80.

You can get it at the following link if you click on the “try Blender 2.80 beta” (yes 2.80) button.