Nuke Compositing
Module 1: Introduction to Nuke
Overview of Nuke:
o What is Nuke and its role in visual effects (VFX) and post-production?
o Node-based compositing vs. layer-based compositing. Advantages of a node-
based system (flexibility, non-destructive workflow, clear visual representation).
o Nuke's interface: Viewers, Node Graph, Properties Panel, Toolbars, Dope Sheet,
Curve Editor.
o Customizing the interface and workspaces.
o Setting up projects and preferences.
o Importing and exporting footage, image sequences, and 3D data (supported
formats).
o Basic playback controls and navigation.
Core Concepts:
o Non-destructive workflow: Understanding how nodes operate without altering
the original source data.
o Channels: Understanding RGB, Alpha, and auxiliary channels (e.g., Depth,
Normals, Motion Vectors).
o Image formats and their implications (bit depth, compression).
o Coordinate systems in Nuke (pixel space, UV space, world space).
o Color management basics within Nuke (OCIO overview, LUTs).
o Understanding resolution, aspect ratio, and pixel aspect ratio.
Basic Workflow:
o Loading footage and image sequences using the Read node.
o Viewing images using the Viewer node.
o Basic image manipulation using Transform, ColorCorrect, and Grade nodes.
o Creating simple composites using the Merge node (Over, Under, Plus
You stopped this response
complete course Notes-Composting in Nuke with explanation
Okay, let's break down those Nuke compositing course notes further with detailed explanations
for each section.
Nuke Compositing Full Course Outline with Explanations
Module 1: Introduction to Nuke
Overview of Nuke:
o What is Nuke and its role in visual effects (VFX) and post-production? Nuke is a
powerful, industry-standard software application used for combining visual
elements from different sources (live-action footage, CGI, graphics) into a
cohesive final image or sequence. It's the backbone of many VFX pipelines,
allowing artists to seamlessly integrate various layers and apply sophisticated
effects.
o Node-based compositing vs. layer-based compositing. Advantages of a node-
based system (flexibility, non-destructive workflow, clear visual
representation).
Layer-based (e.g., Adobe Photoshop, After Effects): Elements are stacked
on top of each other in layers, with effects applied to individual layers.
This can become complex to manage with many layers and dependencies.
Node-based (Nuke): Operations are represented by interconnected
"nodes" in a visual flowchart (the Node Graph). Data flows from left to
right through these nodes.
Advantages of Node-Based:
Flexibility: Easy to insert, rearrange, and modify operations at any
point in the workflow without affecting earlier steps.
Non-Destructive Workflow: Original source footage remains
unchanged. All modifications are applied through nodes, allowing
for easy iteration and undoing changes.
Clear Visual Representation: The Node Graph provides a direct
and intuitive overview of the entire compositing process, making
it easier to understand and troubleshoot complex setups.
o Nuke's interface: Viewers, Node Graph, Properties Panel, Toolbars, Dope Sheet,
Curve Editor.
Viewers: Display the output of selected nodes, allowing you to see the
results of your work at different stages. You can have multiple viewers to
compare different versions or parts of your script.
Node Graph: The central workspace where you create and connect nodes
to build your compositing pipeline.
Properties Panel: Displays the adjustable parameters and settings of the
currently selected node. This is where you control how each operation
functions.
Toolbars: Provide quick access to commonly used tools and commands.
Dope Sheet: A timeline-based view that shows the keyframes you've set
for animated parameters across different nodes. It's useful for adjusting
the timing of animations.
Curve Editor: A graphical interface for fine-tuning the interpolation (the
way values change between keyframes) of animated parameters, allowing
for precise control over the speed and smoothness of motion.
o Customizing the interface and workspaces. Nuke allows you to rearrange panels,
create custom layouts, and save workspaces tailored to specific tasks or personal
preferences. This improves efficiency.
o Setting up projects and preferences. Configuring project settings (resolution,
frame rate, color management) and user preferences (autosave, UI appearance)
ensures consistency and a comfortable working environment.
o Importing and exporting footage, image sequences, and 3D data (supported
formats). Nuke supports a wide range of industry-standard formats (e.g., EXR,
DPX, TIFF, QuickTime, Alembic, FBX). Understanding format-specific options (e.g.,
reading specific channels from an EXR) is important.
o Basic playback controls and navigation. Familiarizing yourself with play, pause,
step forward/backward, looping, and navigating through the timeline is essential
for reviewing your work.
Core Concepts:
o Non-destructive workflow: As explained above, this is a fundamental principle of
Nuke.
o Channels: Individual streams of data within an image.
RGB (Red, Green, Blue): The color information of the image.
Alpha: The transparency information (0 = fully transparent, 1 = fully
opaque).
Auxiliary Channels: Additional data layers like Depth (distance from the
camera), Normals (surface orientation), Motion Vectors (per-pixel
motion), which are often generated by 3D rendering or specialized tools
and are crucial for advanced effects.
o Image formats and their implications (bit depth, compression).
Bit Depth: The number of bits used to represent the color or data value of
each pixel. Higher bit depth (e.g., 16-bit, 32-bit float) allows for more
subtle gradations and preserves more information during manipulation,
reducing banding and clipping.
Compression: Methods used to reduce file size. Lossless compression
retains all original data, while lossy compression discards some
information. Nuke often works with uncompressed or lossless formats
(e.g., EXR) during the compositing process.
o Coordinate systems in Nuke (pixel space, UV space, world space).
Pixel Space: The 2D coordinates of pixels within an image.
UV Space: A 2D coordinate system that maps a 2D texture onto a 3D
surface.
World Space: The 3D coordinate system of the virtual scene.
Understanding these spaces is important when working with textures, 3D
projections, and camera tracking.
o Color management basics within Nuke (OCIO overview, LUTs).
OpenColorIO (OCIO): An open-source framework for consistent color
management across different software and devices in a VFX pipeline. It
ensures that colors look the same throughout the process.
LUTs (Lookup Tables): Files that contain a mapping of input color values
to output color values. They are used for color grading, display
calibration, and format conversions.
o Understanding resolution, aspect ratio, and pixel aspect ratio.
Resolution: The dimensions of the image (width x height in pixels).
Aspect Ratio: The ratio of the width to the height of the image (e.g.,
16:9).
Pixel Aspect Ratio (PAR): The shape of individual pixels. Most modern
digital formats have square pixels (PAR 1.0), but some older or broadcast
formats have non-square pixels, which need to be accounted for to avoid
image distortion.
Basic Workflow:
o Loading footage and image sequences using the Read node. The Read node is
the starting point for bringing media into your Nuke script. You specify the file
path and Nuke reads the image data.
o Viewing images using the Viewer node. The Viewer node displays the output of
any connected node. You can have multiple viewers to compare different stages
of your composite. Pressing 1 or 2 while a node is selected connects it to Viewer
1 or 2, respectively.
o Basic image manipulation using Transform, ColorCorrect, and Grade nodes.
Transform: Used for adjusting the position, scale, rotation, and skew of an
image.
ColorCorrect: Provides controls for adjusting brightness, contrast,
gamma, saturation, and gain.
Grade: Offers more film-style color grading controls like lift, gain, gamma,
and white/black point adjustments.
o Creating simple composites using the Merge node (Over, Under, Plus, Screen,
etc.). The Merge node combines two or more image streams. The operation
parameter determines how they are blended (e.g., Over places the B input over
the A input, Under places B under A, Plus adds the pixel values, Screen brightens
the image by inverting and multiplying).
o Adding text using the Text node. The Text node generates text that can be
positioned, styled, and animated.
o Rendering and exporting a simple composite using the Write node. The Write
node is the final step, specifying the output file format, codec, file path, and
other rendering settings.
Module 2: Node Graph Fundamentals
Working with Nodes:
o Creating, connecting, and disconnecting nodes. Nodes are created by pressing
Tab and searching for the node name or by using the Node toolbar. They are
connected by dragging the output handle of one node to the input handle of
another. Disconnecting is done by dragging the connection away.
o Navigating the Node Graph (zooming, panning, bookmarks). Use the mouse
wheel to zoom, hold the middle mouse button to pan. You can create bookmarks
(Ctrl + B) to quickly jump to specific areas of a complex script.
o Organizing nodes (grouping, labeling, coloring).
Grouping: Select nodes and press Ctrl + G to create a Group node, which
encapsulates the selected nodes into a single, manageable unit. You can
then double-click to enter and edit the group.
Labeling: Double-click on a node to open its properties and change its
label for better identification.
Coloring: Right-click on a node and select Set color to visually categorize
nodes.
o Using the Tab menu for quick node creation. Pressing Tab anywhere in the Node
Graph opens a search bar where you can quickly find and create any node by
typing its name or a related keyword.
o Understanding node inputs and outputs. Most nodes have one or more input
handles (usually on the left) where data enters and one or more output handles
(usually on the right) where the processed data exits. Some nodes have specific
labeled inputs (e.g., A, B, mask).
o Using the Backdrop node for visual organization. The Backdrop node creates a
colored rectangle with a title that can be placed behind a group of nodes to
visually separate and describe different sections of the script.
o Disabling and bypassing nodes.
Disabling: Select a node and press D. A disabled node turns gray and its
operation is ignored in the processing chain.
Bypassing: Select a node and press B. A bypassed node appears with a
dashed connection, and the data flows directly from its input to its
output, effectively skipping its operation.
Parameters and Properties Panel:
o Understanding common node parameters. Each node has specific parameters
that control its behavior. These are displayed in the Properties Panel when the
node is selected. Understanding the function of common parameters (e.g.,
translate, rotate in Transform; gain, gamma in Grade) is crucial.
o Animating parameters using keyframes. To animate a parameter, go to the
desired frame, change the parameter value, and press S over the parameter
name (or right-click and select Set key). Nuke will create a keyframe at that
frame.
o Working with the Dope Sheet for keyframe manipulation. The Dope Sheet
provides a timeline view of all keyframes in your script. You can select, move, and
delete keyframes to adjust the timing of animations.
o Using the Curve Editor for fine-tuning animation curves (interpolation types:
linear, bezier, smooth). The Curve Editor displays the animation curves for
selected parameters. You can adjust the shape of these curves to control the
speed and ease of the animation.
Linear: Values change at a constant rate between keyframes.
Bezier: Allows you to control the shape of the curve using tangent
handles, providing precise control over acceleration and deceleration.
Smooth (Spline): Creates smooth, natural-looking curves based on the
surrounding keyframes.
o Expressions: Linking parameters between nodes using simple code. You can
write simple Python expressions in parameter fields to dynamically link the
values of different parameters. For example, you could make the scale of one
object dependent on the position of another. Right-click on a parameter and
select Add expression.
o Using the Link knob for direct parameter linking. You can drag the Link icon (a
small chain) from one parameter to another to create a direct link. Changes to
the source parameter will automatically update the linked parameter.
Data Flow and Processing Order:
o Understanding how data flows through the Node Graph (left to right). Nuke
processes data sequentially from the leftmost nodes (sources) to the rightmost
nodes (outputs). The order in which nodes are connected determines the order
of operations.
o The impact of processing order on the final result. Changing the order of nodes
can significantly alter the outcome of your composite. For example, applying a
color correction before or after a merge operation will yield different results.
o Using the NoOp node for comments and control points. The NoOp (No
Operation) node does nothing to the image data but can be used to add text
labels (for comments) or as a central point to attach multiple links for controlling
several parameters simultaneously.
Module 3: Basic Compositing Techniques
Merge Operations in Detail:
o Exploring different merge operations and their uses (Over, Under, Plus, Screen,
Multiply, Difference, etc.). Each merge operation has a specific mathematical
formula for combining the pixel values of the input images. Understanding these
operations is crucial for creating various blending effects.
Over: Composites the B input over the A input based on the alpha
channel of B.
Under: Composites the B input under the A input based on the alpha
channel of A.
Plus (Add): Adds the pixel values of A and B together, often resulting in
brighter areas.
Screen: Inverts the pixel values, multiplies them, and then inverts the
result again, creating a brightening effect often used for glows and
highlights.
Multiply: Multiplies the pixel values of A and B, resulting in darker areas.
Useful for shadows and darkening.
Difference: Subtracts the pixel values of the smaller input from the larger
one, highlighting the differences between the images.
Many other operations exist, each with specific applications.
o Understanding the "bbox" (bounding box) and its impact on merge operations.
The bounding box defines the active area of an image. By default, the output
bounding box of a Merge node encompasses the combined bounding boxes of its
inputs. You can adjust the operation parameter to control how the bounding box
is handled, which can affect performance and the extent of the composited area.
o Using the Mask input of the Merge node. The mask input (usually a white-on-
black image) controls where the merge operation is applied. White areas of the
mask allow the operation to occur, while black areas prevent it.
o Applying transformations to inputs within a Merge node. You can apply
transformations (position, scale, rotation) directly to the A or B inputs within the
Merge node's properties, allowing you to adjust their relative placement during
the composite.
Alpha Channels and Mattes:
o Understanding the role of the alpha channel in compositing transparency. The
alpha channel determines the opacity of each pixel. A fully white alpha (value of
1) means the pixel is fully opaque, a fully black alpha (value of 0) means it's fully
transparent, and grayscale values represent partial transparency.
o Creating and manipulating alpha channels using nodes like Constant, Roto, and
Keyer.
Constant: Creates a solid color image with a uniform alpha value.
Roto: Generates an alpha matte based on the shapes you draw. The
inside of the shape is typically white (opaque), and the outside is black
(transparent).
Keyer (e.g., Primatte, Keyer): Creates an alpha matte based on color or
luminance values in the input image (used for extracting subjects from
backgrounds).
o Using the CopyChannels node to transfer alpha information. The CopyChannels
node allows you to copy the alpha channel from one image to another or to copy
any other channel between images.
o Premultiplication and Unpremultiplication: Understanding their importance
and when to use the Premult and Unpremult nodes.
Premultiplication: The color values of a pixel are multiplied by its alpha
value. This is the standard way many compositing operations work and
helps prevent color fringing (halos) around the edges of transparent
objects.
Unpremultiplication: Reverses the premultiplication process, dividing the
color values by the alpha.
When to Use: Footage with separate alpha channels is often
"unpremultiplied." You typically need to Premult it before merging it over
other elements to avoid artifacts. If you perform operations that might
affect the alpha and color independently, you might need to Unpremult
before the operation and then Premult again afterward to maintain
correct blending.
Color Correction Fundamentals:
o Using the ColorCorrect node for basic tonal adjustments (brightness, contrast,
gamma, saturation).
Brightness: Overall lightness or darkness of the image.
Contrast: The difference between the lightest and darkest areas.
Gamma: Controls the midtones of the image without significantly
affecting the highlights and shadows.
Saturation: The intensity of the colors.
o The Grade node for lift, gain, gamma, and white point adjustments. More film-
centric controls.
Lift (Black Point): Adjusts the darkest areas of the image.
Gain (White Point): Adjusts the brightest areas of the image.
Gamma (Midtones): Similar to the Gamma control in ColorCorrect.
White Point: Allows you to adjust the overall color balance by selecting a
pixel that should be white.
o HueCorrect node for selective color adjustments. Allows you to modify specific
hue ranges (e.g., change all yellows to green).
o Using scopes (Histogram, Waveform, Vectorscope) for accurate color analysis.
These tools provide visual representations of the color and tonal information in
your image, helping you make objective color correction decisions.
Histogram: Shows the distribution of pixel brightness values.
Waveform: Displays the luminance (brightness) levels across the image.
Vectorscope: Shows the color information (hue and saturation).
Transformations:
o **Using the Transform node for position, scale, rotation,