Jump to content
mestela

cryptomatte

Recommended Posts

Tempted to try and implement this in mantra:

 

http://www.psyop.tv/psyops-cryptomatte-technology-explained-siggraph-2015-poster/

 

Meant to do some reading tonight, but got distracted with that connecting curve post. :)

 

Anyone else checked this out? I assume its possible to implement now that we can create custom filters, but that's based on hearsay and vague hand waving. 

 

 

Share this post


Link to post
Share on other sites
Guest tar

Wouldn't bother even thinking about it. Knowing how bad fully released papers translate into production code - this is simply too advertorial to even care about IMO

 

edit: for example this type of line adds nothing ->  'Since deploying the toolset, we have received positive feedback from 3D artists and 2D artists alike.  '

 

Show us the issues then we might care  

Edited by tar

Share this post


Link to post
Share on other sites

Ha, but how do you _really_ feel? ;)

I'm interested mainly because I've been been burned a few times with deep, this seems like a reasonable compromise.

Share this post


Link to post
Share on other sites
Guest tar

I wanted to try to use alembics and Nuke's scanline renderer to do this type of thing - Mantra rendering for RGB & Nuke's scanline for some tech stuff. Maybe it's only good for small stuff though.  

 

What are your thoughts on custom filters? Not sure how that fits into this. Thanks!

Share this post


Link to post
Share on other sites

From my super limited understanding, you'd need to access the samples before filtering to create your own coverage mattes and whatnot. I haven't delved into that side of mantra at all though, so i'm likely completely off base. Gonna try and have a closer look over the weekend.

 

Then there's the issue of creating matching nuke nodes to make sense of these mattes... hmmm...

 

 

 

 

Share this post


Link to post
Share on other sites

or you don't filter.  i've done a version of this in the past -- render your beauty like normal, then run a matte pass with the "sub-pixel output" toggle engaged.

 

for our purposes, we just had a shader that stuffed in the current prim, a material id (integer), and an object id (also an integer).  those became red, green, and blue in the rgb.

 

in nuke, you just pick a color for which item you want and then generate a matte channel based on your selection.  then you reformat down to your rez and you're good.

 

works great except for transparency/volumes (and ray tracing, but that's asking too much).  motion blur works fine with this if you have enough samples.

 

the image size isn't too crazy either since you've got relativelylarge blocks of solid values (no anti-aliasing).

  • Like 1

Share this post


Link to post
Share on other sites

Yep, we've done similar things too, but there's always a caveat of this or that, and as the amount of grade mattes requested by DI/comp become non trivial, even with automation it takes time for lighters to setup them all up.

 

The tone of the paper (and discussion on mailing lists) implies that Pysop have worked out a lot of those edges cases that take up 90% of the time, so colour me intrigued. Dof and motionblur and transparency and mostly automatic setup for grade mattes, without deep? Witchcraft. 

Share this post


Link to post
Share on other sites

you can let houdini assign the objectid for you, but then it's possible to change, so it's probably best to have an artist handle it (perhaps with some ability to verify that it doesn't collide with some other id).  same with materials -- you can have an id built into the material itself or give the artist the ability to select it.  primitives are automatic and with polysoups it's super-easy to get things id'd by contiguous sections of polys.

 

 

dof and motionblur are trivial since they're handled by pixel samples.  i suppose you could probably do screendoor transparency with this system, but you'd need to crank the hell out of your pixel samples i'm thinking.

 

honestly, i don't really see anything mindblowing here.  not sure why they bother with the id mapping to real names.  most art direction is going to be visual so directly selecting the item would seem to make more sense than determining the name of the item you want.  unless, i suppose, the numbers change from shot to shot and you want to move your nuke script to another shot and still have it work on the same objects.

Edited by fathom

Share this post


Link to post
Share on other sites

Hey all, 

The team at Psyop just open sourced their ID matte toolset called cryptomatte. I started working there a couple months ago. We are looking from some contributors for Mantra implementation for the project! anybody interest?

https://github.com/Psyop/Cryptomatte

Have look and if your interested or can help out hit up the team, we are eager to make this apart of mantra and Houdini

Cheers!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×