Tip:
Highlight text to annotate it
X
Hello everybody! I am Magno Borgo
and this is another Nuke tutorial.
In this video I'll talk about the Write node and we'll see several ways
to render a project. Plus some tips and tricks.
I have here a very simple project: an image of 1024x1024 pixels
a solid color with text on top, that will help us to observe
various aspects of the Write node.
Let's get started!
Starting with a Write node, you can press "w" on the Node Graph
or come here in the Toolbar to create it
let's see some parameters and explore gradually the various options.
First, we have the Channels to be rendered
and name of files ...
Click here on the "folder" icon, navigate to the directory you want to save
I have a directory here called "render"
I'll click on it and there you can press "Save" or start to type the name of the file
on the dialogue. I'll click on "Save"
the directory will be filled here ... I will add the name of the file that I want to save
I'll use "arquivo", period
use the "#" symbol to represent the padding (number of numeric characters)
"####" will allow up to to the number 9999
another period "." and the file extension
I'll save as "exr" when you press enter, Nuke
will set the parameters based on the chosen extension (exr).
You do not necessarily need to use "." between the numbering and file name
but it is a recommended practice... if you want, use "_" or whatever you want
in the case of the format "exr" the specific options are here
and it allows saving Channels... if you want to save all Channels, use "all"
which are the Layers of their composition .... or just use "rgb" or "rgba"
for all file formats you can choose the Channels to be saved.
We are ready to render ....
I'll connect the node. To render you can click the render button, or come here in the Menu
we have "Render All" (all Write nodes)
or Render Selected> only the Write node selected
I will use Render All, as it will not make a difference now.
You must specify the frame range to render ... may be "input" which is determined
by the input entering on the Write node
or "global": uses the parameters from the Project Settings
I'll click on "ok" to render ....
Lets take a look on the directory ....
there are the files rendered
0001-0020, in numerical format with 4 numbers
if I reduce the padding... for example "##"
Lets take a look....
Look the result in the folder
Now I have several files ... with a padding of 2 and 4 numeric characters
I'll delete it all ....
any time you render a file, if it already exists
the file will be overwritten, so be careful.
I will create over a Write node, and put it in the same output
they will render the same content, as they leave from of the same input
on this new Write node, I will render a Quicktime file
as I configured a "project directory" in Project Settings
I'll use a relative path
like this: "./animacao.mov"
with a Quicktime file, there's no need to put the numbering, because it generates a
single file .... is not a file sequence.
Putting the ".Mov" the Colorspace, file type and codec will be set
if you want to change the codec, choose one of the codecs installed on your system
eg ... h.264 and to set the parameters, click "Advanced"
I usually turn off the "data rate" as 90kbps per second is very low.
You can add files Audio here in this attribute
On these attributes here, it is possible to limit the rendered frames
to a Frame Range other than the one set on the Project Settings
here I'll render just the frames 5 to 10
the other node, it will render normally
and now to render these two nodes at the same time, I'll come here on the menu
and use the "Render All"
I have an option to do a "background render" ie, a new instance of the software
will open to render ... and we can continue to work on the user interface
with this kind of render. Here the options, we set the number of threads (processors)
and the amount of memory to be used. Do not to use all the memory,
as we'll continue to work while rendering
I will press "ok" and wait ...
back to the folder ....
I have the 20 .exr files and the Quicktime was put on the folder "comp" as I used "./" on the path
If I use "../" it goes to the previous directory
I'll do that... and render again
see... the file appearing in the previous directory becuase of the"../"
if I open the Quicktime, as it was limited to the frame range ... we have only frames 5 to 10
that was what I wanted
I'll open the properties of Write2, and now I will send it to the folder
"render" using a relative path: "../render/"
it is interesting that when we set relative paths, if you always use the same project folder structure
you can use pre-configured nodes with the parameters that you use often
to do that, you can create a Toolset: you can use it to avoid having to set
the parameters every time ... codec, frame range, format...
You just need to work in an organized manner... let's say that I always use a Write
with. exr and another with Quicktime .... I will disable framerange here
select the nodes
and create a Toolset ... I'll call it "WritePreset01"
check if they are selected ....
Now in every new project, I can use Tab ...
the Toolset appears there ...
or here in Toolbar ... locate the preset
Let's talk a little about "Proxy"
Proxy, which is set in the Project Settings (press "s" on the Node Graph)
In Proxy Mode .... you can set a scale, which by default is 0.5
ie ... Half of the composition. Or you can use a "Format"
for Proxy .... this project is 1024x1024. I'll create a Proxy of 256x256
when you work in Proxy mode, which is turn on here on this button
the image size is reduced ... making the project "lighter" to work on
and at render time, you can also work with Proxy mode
you even have to be careful at render time because if
the Proxy mode is on... the Write nodes will be rendered in the Proxy resolution
to render the proxy, you must set a separate path from the "file" attribute
I'll put "animacaoProxy" in the name
and will render only this node .... see that on the Render dialog
the "use proxy" is on ... because the Proxy Mode is turned on in the Viewer
if I press "ok" .... when we look in the folder
the new rendered file is there ... "AnimacaoProxy.mov"
and the size is 256x256 ....
so Proxy is very interesting .... just be careful not to render in Proxy by mistake.
The Write node can be used to read files also
is as if you are pre-rendering a part of the composition, and reading it back
on the same node. This is useful when you have a complex composition
with several nodes and effects, and it is "heavy" to work on it....
say that this composition here is "heavy"....
select the Write node, preferably use a file format. exr, to keep
all Channels, use a format 16 or 32 bits to maintain the highest image quality
on that render ... and then on "read file" making the Write node a "Read" also
then, on the sequence the composition can continue.... using other effects
the node is showing an "error" msg ... because the files were not rendered yet
I will render these files ...
and now enable the "read file" ... without error now
From here on, I can work with other nodes
and all that content coming from above is pre-rendered
I'll put a Blur ...
the interesting thing of this system is that while you do not change anything up here
Nuke identifies that is the same content by using a "hash system"
(which is an internal system of Nuke)
and it knows when the content is the same
see what happens if I change any parameter in a node above
I'll put a "!" in the text
see that started to throw an error .... because there was a change and Nuke
already identified it....you then have to come here and re-render
the Write the node that with the "read file" attribute on
you can click here and disable this second parameter
to disable error notification ... so it does not show error, but you do not know
if something has changed in the previous nodes
I will render again ....
and now with the content being the same the compositing can continue without error
the "error" can be controlled here in this attribute
we have .... "Error" .... to display the error
I will change the text again "?"
see the error being displayed ..
the error control can be modified: black (black frame)
checkerboard or even read the input ... ie ignore the error and
using the nodes that come on the input, which is one of the most
safe way to use/avoid the errors.
in the Write nodes, we have an attribute called "render order"
that will determine the order in which several Write nodes are rendered
within the same project, when we use the "render all"
This write is writing the ".exr" files
and I loaded the very same files on this Read node
it is exactly the same ...
on the Write2, I'll set the "render order" to 1
the smaller the value, the higher the priority of render .... (1 renders before .... 2 or 3)
and on the Write1 node, I'll set to 3
this node here will read the files from disk and render
and this Write here will render these nodes ..
I'll put a Grade node ... it will change the result and we will see how the render behaves
press F5 shortcut to "Render all"
in the folder ...the Quicktime with the original green background
and the files that were overwritten with the new color information
because the "render order" were different
we can try other results ....
alas .... I will give a "reload" here because the files have changed on disk
it is red now....
I will change the color in the Grade...
to blue
But the files already saved on the disk are red, right?
I'll change the "render order" ... this one to 1
and the other to 2 (Write2)
comes from here... saves the file to disk
since this will happen here later ... it reads the files on the disk and saves in the Quicktime.
lets do it... F5
looking in the folder ....
all files with the same content .. blue
So... you can use this "render order" to control some
aspects of your render, especially when working
with more elaborate compositions... prioritize the render of some nodes
and use these elements in other moments in the compositing
to end the video: some tips for naming files
Here I used the "#" symbol, but you can also use the format:
% padding d "%06d"
in this case, here ... 6 numerical characters on the padding
I'll clean my render folder
and render this node ...
see ... 6 numeric character due to the "%06d"
Another thing you can do:
render a few frames, or a list of frames
for example: "1 3"
I'll clean the folder
there are frames rendered...
We can also render sequences: "1-5 9-11"
let's look at the folder .... 1 to 5 ... 9 to 11
we can also render every n frames, skipping frames
1 to 20, but only every 4 frames, "1-20/4"
1 ... 5 ... 9 ... 13 ... 17
and we can also use expressions to modify the numbering
we have 3 options. Set the start frame (start at)
for example: starts at 100 and goes from there....
lets render to see the results ... 1-10
in the folder .... goes from 100-109
see that the content is correct
We can also use an "offset" (addition / subtraction)
I will add here ... 20
in the folder... numbering began on 21
We can also use expressions. In this case
we need to use the word "frame", which represents the current frame
and put a mathematical formula ... for example, "frame-1"
I'll clean the folder
render ....
see there ... from 0 to 9
I'll put "-10"
see negative values ...
and we can do any mathematical operation ... frame * 2
anyway ... depends on the outcome you want
I hope you enjoyed the video
remember to like and share the videos... the more people watch
the more videos I make!
A hug and see you in the next tutorial!
Training and vfx consulting: http://training.borgo.tv
Do not forget to subscribe to the channel!
@borgotvtraining facebook.com/borgotvtraining
Copyright © 2013 Magno Borgo