Psyop / Cryptomatte

Cryptomatte Nuke plugin, Fusion plugin, sample images, and specification
BSD 3-Clause "New" or "Revised" License
632 stars 151 forks source link

nuke node.metadata() function issue #138

Closed Opalmoizenpas closed 3 years ago

Opalmoizenpas commented 3 years ago

We ran into an issue while using nuke 12 in stereo. The issue came from the fact that even if the "crypto_object"( or other layer) manifest were in the exr, cryptomatte was still giving us the Id and not the name in the "matte list". It did not break the cryptomatte itself since we were still able to get the matte by picking it. But it did cause issue when artist wanted to input the name by hand or use the wildcard in our case.

After investigating,we found that the nuke node.metadata() function is working a bit differently (we send an issue to the foundry). Now it need to have the view specified to properly work.

So we modified our cryptomatte_utilities at line 301 in version 1.4.0 beta (we tried it with 1.2.8 and we got the same issue). We just added the view input to the metadata request

manif_str = self.nuke_node.metadata(manif_key, view=nuke.thisView())

This fixed our issue and we thought that we would share the fix with the cryptomatte team.

jonahfriedman commented 3 years ago

I couldn't reproduce but the fix seemed harmless and correct, so I change it in 1.3.0 (and the beta). Thanks!