All about Natron Community Plugins

@ivan.stephan @tmorley
Hi, Let me know if you want to PR/Submit it in git. Will merge it.
If this one excels the existing one then replacing is better. But no harm of having two too. can be named old one legacy.
I am not in crypto pipeline currently. So a community beta testing is suggested.
Thanks.

I agree with a beta testing!!! I did some significant changes in the previous code.
I’ll do a beta with my students and I’ll post the result here too.

May I commit this version in the git directly? @cgvirus I’ll need some advices in this topic!!
Thank you and all the best

Yes, sure you can create a pull request (PR) from github.

Here is a simple demo. You can search for “how to create pull request in github” for additional information.
Note that you may need to pull the repo from the main repository and push it to your fork if the main fork gets updated in future. You can search for “How to push and pull with gihub”. You will need terminal for push-pull BTW.

Hi, @ivan.stephan

I did a quick test of your new Cryptomatte node. It is simpler to use than the old one and good in general. But in first test I found 2 issues that would be good to improve.

1)

  • If Cryptomatte node is connected to input and user wants to add a dot between nodes for cleaner routing with Ctrl-leftClick, Cryptomatte fails to load crypto layers. It shows as a value not existing warning. It actually still is usable if not clicking to Crypto layers to change them to none, which is only option at this point. But still thing to fix for proper use.
  • A dot can be included without above issue by creating it to node graph by shortcut “.” and then connecting.

2)

  • I have a pretty clean method which I use in Nuke to grade different elements of 3D rendered image. That is by having one vertical Cryptomatte pipe which consists of stacked Cryptomatte nodes to connect individual Grade or CC nodes in comp.
  • If I stack multiple Cryptomatte nodes, those below the first one display crypto layers as none. It actually works, but for user to know everything is alright it would be better to still be able to see crypto layers in node instead of none. Seems like Cryptomatte Node does not read layers from another Cryptomatte node. If I connect Cryptomatte to some other node then I can access all original EXR layers even after first node.

If you need more info or testing on these, just let me know.

1 Like

I noticed one addition that would be useful. Cryptomatte node could have Clear All button to quickly remove all selections. Can be done now also by clearing ID list, but one button would be fastest.


Also thought of not only asking things, but to contribute as well something, so I’m sharing a download link for lowres/lowsample main render pass straight from Blender of an image I used to test Natron first time (Spring 2019). Could be useful for others to test Cryptomatte or other CGI compositing techniques. Image has lot of different elements to test… small, big, smoke, etc.

Everyone are free to go and download, but please do not share it elsewhere and no other than personal use. Can of course use it to showcase features or issues of Natron in this Forum if like. Original render was 4k and higher sampling quality.

Link
https://drive.google.com/file/d/1aFs2TY57Ahwpf5kuzjn5uYY7hFMNDJqn/view?usp=sharing
(330mb, 32bit EXR, 2000x2000px)

Please notice that when you load it to Natron, it first displays Ambient Occlusion pass due to the way Blender saves passes in EXR. But just change output layer in Read node to Combined.

Attached is also the original output image in low res which I did, but I didn’t use Cryptomattes at that time. In another thread I actually posted screencapture of the Node Graph of the original comp. This was my first test of Natron, Blender and Gimp without prior experience on any of those software at the time.

Natron_cryptomatte_sample-info_1

Thank you very much for your feedback!!!

I corrected all bugs, plus added some extra features, like clear ids button, force node update button and also now it’s possible to combine multiple crypto nodes alpha channels.

I’ll try to make a git upload soon!!

https://drive.google.com/file/d/1XFh42ctCBCsJZH9K-7E_a8fPSM6zfvpv/view?usp=sharing

2 Likes

That was fast update even though your original post wasn’t that recent… great!

I tested updated Cryptomatte using the image I shared and another simpler CGI product shot and it’s very good. Combine Input Alpha is really nice addition.

Only “cosmetic” thing I noticed as a user perspective is that when I pipe Cryptomatte nodes one after another, later nodes display Color as crypto layers by default. It works anyway and crypto layers are also selectable on those nodes as you had made an update, but it might be a bit confusing. I think the first Cryptomatte node passes data out as a color, so it seems to be technically right being same data as crypto layers in first node, but for user the name color would suggest being the original render. This is of course mostly just relevant to my personal color grading workflow to stack cyrptomattes in one pipe (which I think is the best method :wink: ).

Additional note if someone else tries new version:
Don’t use this updated plugin in comp scenes which use previous version of the plugin. It seems to have some kind of conflicts with existing Cryptomatte nodes and makes Natron freeze. In new files it works very well.

@ivan.stephan Hi! Long time! I am about to start a cryptomatte testing soon. Which one is the latest one? v2?

@fabiof17 Hi man! I have updated the EXR extract tool to extract psd and gimp layers. Made it simplified and separated tool to acquire RGBA in shuffle. Works with Krita>PSD as well. Can you merge this PR? Thanks!
https://github.com/NatronGitHub/natron-python-scripting/pull/2

1 Like

Hi! This is my last commit ( V3 )
https://drive.google.com/file/d/1XFh42ctCBCsJZH9K-7E_a8fPSM6zfvpv/view?usp=sharing

To use the node first you need to fill the CryptoLayers 0/1/2 in the node properties

Now is possible to pipe crypto nodes too

1 Like

Thanks. Will check it.

done merging Tool to extract PSD and XCF Gimp layers by cgvirus · Pull Request #2 · NatronGitHub/natron-python-scripting · GitHub

2 Likes

Thanks!

Just tested this, nice work!

I don’t suppose there’s a way to also get it to render the mattes with random colours similar to the original implementation… :eyes: Barring this, the “combine input alpha” mode offers a much nicer picker interface than looking at the actual cryptomatte where things can be quite hard to discern, perhaps this could be shuffled into the RGB channels and actually used for picking?

Additionally I just stumbled upon the original Natron implementation by Psyop, it appears to be quite out of date and doesn’t seem to work anymore (if it ever did) but the nodes do load up in modern Natron!

1 Like

Thanks for the link. Didn’t know psyop did one for Natron as well. I think I can analyze it. Haven’t cheeked ivan’s as well. Will see.

Also can someone give some example of cryptomatte done with various render engines? I am able to test with Blender cycle and Eevee. Thanks.

Here’s the image I use for testing that I made in Renderman a while ago.
cryptomatte-renderman.exr (2.5 MB)

1 Like

I’ve asked a friend to make cryptomatte samples from Arnold, Redshift and Octane…
I’ll upload them as soon as he sends them to me.

1 Like

cryptomatte_demo.zip (45.2 MB)

Here @cgvirus.
There are Cornell Box renders with cryptomatte passes from Arnold, Redshift and Octane.

2 Likes

Thanks!

1 Like