Isotropix Forums

How to automatically version up a render ?

Clarisse related tips and tricks

How to automatically version up a render ?

Unread postby david_grp » Mon Oct 19, 2020 9:19 pm

Hey guys!

I tried to find the info, or maybe a script to achieve this, but without success.
Basically, I have an image, with 5 layers. Each layer points to a specific render folder.

Let's say that the first layer is named :

layer_01_beauty_v001.exr

I would like clarisse to automatically version up the next render in the naming wihtout having to manually change the version number in the output attributes, so it will be named like this :

layer_01_beauty_v002.exr


From what I understand, this can maybe be done with variables, but I'm really not sure. This is quite obscure.
Any ideas?

Cheers!
David
david_grp
 
Posts: 7
Joined: Wed Jul 25, 2018 5:35 pm
Location: Montreal, Canada

Re: How to automatically version up a render ?

Unread postby mdkai » Tue Oct 20, 2020 8:46 am

Hi David
Overall there is no fully automated setup without a script, as it needs to track when you want to increment the version.
But for now you can use expression and variables to simplify tracking of the shots versioning.
These few expressions can help to make this process of the location easier:

A little warning that if you create a new string for the file path, clarisse and Cnode will not create the folder if it does not exist.
From Clarisse you can use the "Check path" function of the render manager and then hit the "create folder" button after it errors.


VERSION VARIABLE
Add a new variable as string, called "version" and use it to increase it each time the scene version changes
$version = v010
This is the only part aside of the folder creation which requires manual control, without any script.

NAME OF LAYER
You can use the get_name() function to retrieve the name of an object. If used on a savepath it would get the name of the actual layer of a render image.

NAME OF IMAGE CONTEXT
It's also easy to extract the name of the context an image layer is located, using get_name(get_context())
This is usefull if a context is named after the actual shot task like "SC0010_S0050"
If all these are put in use like in this example:

Version = v023
Layer = beauty3D
Context =SC0005_S0010
we can do something like this:
"Z:/MYPROJECT/SCENES/SC0005/S0010/OUTPUT/3D/" + version +"/2k/"+ get_name() +"/"+get_name(get_context())+"_" + get_name() + "_"+version +"_####"

Which results in this path: Z:/MYPROJECT/SCENES/SC0005/S0010/OUTPUT/3D/SC0005_0010_all/v023/2k/beauty3D/SC0005_S0010_beauty3D_v023_####

Again, there must be a check and creation of the new folder(s) after a new set is made or renderings will not be saved
Also remember you can use other variable like $pdir or what ever you like to keep track of..

Hope this helps
Cheers
Kai
Join us at the Discord https://discord.gg/G5cJj9A
mdkai
 
Posts: 354
Joined: Tue Oct 07, 2014 7:24 pm

Re: How to automatically version up a render ?

Unread postby david_grp » Tue Oct 20, 2020 11:12 pm

Hi mdkai!

Thank you so much for taking the time to answer, this will help me a lot ! I'll try that asap :D

Cheers!
david_grp
 
Posts: 7
Joined: Wed Jul 25, 2018 5:35 pm
Location: Montreal, Canada


Return to Tips and Tricks