Multi-Sequence Matcher
Version: 1.0.0
Compatibility: Nuke 8 through Nuke 16+ (Python 2 & Python 3) | Windows, macOS, Linux
1. The Problem it Solves
In high-end visual effects, compositors are frequently tasked with working on multiple iterations of a sequence—such as different editorial cuts, multi-cam setups, stereoscopic plates, or shots with varying handles. Often, a large chunk of the frame range is identical across all versions, while the head and tail frames remain completely independent.
Normally, compositors are forced to either duplicate their entire node tree (Roto, Paint, Grade, Keyer) for every single plate, or build highly complex, error-prone Switch node setups. If a client asks for a single roto tweak on a matching frame, the artist has to update it in multiple places.
2. The Solution & Core Architecture
The Multi-Sequence Matcher completely bypasses repetitive setups by utilizing a Linear Pre-Comp / Post-Comp Architecture.
Pre-Comp (The Unified Timeline): The Gizmo ingests up to three different image sequences. It takes the "Matching" frame ranges from all sequences and time-aligns them to a single Master Timeline. For the "Unmatched" frames, the Gizmo uses internal TimeOffset nodes to mathematically push them into extreme, isolated frame ranges (e.g., Input 2 is pushed to +100,000, Input 3 to +200,000). This guarantees that independent frames never physically overlap.
The Comp Tree: Because all overlapping frames are perfectly aligned, the artist only needs to build one single compositing node tree. Roto drawn on frame 1050 applies to all three outputs simultaneously.
Post-Comp (The Render Routers): Once the comp is done, the Gizmo's built-in Python script generates dedicated, native Nuke TimeWarp and TimeClip branch routers. These routers evaluate the unified comp tree and mathematically route the shared and independent frames back to their original sequence numbers for rendering.
3. Key Features
Work Once, Render Many: Apply a Grade or Roto node to a shared frame once, and the Gizmo will automatically distribute that result to the matching frames of all connected inputs.
Independent Frame Preservation: Because unmatched frames are offset by +100k, artists can easily jump to those extreme frame ranges to do independent comp work (like painting out a rig that only appears in the extended handles of Input 2) without affecting the master sequence.
100% Native Render Nodes: The tool generates standard Nuke Write, TimeWarp, and TimeClip nodes for final rendering. This means if the Gizmo is deleted or you send the script to another studio, the render pipe will not break.
Clean Node Graph (No Green Lines): The Gizmo features a "Live-Link" toggle. By leaving it off, the tool uses Value Baking during export. It calculates the complex time math and hard-codes integers into the generated routers, preventing Nuke from drawing messy green expression lines across your node graph.
Robust Python 3 Code: Fully tested for modern Foundry Nuke (13, 14, 15, 16+) strict data-typing limits, while remaining backwards compatible with Python 2.
4. Step-by-Step Workflow
Step A: Setup
Connect your sequence plates to In1 (Master), In2, and In3.
Open the Gizmo properties. Navigate to the mapping tabs (Map: In1, Map: In2, Map: In3).
Manually type in the Original Start/End frame numbers for each plate.
Manually type in the Match Start/End frame numbers (the exact range where the action aligns with the Master plate).
Step B: Compositing
Connect your standard comp nodes (Grade, Roto, Merge) directly below the Gizmo's Output_Unified pipe.
Scrub to the matching frame ranges (e.g., frames 1050-1150) to do shared work.
If you need to do independent work on Input 2's unmatched frames, simply type 100,000 + the frame number into Nuke's timeline and comp there.
Step C: Export & Render
Open the Gizmo properties and go to the first tab.
Click "Export Render Setup".
The Gizmo will automatically spawn 3 neatly organized "Router" branches right below your comp, each terminating in a native Nuke Write node.
Connect the bottom of your Comp Tree to the top of these 3 Routers.
Set your file paths in the Write nodes and hit Render. The routers will seamlessly stitch the shared and independent comp work back into the correct, original frame ranges.
5. UI & Properties Panel Breakdown
Comments