Can I render a Cryptomatte result out to separate frames in an animation?
I’m trying to render animation and have only the skin of the characters as an alpha map so I can fine-tune them in post. It sounds as though Cryptomatte is the way to go with this.
I have the Pass Index for the skin set to 1, and I have Material checked in the Layer Properties > Cryptomatte section. I’ve been able to render out single frames, and separate the material that way using the eyedropper. (To some degree. It’s still difficult for me to actually get it to do it sometimes.) Now I need to know how to render out those out to separate files so I have the full image, and then a separate matte for each frame. I’m taking them into After Effects, using them as an Alpha Layer Mask, and adjusting it from there.
This may not even be the best way to go about this, so if anyone has a different way to do it, please let me know. Thanks in advance.
Comments
I'm probably not the best guy to help you on this since I never used cryptomatte myself. But I know the basics. To render the matte channel you just have to plug it into the composite node. This way you can get your skin alpha to edit into after fx. As for a "better" way to do it, you may want to give a try to the blender compositor.
Then if you mean to render a multipass animation, again I'm not an expert on this, but from what I know you have to use "openexr multilayer" as output and all the layers you activate will be rendered in the openexr. As for cryptomatte materials they get three layers in the openexr this way, that you can process with the cryptomatte node. You can then open an animation sequence in the compositor. Or in any software that supports cryptomatte. But it doesn't sound as what you want.
There is an 'id mask' node in the compositor. If you are setting the skin Pass Index to 1, you should be able to output the masks separately for the skin.
Exporting Cryptomattes out of Blender is problematic. I got photoshop to recognize them but when I switched to Affinity, no luck. I've read other people having issues exporting them as well. The id mask is probably the way to go if I understand you correctly.
You also have to check the Object Index and/or Material Index in your render passes so they show up in the compositor.
@Krampus Can you elaborate please ? As I know it there's no way to get multiple layers for the material indexes. I mean, openexr gets one index layer including all the materials. Unless you use the index on a single material so only that one will be in the index layer.
As for the exporting issues, that's why it's probably "better" to work with the blender compositor.
@Krampus Unless you mean to first render the openexr then "rerender" the material indexes out of it, for each material. But this you can do with cryptomatte too.
Then honestly I believe that exporting multiple layers this way doesn't make much sense. It's better to work with the blender compositor directly. Or the target application should be able to handle the openexr layers the same as blender does.
https://www.exr-io.com/exr-io-2-00/
try this one and since its for photoshop, so its highly possible to brought in AE after opening in PS
But Still Not 100% sure if you can easily get (each) material passes just like in another 3d sofware ( which called material ID) when using cryptomatte or work without Blender compositor , . Another route you can try is using Object ID .
This looks liek agreat plug-in for psd-
To use EXRs in After Effects for animated sequences you need OpenColorIO: http://fnordware.blogspot.com/2012/05/opencolorio-for-after-effects.html
And to use this Blender color management for Ae: config AE.ocio