Page MenuHome

Cycles: Write Cryptomatte metadata according to the specification
ClosedPublic

Authored by Lukas Stockner (lukasstockner97) on Oct 29 2018, 11:15 PM.

Diff Detail

Repository
rB Blender

Event Timeline

Here's an example render saved with this patch:

intern/cycles/blender/blender_session.cpp
500

Add a comment about where those magic paths are coming from.

intern/cycles/render/object.cpp
852

object

853

How does this work with objects from different libraries but with same name?

869

Same as above.

intern/cycles/render/shader.cpp
707

And again.

Brecht Van Lommel (brecht) requested changes to this revision.Oct 30 2018, 2:26 PM
This revision now requires changes to proceed.Oct 30 2018, 2:26 PM

Here's an updated version that includes the render layer in the pass name.

I've also deduplicated the code a bit and removed the hardcoded hashes (since they depend on the renderlayer now).

As for duplicate object/material/asset names - not much that can be done there. The manifest is only used to resolve names to hashes anyways, so if two objects use the same name only one of them will be selectable by name, but the color picker will still work for both.

Here's a new example render:

Brecht Van Lommel (brecht) requested changes to this revision.Nov 4 2018, 7:23 PM
Brecht Van Lommel (brecht) added inline comments.
intern/cycles/blender/blender_session.cpp
501

Should this be &? Currently this just evaluates to true.

source/blender/blenkernel/intern/image.c
2182 ↗(On Diff #12358)

This should be strlen(custom_field->value) + 1, seems to assume to be the length of the array.

This revision now requires changes to proceed.Nov 4 2018, 7:23 PM

Thanks for the feedback, both are fixed now.

This revision is now accepted and ready to land.Nov 7 2018, 9:49 AM
This revision was automatically updated to reflect the committed changes.