Production Management

About

File Naming Convention

icon
MyCGDoc Production Protocol

DNS: Denoised

UND: Undistorted

Workspace & Preferences

Workspace & Preferences Location:

C:\Users\<USERNAME>\.nuke

Windows

Scopes

  • Histogram
  • Waveform
  • Vectorscope

Preferences

Performance

Caching

Timeline Disk Caching

[getenv NUKE_TEMP_DIR]/TimelineCache

Comp Disk Caching

[getenv NUKE_TEMP_DIR]

Comp Disk Cache Size: 100 GB

Undo Caching

Undo History Size: 250 MB

Maximum Undo Events: 25

Behaviors

Nodes

New Merge nodes connect A input: Disable

Autokey roto shapes: Enable

Startup

Startup workspace: HansMain

Show splash screen at startup: Disable

Panels

Control Panels

Reopen acts like new panel: Enable

Expand/collapse panels in Properties bin to match selection: Enable

Node Graph

Postage stamp mode: Static frame

Arrow Up: Color Red

Used to stand out re-directions in script streams.

Size of dots: 1.5

Script Editor

Clear input window on successful script execution: Disable

Viewer (Comp)

GL buffer depth: half-float (Defaults to byte)

byte is an 8-bit process, so with 10-bit monitor, not fully used, hence, need to use half-float or float.

Use GPU for viewer when possible: Enable

Use GPU for inputs when possible: Enable

Viewer Handles

3D control type: Maya

Project Settings

Root

Lock Range

Enable to prevent new import data nodes from overwriting specified project frame range.

Variables

Environment Variables

VariableLocation
NUKE_TEMP_DIR
C:\Users\username\AppData\Local\Temp\nuke
NUKE_PATH
D:\Path\To\Custom\Dir

Node Class Names

Note that references to nodes should be confirmed with its class name, and not necessarily the node name in the UI. In the following example, the Tracker1 node has a class of Tracker4, while an older version of the Tracker node labeled Tracker2 has a class name of Tracker3. The number notes the different versions of the same node as they are updated.

Older nodes can be accessed and created with the X key and typing in the name of the class.

Information for the nodes is accessed and displayed with the I key.

image

Sources

Nuke Directory Locations

Notes - Process Management

B Pipe Structure

Logic

  • B inputs parallel the script stream.
  • A inputs branch from left.
  • Masks branch from right.

Benefits

  • Naturally preserves metadata
    • Branch streams can retain metadata with Merge from parent tree spine and linking metadata from A (parent tree spine) to B (new branch).
  • Quick disable of nodes to visualize updates.
  • Visual clarity.

Script Management

Planning

  • Include script description and outline in comment within script. (Similar to G sheets)
  • Outline
    • Define goals.
    • Best workflows.
    • Anticipate potential issues, revisions, and challenges.

Deconstruct v. Consolidate

Deconstruct processes into nodes rather than consolidate processes into solitary nodes to visualize branches, relationships, and factors. A consolidated Roto may hold many processes within it, but a Roto branching from an operation (i.e. Merge) node can isolate separate sub-processes for clarity.

Modularisation

  • Compartmentalize processes with sub-processes that isolate single tasks.
  • Branch compartments so that they can be enabled/disabled from parent tree spine without major disruption.
  • Note compartments that can achieve repetitive, common tasks for modular use in script or other scripts.
  • Use color-coded backdrops with labels and descriptions.

Additional Key Considerations & Notes

Node Indicators

  • A: Animated
  • C: Clones
  • E: Indicator
  • X: Mix value for node is somewhere between 0 and 1, but not an integer.
  • Channels
    • Utilized
    • Pass Through

Format Preservation

  • Reformat downstream, but balance load optimization if possible.
  • Preserve original format to allow for edits and potential revisions.
  • Reformat at joint between branch and main tree spine.

Bounding Box Management

  • Goal is optimizing performance and efficient workflow.
  • Manage bbox at individual node level by removing extraneous pixels.
  • Strategies
    • With Merge node, set foreground assets to A input and specify set bbox to to replace default union, which assumes the bbox of only the relevant data based on A and B inputs.
    • Add crop nodes at key points in stream.
    • Utilize autocrop() Python function.
      1. Select node to be cropped.
      2. Key X for command line.
      3. Enter nukescripts.autocrop() and set to Python.
      4. Allow script to process crop and to create an AutoCrop node.

Workflow Optimization

  • Profile node & panel
    • Analyses data usage per node to track performance bottlenecks.
  • Read with Postage Stamp node
    • Connect a Postage Stamp node to a Read node and enable hide input.
    • This allows the Postage Stamp to be reused through script and still reference the original Read node data without importing the data in separate Read node.
  • Utilize toolsets for adding preset nodes/blocks to scripts.

Channel Packing

  • Investigate incoming data for opportunities to pack channels for optimization.
  • Key opportunities:
    • B/W images using all RGB channels
    • Duplicate data
  • Use Layer Contact Sheet to view layers in incoming data.
  • Use Shuffle and Copy nodes to reroute channels for packing.
  • Use Remove nodes to remove extraneous channels and layers.
  • Only work with the channels you need.

Filtering

  • Noted when software manipulates pixels in about every node operation and leads to data loss.
  • Inevitable part of workflow, but minimize data loss as much as possible to retain original data value.

Concatenation

Camera Reference

  • If camera data is unavailable, check metadata of incoming data.

Notes - Asset Management

Incoming Data

Define project global frame range and format size.

Format Incoming Movie Files

  • Read: Identify frame range needed.
  • Reformat: If applicable, reformat to project format size.
  • Write: Output movie file to .exr image sequence, which can then be read back into Nuke.

Graphics

Use TIFF image file format.

Troubleshooting & Resolutions

Viewer doesn't refresh.

This issue might be sourced from either the recent use of a Roto or RotoPaint. A good first step would be to clear all caches and restart Nuke, which has been a suitable solution in a few instances.