DeepRead
The DeepRead node loads deep images from disk in two formats:
• DTEX (generated from Pixar’s PhotoRealistic RenderMan® Pro Server).
• Scanline OpenEXR 2.3, or above (tiled OpenEXR 2.3, or above, files are not supported).
Note: In order to load DTEX files, you need to have Pixar's RenderMan Pro Server 20, or earlier, installed on your machine. You don't need a RenderMan license, however. See Setting Up RenderMan Pro Server and PrmanRender for more information.
Unlike standard 2D images that contain a single value for each channel of each pixel, deep images contain multiple samples per pixel at varying depths. Each sample contains per-pixel information, such as color, opacity, and camera-relative depth.
See also DeepWrite.
Inputs and Controls
Control (UI) |
Knob (Scripting) |
Default Value |
Function |
DeepRead Tab |
|||
file |
file |
N/A |
The image to be loaded from disk. This file should be in: • DTEX format, generated from RenderMan Pro Server, or • Scanline OpenEXR 2.3 format. For frame numbers, you can use # for each digit or alternatively, use printf-style formatting (%04d). |
Localization Policy |
localizationPolicy |
from auto-localize path |
Sets the local file caching behavior. Copies of the files are stored in a specified local folder for faster access times: • on - the files are cached, regardless of location, as long as the limit to (GB) limit is not breached. • from auto-localize path - the files are cached if they reside in the auto-localize from directory, as long as the limit to (GB) limit is not breached. • on demand - only localize these source clips when you manually update them. See Localizing Files for Better Performance for more information. • off - the files are never cached, regardless of location. |
Update |
updateLocalization |
N/A |
When this DeepRead node is set to Localization Policy > on demand, click Update to manually localize the files from the source files. |
format |
format |
N/A |
Set the format of the image file. This is automatically set based on the file header, but you can manually set it to any of the available formats. If the format does not yet exist, you can select new to create a new format from scratch. |
proxy |
proxy |
N/A |
The location of the proxy image. A proxy image is used if proxy mode is enabled and the required resolution is less than or equal to the file size. |
proxy format |
proxy_format |
root.proxy_format |
The proxy image is read if the format of the lower resolution image is smaller or equal to this. This is automatically set based on the file header but you can manually set it to any of the available formats. If the format does not yet exist, you can select new to create a new format from scratch. |
frame range |
first |
N/A |
Sets the first frame in the range of frames to use for the image sequence. |
before |
hold |
Sets how the sequence displays before the first frame you’ve defined. • hold - select to show a still picture of the first frame in the frame range. • loop - select to start over and keep looping the span of the frame range before the first frame in the frame range. • bounce - select to play the span of the frame range backwards and forwards between the frame range limits. • black - select to display a black frame before the first frame. |
|
last |
N/A |
Sets the last frame in the range of frames to use for the image sequence. |
|
after |
hold |
Sets how the sequence displays after the last frame you’ve defined. • hold - select to show a still picture of the last frame in the frame range. • loop - select to start over and keep looping the span of the frame range after the last frame in the frame range. • bounce - select to play the span of the frame range backwards and forwards between the frame range limits. • black - select to display a black frame after the last frame. |
|
frame |
frame_mode |
expression |
By default, Nuke assumes an exact relation between the current frame processed and the frame read in. For example, at frame 15, Nuke reads in image.0015.exr. However, you can change this behavior using this control. For instance, if you have a sequence that runs from image.0500.exr to image.1000.exr, you may want to read in image.0500.exr at frame 1. You can do so in several ways: • expression - enter an expression in the field on the right. For example, if your clip begins from image.0500.exr and you want to place this first frame at frame 1 rather than frame 500, you can use the expression frame+499. • start at - enter a start frame number in the field on the right. For example, if your sequence begins from image.0500.exr and you enter 1 in the field, image0500.exr is read in at frame 1. Similarly, if you enter 100 in the field, image0500.exr is read in at frame 100. • offset - enter a constant offset in the field on the right. This constant value is added to the current frame to get the number of the frame that’s read in. For example, if your clip begins from image.0500.exr and you want to place this first frame at frame 1 rather than frame 500, you can use 499 as the constant offset. |
frame |
N/A |
The expression, start frame, or offset you want to use to alter the relation between the current frame processed and the frame read in. |
|
original range |
origFirst |
N/A |
Set the first frame in the frame range you want to use from the input clip. For example, if you set the original range to be from frame 40 to 50, then the DeepRead node indicator in the Dope Sheet only shows that clip as ten frames long. This is for visual reference, rather than a change in what is read in, and it may make it easier to work with many DeepRead nodes in the Dope Sheet. |
origLast |
N/A |
Set the last frame in the frame range you want to use from the input clip. For example, if you set the original range to be from frame 40 to 50, then the DeepRead node indicator in the Dope Sheet only shows that clip as ten frames long. This is for visual reference, rather than a change in what is read in, and it may make it easier to work with many DeepRead nodes in the Dope Sheet. |
|
missing frames |
on_error |
error |
Sets what to do if there is an error opening the file: • error - display an error on the node and in the Viewer at any missing frames. • black - set any missing frames to black. • checkerboard - replace any missing frames with a checkerboard image. • nearest frame - replace any missing frames with their nearest frame. |
reload |
reload |
N/A |
Reload the deep image from the disk. |
dtex Options (These controls are only exposed when loading a .dtex file.) |
|||
type |
type |
auto |
Sets how to determine the type of .dtex file: • auto - Nuke automatically detects the file type by looking at the subimage name. If the name is either Deep Shadow or ends with (or is) .deepopacity, Nuke treats the file as a deep opacity file. • deepopacity - forces Nuke to treat the file as an accumulated deep opacity file, corresponding to a RenderMan Display Driver configuration of: Display "Filename.dtex" "deepshad" "deepopacity" • alpha - forces Nuke to treat the file as the newer point-sampled alpha or color, corresponding to a RenderMan Display Driver configuration of either: Display "Filename.dtex" "deepshad" "a" or Display "Filename.dtex" "deepshad" "rgba" |
discrete |
discrete |
disabled |
When enabled, Nuke treats the .dtex file as discrete samples, with the front and back being the same. This control is only relevant for deep opacity files, as color deep compositing files are always discrete. |
premultiply |
premult |
disabled |
When enabled, Nuke premultiplies the values from the .dtex file. When disabled, Nuke assumes the values have already been premultiplied. |
raw values |
raw |
disabled |
When enabled, deep samples are read "as is", without any processing. |
exr Options (These controls are only exposed when loading a .exr file.) |
|||
do not attach prefix |
noprefix |
disabled |
When enabled, metadata keys are read as they are, without attaching a prefix to them. When disabled, the prefix exr is attached to metadata keys to make them distinct from other metadata in the tree. |