UnrealReader
The UnrealReader node connects NukeX or Nuke Indie to an Unreal Editor session. It makes it quick and easy for compositors to work with pixels coming out of Unreal Editor by breaking objects into rendering layers, pulling AOVs, building environment maps, and making tweaks to shot framing.
Inputs and Controls
Connection Type |
Connection Name |
Function |
Input |
Camera |
An optional input to add a render camera so that the Unreal scene is rendered using the input camera's translation and rotation and not the camera inside the Unreal sequence. Note: You can only override translation and rotation from Unreal, the other camera values are unaffected. This is a non-destructive process, the render camera does not overwrite the camera in Unreal Editor. |
Control (UI) |
Knob (Scripting) |
Default Value |
Function |
UnrealReader Tab |
|||
Server |
|||
Host Name |
clientHostName |
127.0.0.1 |
If Unreal Editor is running on a remote machine, enter the IP address of the machine here. If Nuke and Unreal are running on the same machine, the default address is correct. |
Port |
clientPort |
9000 |
If Unreal Editor is running on a remote machine, enter the port the machine is listening on here. If Nuke and Unreal are running on the same machine, the default port is correct. |
Connect to Server |
connectToServer |
N/A |
Click to connect UnrealReader to Unreal Editor using the Host Name and Port values shown. You only need to click this button once to initialize the connection and the button is replaced by Fetch Latest when the connection is established. |
Fetch Latest |
fetchLatestBtn |
N/A |
When the connection to Unreal Editor is established, click Fetch Latest to retrieve the latest updates from the Nuke Server and populate the following fields: • Maps • Sequences • Linked Camera Output • Available Object ID Passes • OCIO settings and Custom Class Render Passes from the Unreal Engine Nuke Server panel |
Server Version |
serverVersion |
none |
Displays the version of Nuke Server you're running under. |
Project |
|||
Project Path |
projectPath |
none |
Displays the file path to the Unreal Editor project you're working with currently. |
Map Filter |
mapFilter |
none |
Refines the available options in the Map dropdown. Searches can contain multiple words separated by the wild card character * (asterisk). For example: shot0*take001*v002 Matches the following string: cinematics/shot001/take0014/v002 |
Check Case |
mapCaseSensitive |
disabled |
When enabled, the Map Filter is case-sensitive. |
Map |
map |
none |
Selects the map to use for rendering in Unreal Editor. |
All Folders |
mapAllFolders |
disabled |
When enabled, all folders are searched for maps, not just the Project folder. When disabled, only the Project folder is searched for maps. |
Sequence Filter |
sequenceFilter |
none |
Refines the available options in the Sequence dropdown. Searches can contain multiple words separated by the wild card character * (asterisk). For example: shot0*take001*v002 Matches the following string: cinematics/shot001/take0014/v002 |
Check Case |
sequenceCaseSensitive |
disabled |
When enabled, the Sequence Filter is case-sensitive. |
Sequence |
sequence |
none |
Selects the sequence to use for rendering in Unreal Editor. |
All Folders |
sequenceAllFolders |
disabled |
When enabled, all folders are searched for sequences, not just the Project folder. When disabled, only the Project folder is searched for sequences. |
Output |
|||
Scene Units |
sceneUnits |
nuke |
Sets the unit of measure for objects in the scene, either Nuke standard or Unreal Editor. |
Render Mode |
renderMode |
full image |
Sets whether the full image or stencil layers are rendered. Setting Render Mode to stencil layers enables the Layers controls in the Render tab in the Properties panel, allowing you to select which layers you want from Unreal Editor. |
Render as Cubemaps |
renderAsCubeMap_T |
disabled |
When enabled, the selected passes are rendered as cube maps producing six renders per pass. Note: Cryptomatte is not currently supported with cube maps. |
Image Format |
imageFormat |
dependent on Project Settings |
Sets the resolution of the script in Nuke. |
Overscan |
overscan |
0 |
Sets the number of pixels to render outside Nuke's bounding box. |
Frame Range |
startFrame |
-1 |
The first frame of the Unreal Editor sequence. |
beforeStartFrame |
hold |
Sets the behavior of frames before the startFrame: • hold - the first frame in the sequence is held until the startFrame frame is reached. • loop - plays a clip loop until the startFrame frame is reached.. • bounce - substitutes a reversed equal number of frames, creating a clip bounce until the startFrame frame is reached. • black - frames are black until the startFrame frame is reached. |
|
endFrame |
-1 |
The last frame of the Unreal Editor sequence. |
|
afterEndFrame |
hold |
Sets the behavior of frames after the endFrame: • hold - the last frame in the sequence is held until the endFrame frame is reached. • loop - plays a clip loop until the endFrame frame is reached.. • bounce - substitutes a reversed equal number of frames, creating a clip bounce until the endFrame frame is reached. • black - frames are black until the endFrame frame is reached. |
|
Write |
|||
File |
file |
none |
Sets the file path to where the rendered files are stored. |
File Type |
fileType |
exr |
Sets the file format to render. Currently only .exr files are supported. |
Data Type |
datatype |
16 bit half |
Sets the bit depth of the rendered .exr files. Currently only 16 bit half bit-depth is supported. |
Compression |
compression |
Zip (1 scanline) |
Sets the compression type to apply to the rendered file: • none • Zip (1 scanline) • Zip (16 scanline) • PIZ wavelet • RLE • B44 • B44A • DWAA • DWAB |
Compression Level |
dwCompressionLevel |
45 |
Sets the quality of images compressed with the DWAA and DWAB compression types. Higher values render smaller files, but with more data loss. Note: This control is only available when Compression is set to DWAA or DWAB. |
Write to Disk |
writeToDiskInUnrealMRQ |
N/A |
Click to send a render job to the Unreal Movie Render Queue. The files are written to disk on the machine running Unreal Editor, which could be local or remote. |
Create Read Node |
createReadNode |
enabled |
When enabled, clicking Write to Disk automatically creates a Read node referencing the output from the Unreal Movie Render Queue. Depending on your machine's specifications and the number of shots Unreal Editor is rendering, the Read node may be in an error state until the files are written to disk. |
Read File |
reading |
disabled |
When enabled, the Read node references the files rendered from write operation, rather than from Unreal Editor. |
Render |
|||
Update Channel List |
updateChannelList |
N/A |
Click to add the selected render passes to the Nuke script. You can view the new channels by selecting them in the Viewer channels dropdown. |
Passes |
|||
[render passes] |
renderPasses |
none |
Select the render passes from the list of passes imported from Unreal Editor. Click the Update Channel List button to add the selected channels to the Nuke script. |
Layers |
|||
Preview Layers |
previewEnabled |
disabled |
When enabled, any stencil layers present in Unreal are displayed in the Viewer. Previewing layers assigns colors to stencils makes picking stencils easier. |
Picker Add |
pickerAdd |
N/A |
Add stencils from Unreal to the Layer List. This uses Nuke's eyedropper color picker. Click the color swatch next to Picker Add and Ctrl/Cmd + Click a stencil in the Viewer to add it to the selection. Selected stencils are displayed in yellow in the Viewer. Multiple selections can be added. Once added, stencil names are added to the Layer List. |
Picker Remove |
pickerRemove |
N/A |
Remove stencils from the Layer List. This uses Nuke's eyedropper color picker. Click the color swatch next to Picker Remove and Ctrl + Click a stencil to remove it from the selection. Once removed, stencil names are also removed from the Layer List. |
Layer List |
matteList |
none |
A list of currently selected layers. This list can be modified in text form or using the Picker Add and Picker Remove controls. The Layer List supports basic wildcard functionality so asterisks (*) can be used to select multiple mattes on one line. Asterisks (*) can be appended to a word to represent any number or character. Note: For more information, see Using the Matte List. |
Clear |
clear |
N/A |
Clears the Layer List. All stencils are deselected. |
Remove Layer Occlusion |
removeLayerOcclusion |
disabled |
When enabled, occlusions are removed from stencil layers. Layers that occlude layers selected in the Layer List are hidden and their reflections removed before rendering the output. When disabled, occlusions are baked into the rendered output. |
Remove Occluding Layer Shadows |
removeOccludingLayerShadows |
disabled |
When Remove Layer Occlusion is active, enabling this control removes shadows cast by hidden occluding layers. When disabled, hidden layers cast shadows as normal.
|
Advanced Tab |
|||
Deferred Rendering |
|||
Accumulator Includes Alpha |
accumulatorIncludesAlpha |
disabled |
When enabled, multiple temporal or spatial sample accumulation includes an alpha channel. To use this control, r.Postprocessing.propagateAlpha must be set to 1 or 2 in Unreal Editor. Note: Enabling this control increases processing time considerably. |
Disable Multisample Effects |
disableMultisampleEffects |
disabled |
When enabled, effects that blend pixels together, such depth of field and temporal anti-aliasing, are enabled. |
Use 32 Bit Post Process Materials |
use32BitPostProcessMaterials |
disabled |
When enabled, post process materials are written to a 32-bit render target instead of 16-bit. |
Cryptomatte |
|||
ID Type |
idType |
full |
Allows you to choose the segmentation type for the Cryptomatte render pass from your Unreal scene. Among the options available for Cryptomatte division are per actor, per folder, and per material. This control on applies to Cryptomatte layers selected in the Render Passes table. |
Anti-aliasing |
|||
Spatial Sample Count |
spatialSampleCount |
1 |
Sets the number of frames used to create one overall sample. Higher values increase anti-aliasing quality at the expense of processing time. |
Temporal Sample Count |
temporalSampleCount |
1 |
Sets the number of frames used to produce each output frame by blending the value of sub-steps specified. Higher values increase anti-aliasing quality at the expense of processing time. |
Anti-aliasing Method |
antiAliasingMethod |
use UE4 setting |
Sets the anti-aliasing method to use: • use UE4 setting - anti-aliasing uses the method selected in Unreal Editor. • none - no anti-aliasing is applied to the output frames. • FXAA • Temporal AA • MXAA |
Render Warm Up Count |
renderWarmUpCount |
0 |
Sets the number of frames rendered and then discarded to set up a temporal history for effects such as anti-aliasing. If you're not using anti-aliasing or other temporal effects, you can use a low number of warm-up frames. |
Use Camera Cut For Warm Up |
useCameraCutForWarmUp |
disabled |
When enabled, the excess frames in the camera cut are use to determine engine warm up. |
Engine Warm Up Count |
engineWarmUpCount |
0 |
Sets the number of frames at the start of each shot that are run through without rendering. Engine warm-up frames can be used to make sure that things such as particle systems have enough time to process before rendering the frames in Nuke. |
Render Warm Up Frames |
renderWarmUpFrames |
disabled |
When enabled, the warm-up frames are processed on the GPU. Generally, Nuke renders and responds better with this control disabled, but some processes, like GPU particle systems, need this enabled to process their warm-up as expected. |
Camera |
|||
Shutter Timing |
shutterTiming |
frame center |
Sets a timing bias on the shutter angle: • frame open - the motion to produce a frame represents the time from when the frame is rendered and onwards. • frame center - the motion to produce a frame represents half the time before the frame and half the time after the frame is rendered. • frame close - the motion to produce a frame comes from before and up to the frame being rendered. |
Color Output |
|||
OCIO Enabled |
OCIOConfigurationIsEnabled |
disabled |
Controls whether or not OCIO color settings from Unreal Engine are enabled. |
OCIO Configuration Source |
OCIO Transform |
None |
A read-only control displaying the OCIO config selected in Unreal Engine. |
Source Color Space |
sourceColorSpace |
none |
When OCIO is enabled and a configuration is selected in Unreal Engine, choose the source and destination color spaces to convert from and to while working with Unreal content in Nuke. |
Destination Color Space |
destinationColorSpace |
none |
|
Disable Tone Curve |
disableToneCurve |
disabled |
When enabled, the Filmic Tone Curve is applied to the output. Disable this control if you want to write out linear .exr files. |
Game Override |
|||
Cinematic Quality |
cinematicQuality |
enabled |
When enabled, the engine is automatically set to the Cinematic Scalability quality for renders. |
Texture Streaming |
textureStreaming |
disable streaming |
Choose whether textures are disabled, loaded over time, or fully loaded up front to avoid blurring after camera cuts. |
Use LOD Zero |
useLODZero |
enabled |
When enabled, use the highest LOD setting for meshes and particles. |
Disable HLODs |
disabledHLODs |
enabled |
When enabled, don't use hierarchical LOD and use the real meshes from Unreal Editor. |
Use High Quality Shadows |
useHighQualityShadows |
enabled |
When enabled, shadow-related CVars (console variables) are replaced by high quality preset values. |
Shadow Distance Scale |
shadowDistanceScale |
10 |
Sets the shadow distance in the scene. Higher values produce better quality shadows, but at the cost of increased processing time. |
Shadow Radius Threshold |
shadowRadiusThreshold |
0.001 |
Sets the threshold at which shadow casters with small screen space bounding sphere values are discarded. |
Override View Distance Scale |
overrideViewDistanceScale |
enabled |
When enabled, the MaxDrawDistance from Unreal is overridden. MaxDrawDistance may have been reduced to improve in-game performance. |
View Distance Scale |
viewDistanceScale |
50 |
When override view distance scale is enabled, scale primitive's MaxDrawDistance by this value. |
High Resolution |
|||
Texture Sharpness Bias |
textureSharpnessBias |
0 |
Causes the engine to use a higher detailed texture if a texture's details were lowered due to screen size. Negative values produce sharper images, up to the resolution of the texture, but may result in noisy images. You can reduce the noise by increasing the Spatial Samples Count. |
Override Subsurface Scattering |
overSubsurfaceScattering |
disabled |
When enabled, more samples are used to improve SSS when no temporal history is available due to the tiling process. |
Burley Sample Count |
burleySampleCount |
64 |
Sets the number of samples used by SSS when override subsurface scattering is enabled. |
Motion blur |
|||
Disable Motion Blur |
disableMotionBlur |
disabled |
When disabled, motion blur is not calculated. |
Camera Tab |
|||
Translate |
camTranslate |
0,0,0 |
Displays translation values from the Unreal Editor camera along the x, y, and z axes. |
Rotate |
camRotate |
0,0,0 |
Displays rotation values from the Unreal Editor camera around the x, y, and z axes. |
Focal Length |
focalLength |
50 |
Displays the focal length from the Unreal Editor camera. |
Aperture x,y |
aperture |
24.58, 18.67 |
Displayed aperture information from the Unreal Editor camera. |
Create Camera |
createCameraBtn |
N/A |
Click to create a corresponding Camera node in Nuke with the same translate, rotate, and camera lens details. The new camera does not affect the camera in Unreal Editor, but it is linked to it through an expression by default. |
Link Output |
linkOutput |
enabled |
When enabled, clicking Create Camera adds a Camera node to the Node Graph with an expression link to the Unreal camera. When disabled, no link is created so the Nuke camera is totally independent from Unreal Editor. |
[BETA] New 3D |
new3D |
disabled |
Sets the 3D system with which the Camera is compatible: When enabled, clicking the Camera button adds a new 3D system camera to the Node Graph. New 3D system nodes are red by default. When disabled, clicking the Camera button adds a classic 3D system camera to the Node Graph. Classic 3D system nodes are green by default. |
Variables Tab |
|||
Verify Commands and Rerender |
update |
N/A |
Click to verify any variables and commands and rerender the sequence. |
[Console Variables] |
consoleVariables |
none |
You can use this table to add console commands. |
Add |
createConsoleVariable |
N/A |
Click to add a console variable key/value pair. Values are cached and restored after rendering. |
Delete Selected |
deleteConsoleVariables |
N/A |
Click to delete the selected console variable(s). |
[Start Console Commands] |
startConsoleCommands |
none |
You can use this table to add commands to run when the shot starts. If you want to restore the command after the shot is started, add a corresponding command in the End Console Commands table. |
Add |
createStartCommand |
N/A |
Click to add a start console command to execute when this shot is started. |
Delete Selected |
deleteStartCommands |
N/A |
Click to delete the selected start console command(s). |
[End Console Commands] |
endConsoleCommands |
none |
You can use this table to restore values in the Start Console Commands table after the shot is finished. |
Add |
createEndCommand |
N/A |
Click to add an end console command to execute when this shot is finished. |
Delete Selected |
deleteEndCommands |
N/A |
Click to delete the selected end console command(s). |