Skip to content

All nodes

142 nodes, grouped by family. Signatures and defaults are generated from the application.

I/O

Comp

Color

Add

Adds a value to every pixel. Lifts blacks; a building block.

Associate

Multiplies RGB by alpha. Do it after Copy'ing a matte in, before an over.

ChannelRoute

The channel patch bay: route any layer's channels — from either input — into any output layer. Constants 0/1 fill; typing a new output layer declares it. Wiring, not math.

Clamp

Limits values to a range — kill negative pixels or super-whites before an op that can't handle them.

ColorCorrect

Colour correction in zones: master, shadows, midtones and highlights each get their own saturation/contrast/gamma/gain/offset — grade the tones separately.

ColorCurves

Per-channel curves — click to add points, shape the response exactly. The surgical grade.

ColorGrade

Lift / gamma / gain grading in the classic three-way style — shadows, mids, highlights as colour wheels.

ColorSpace

Converts between colorspaces mid-graph. Use sparingly: the graph should stay scene-linear; this is for special pipelines.

CurveLUT

A lookup curve applied per channel — remap input values to output values point by point.

Exposure

Exposure in stops — one knob, photographic. +1 doubles the light.

FileLUT

Applies a LUT file from disk (.cube, .spi) — a camera LUT or a show look.

Gamma

A gamma (power curve) adjustment. Brightens or darkens midtones without moving black or white.

Grade

The workhorse colour tool: blackpoint/whitepoint set what maps to black and white, then lift/gain/multiply/offset/gamma shape the result. Whitepoint-sample the plate's white, then balance.

HueCorrect

Per-hue correction curves — desaturate just the greens, darken just the blues. The spill-and-sky tool.

HueShift

Rotates hue around the colour wheel. Shift a costume, tune a sky.

Invert

Inverts the image (1 − value). Mattes flip; colour goes negative.

Multiply

Multiplies every pixel. Scales brightness; on a matte, scales opacity.

Saturation

Scales colour saturation. 0 is grayscale, 1 unchanged.

SoftClip

Highlight rolloff: values above the threshold compress smoothly toward max instead of clipping hard — speculars keep gradation, nothing exceeds the ceiling.

Unassociate

Divides RGB by alpha — undo premultiplication before grading, re-Premult after.

Filter

Keying

Transform

AdjustBBox

Grow or shrink the data window by whole pixels without touching content — bbox hygiene for filters that read past the frame and merges that shouldn't.

CameraTracker

Solves the 3D camera from the footage (matchmove): auto-tracks hundreds of points, reconstructs the camera path + point cloud + lens, and bakes them as keyed animation. Detects nodal pans and planar scenes automatically.

Crop

Cuts the image to a box and (optionally) reformats to it.

FourCorner

Maps the image onto four corners — screens, signs, posters. Track the corners, pin the insert.

GridWarp

A lattice of control points you drag in the viewer; the image follows as a smooth Catmull-Rom patch. Corners pinned, mix fades the warp - beauty warps, plate squeeze, quick cosmetic fixes.

LensDistort

Applies or removes lens distortion. Undistort, comp straight, redistort — the matchmove round trip.

Mirror

Flips the image horizontally or vertically.

PinWarp

Pairs of pins: drag a dot and the image follows it, smooth in between (moving least squares). Ctrl+click adds a pin, Alt+click removes; the ring is what moves, the dot is where it goes. Anchor pins hold regions still.

QuadTracker

Tracks four points as a plane — feeds CornerPin for screens and signs.

Resize

Changes resolution: to the project format, a named format, or by scale. This is resizing; Transform is placement.

SplineWarp

Correspondence splines: draw a curve on a feature and the curve where that feature should end up, and every pixel between follows. Ctrl+click adds a point to the current spline (Ctrl+Shift starts a new one), Alt+click removes one; the ring line is the source, the solid line is the destination. `pin_border` holds the frame edge still so one curve cannot drag the whole plate after it. Under the hood these are the same moving-least-squares controls PinWarp uses, sampled along both curves at matching arc length — so a stretched curve still matches its partner.

Tracker

Tracks 2D points through the shot: place a pattern box, track, then drive a Transform or stabilise. Adaptive tracking with a confidence readout.

Transform

Move, rotate, scale and skew the image around a centre. Concatenates with neighbouring transforms so filtering happens once.

Masks

Crucible

The matte engine: comp-grade mattes with true float alpha, for hair, motion blur and soft edges. Arm ✛, click the subject in the viewer (Alt+click to push a wrong region back out), then 🜛 Analyze — it identifies at every frame you clicked, propagates across the range, mattes the edge, and takes the old background's colour out of it. The matte lands in alpha and on its own crucible channels; RGB is untouched. It will not guess: with no clicks it does nothing and says so. ⟲ To Roto turns the result into an ordinary Roto node when you want to take over by hand.

CrucibleRefine

Matte finishing for ANY alpha — a keyer's, a roto's, an imported matte, or one Crucible made. Clean the haze out of black and white, feather or sharpen, tighten contrast, shift the edge, grow or erode just the solid core. Shift Edge is the one to know: it translates the soft profile along its own gradient instead of eroding, so nudging a feathered edge keeps the falloff you spent time on. Every knob is a no-op at its default.

Paint

Brush strokes over the image: paint stamps color, clone stamps pixels from a Ctrl+clicked source point - wire removal, print cleanup, quick fixes. Strokes commit on release, one undo each.

Radial

A radial (circular) gradient. Quick vignettes and soft circular mattes.

Rectangle

A rectangle shape generator with softness — a quick garbage matte or slate panel.

Roto

Draws animated shapes for mattes: bezier and B-spline, per-point feather, per-shape lifetime and transform. The paint-by-hand matte.

Blacksmith

BS_ChromaBlur

Blurs colour and leaves luminance alone. The eye resolves luma far more finely than chroma, so sensor colour noise, compression blocks and blue-screen mottling all die here at no visible cost to sharpness.

BS_DayToNight

Day-for-night that reads as night, not as a dark blue day. Moves the white point toward moonlight instead of tinting, simulates the Purkinje shift (rods desaturate warm hues faster than cool ones as light falls), and protects practical lights from the exposure drop so lamps stay on and warm. Every analysis matte is viewable from the view dropdown — it is never a black box.

BS_Disintegrate

Mask-driven disintegration, automatic and modular: wire the plate and a subject alpha, set start + duration (or key `progress`), pick the front (directional / edge-in / core-out / blotch / spread) — the body erodes behind an organic front, chunks tear off and tumble, dust drifts away in the body's own colours, a hot rim glows, and the background is revealed (a wired bg, else an inpaint estimate). Every stage is its own output layer for grading.

BS_EdgeBreakup

The "CG is too perfect" fixer: procedural texture breakup on surfaces and along mattes. Unlike a plain noise×matte (which fades the noise out exactly at the edge), the invert→merge-from→clamp structure keeps edge detail defined. Wire a position pass and switch to world space and the breakup sticks to the surface as the object moves — tracking for free.

BS_EdgeExtend

Pushes edge colour outward smoothly — as far as you like, up to filling the whole frame. Blacksmith's answer to the dilate-based extends that streak and die after a few dozen pixels. Use before a defocus (so it drags colour, not black), to fill depth-pass holes, or to extend despilled edge colour. Alpha is never touched.

BS_ExpoGlow

Bloom that behaves like a lens: many octaves of scatter summed with an exponential falloff — tight core, wide halo, wider veil — instead of one gaussian. The bright-pass stays scene-linear so an HDR highlight glows in proportion to how bright it really is, and the result is added rather than screened, because light sums.

BS_FireflyKill

Removes path-tracer fireflies — single pixels that won the sampling lottery and landed orders of magnitude too bright. Statistical, not a blur: a pixel is replaced only when it is wildly brighter than the median of its neighbours, and the fix keeps its hue so you don't get a grey dot.

BS_HeatHaze

Animated refraction shimmer — heat off tarmac, exhaust, underwater. It displaces rather than blurs, so the image stays sharp and simply arrives from slightly the wrong place. rise biases the motion upward, which is what makes it read as heat instead of water; evolution animates it so it crawls rather than boils.

BS_HueQualifier

Pulls a matte by colour the way a colourist does: three soft windows — hue, saturation and luminance — multiplied together, so a colour qualifies only if it satisfies all three. The selection is drawn ON the spectrum bars, so you see what you're taking. Drag to move the centre, Shift+drag for width, Alt+drag for falloff.

BS_MasterColor

The whole colour page in one node: balance, tonal wheels, contrast about a pivot, mixer, saturation and hue, six vector zones, curves and a qualifier — in a fixed order, because the order is the craft. One node because a grade is one thought.

BS_MotionMatte

Forges mattes of everything moving independently of the camera — the CameraTracker's subject detector as a standalone node. ⚒ Analyze tracks the shot, finds the movers, and refines dense-flow silhouettes; the result flows downstream as matte / matteId channels for garbage mattes, holdouts, and per-subject grades.

BS_RoughenEdges

Breaks a matte's edge into an organic contour with fractal noise — torn, corroded or wind-wobbled instead of drawn. erode eats bites out of the edge; distort wobbles it without losing area. evolution animates it so it crawls rather than flickers, and the core stays solid.

BS_VectorBake

Analyses the plate once: dense vectors at frame distances 1..64, forward and back, each with a baked CONFIDENCE plane (Nuke bakes none), written to EXR beside the project. Wire an optional matte to exclude a subject. Then warp anywhere with BS_VectorWarp.

BS_VectorWarp

SmartVector-class propagation: pick a reference frame, paint on it, and this carries the patch to every frame through the bake — routing on confidence around bad flow, composing ONE map, filtering once. Wire a matte and the route is judged over THAT region only. Outputs warped / stmap / confidence / error (the round-trip heatmap: green comes home, red slips, blue left frame — read it BEFORE painting to pick the reference frame). Occluded pixels hold and fade instead of smearing; `untrackable` marks spans the solver must hop over rather than walk through; `edge` says whether a route leaving the plate fades (default) or drags the border in. List several frames in `references` and each pixel takes whichever route was most confident — the keymix rig Foundry's own docs tell you to build, in one node; the `winner` view colours who owns what.

Anvil

Model tracking — its own shelf tab beside Blacksmith, because a crafted tool has to be findable as one.

Generate

Time

Other

The utility set: caching, output, and the pipeline plumbing.

3D

Registered by the 3D bridge rather than the 2D shelf. Create them from <kbd>Tab</kbd> search or the 3D workspace.

Axis3D

A 3D null/locator — a parent transform other things can follow.

BS_GeoTracker

Tracks a MODEL through a shot: wire the plate and the geometry, place it on the anchor frame, and it solves the object’s motion frame by frame, holding the mesh on the subject. The correction workflow is the point — grab a pin on any frame, nudge it, and the solve re-fits around what you stated. Feeds projections, textures (TextureBuilder) and matchmoved renders.

Camera3D

A camera in the scene: position/rotation plus film-back (focal, aperture). Render3D renders through it; the viewport shows its frustum.

Card

A plate standing in 3D: an image on a quad at its own aspect. `file` takes a file path — or the NAME of a 2D node to show that branch live.

Display3D

Overrides how prims draw in the viewport (wireframe, points, bbox…) without touching the render.

GeoPrimitive

A geometry primitive (cube, sphere, plane, cylinder) with transform and colour — stand-ins and simple set pieces.

Light3D

A light in the scene — point, spot, distant (sun), rect, or dome (ambient). Authored as a standard UsdLux prim, so the viewport, Render3D, USD export and the Unreal bridge all read the same light. Zero lights in a scene = the neutral headlight rig.

Merge3D

Combines 3D branches into one scene.

ParticleSystem3D

A deterministic particle system: sparks, dust, rain, embers. Emits from a point, card, sphere or box; gravity, drag and curl-noise turbulence move them; size and colour ramp over each particle's life. The sim is bit-identical every time — the same seed and frame give the same answer whether you played there or scrubbed there, so a re-render is a re-render. Particles are authored as a standard USD Points prim, so they carry velocities and per-particle ids for motion blur and id passes.

PointCloud3D

A solved camera track's 3D point cloud: each tracked feature's reconstructed position as a small marker. Scene+ creates one; snap cards and geometry to it.

Project3D

Camera projection - the matte-painting workhorse: throws an image from a Camera3D onto target geometry (a subdivided Card, a mesh). Freeze the camera on one frame to patch; move the render camera and the projection sticks to the surface.

Prune3D

Hides or deactivates prims by path — trim the scene without deleting nodes.

ReadGeo3D

Reads geometry from a .usda or .obj file into the scene.

Scene3D

The root of a 3D branch — an empty stage other 3D nodes build on.

SplatFx

Directs a gaussian-splat capture with a FIELD over its splats (spec §5) — the difference between a viewer and comp. crop: keep or carve a box/sphere region, feathered into a soft opacity falloff (splats feather beautifully). dissolve: fade opacity by a noise/distance/axis field, optionally shrinking splats to nothing (the assemble-the-hologram look). warp: push splats along a field — swirl, drift, wind. shade: tint + gamma the base colour. matte: project a 2D matte (a Roto, a Crucible key, any branch) through a camera and dissolve the splats it covers — the cross-system trick nothing else can do. Dissolve/warp/shade take an optional REGION (box/sphere) so the effect hits one object, not the whole scene. Chain several; each appends to the set. Cleanup (floater removal, opacity floor) lives on the SplatRead node.

SplatRead

Reads a gaussian-splat capture (.ply in the 3DGS layout, .splat, or .spz) into the scene: a captured location as millions of soft elliptical blobs, with parallax and view-dependent colour. Loads off-thread — the box draws dim while streaming, then the splats render in the viewport and Render3D, sorted and alpha-blended, depth-composited against cards and geometry. `color_space` declares what the trainer baked (sRGB is usual; a washed-out or crunchy capture is almost always this knob). `budget` caps drawn splats by importance and SAYS so in the HUD. `cluster_tolerance` sets the spatial cluster size used for crypto ids, groups and normal smoothing (0 = automatic). RELIGHT (§4): `relight`=lights turns on the dynamic Light3D loop — `ambient` dims the capture-day lighting baked into the splats and the scene's lights add your own key/fill/rim on top (`light_gain` scales them, `exposure` in stops scales the whole). This is relighting a captured location, which no other compositor does. CLEANUP (§5.4): floater_removal drops the debris clouds every capture has (a statistical outlier pass — the raw scene bounds are usually dominated by them); opacity_floor culls near-transparent splats.

Transform3D

Transforms 3D geometry: give it target paths (or leave empty for everything upstream) and TRS.

VDBRead

Reads a .vdb volume cache (smoke, clouds, fire from FX or a bought pack) into the scene as a standard UsdVol prim. Loads off-thread — the box draws dim while streaming, bright when ready. Rendering the volume itself lands with the volume pass; today you get the placed, pickable bounding box.

VolumeShade

The volume LOOK, separate from the read so one look feeds several VDBReads: density scale, scatter colour, anisotropy (forward/back scattering), emission (fire), self-shadow strength. Without one, VDBRead shows neutral grey smoke.

Off-shelf

Registered node types that are not on any shelf tab — reachable through <kbd>Tab</kbd> search. Twenty-two of them; that is a findability gap, written down rather than tidied away.

BS_Relight

Relights a plate from its own passes: screen-space lights (a directional sun by azimuth/elevation, or a point light at a pixel with depth) shaded against the ingested normal/roughness/basecolor, with real Light3Ds usable through `lights`. Chain several in add mode to build a key/fill/rim. Needs a PBRIngest upstream — it says so when it has nothing to shade.

Cache

Pins this branch's result in the cache — cook once, reuse while you work downstream.

CatcherComp

The canonical shadow-catcher merge: CG (rendered with the catcher held out) over plate × (1 − caught shadow). Wire your plate in, point `slot` at a catcher-enabled render, and the CG lands with correctly colored, soft shadows. `shadow_density` grades the shadow itself.

ChannelMerge

Combines a channel from A with B by operation — matte maths across streams.

Cryptomatte

Pulls clean anti-aliased object mattes from a cryptomatte render pass: type object names (comma-separated) and the summed coverage becomes the matte — true partial coverage at AA/motion-blur edges, unlike hard ID mattes. `preview` shows the classic random-colour segmentation.

Denoise

Wavelet denoiser: measures the noise (Analyze, or box a flat patch), then removes it per frequency band and channel. Chroma takes more than luma for free.

EngineLive

The live Unreal session as a comp input: the streamed viewport (scene-linear, pre-tonemap) plus aligned depth/id channels where the stream carries them. The comp re-cooks live as the level or camera changes out there. Turn the 3D viewer's LIVE on to feed it.

EngineLook

The engine look as a node on scene-linear input: exposure (stops) then the tonemapper 2014 UE Filmic (the fitted ACES curve UE ships), AgX, or Hable. This is how a render looks IN Unreal while every pixel underneath stays gradeable. none = bypass.

EngineRender

The offline/finaling render against the live session: drives Unreal's Movie Render Queue (Path Tracer for the hero look) and streams high-quality frames back progressively. Rendered frames cache and scrub; unrendered frames show black. Render/Cancel live in the Scene Graph panel's RENDER QUEUE while LIVE is on.

FDenoise

The render denoise stage: a guided filter steered by the albedo/normal/depth passes, so path-traced noise averages away while real edges stay sharp. Point slot at the render; strength blends, radius sets the window. Data passes are never touched.

FilterErode

A sub-pixel erode/dilate with a soft filter — finer control than whole-pixel Erode.

FreqSep

Splits the image into low (colour/shape) and high (texture/detail) bands, and recombines exactly. Beauty and cleanup work happen between the two.

GradeMatch

Solves a grade that makes this image match a reference — automatic colour matching between plates.

MotionVectors

Computes optical-flow motion vectors between frames, for VectorBlur and retiming.

Output

Marks a branch's deliverable end-point.

PBRIngest

Canonicalises a relighting asset\'s PBR passes: takes a vendor\'s basecolor / normal / roughness / depth naming (Beeble’s SwitchLight, render AOVs, or already-canonical layers), linearizes what needs it, decodes packed normals, and hands BS_Relight one predictable set of layers. The preset is RECORDED, so a project opened in a year states what it assumed.

Reassemble

Rebuilds the beauty from the render's AOV split passes with per-term gains — regrade LIGHT, not pixels: indirect ×1.2, key light ×0.7, re-summed. Defaults reproduce the beauty exactly (the reassembly guarantee). Point `slot` at the same render as your EngineRender node.

Regrain

Puts the plate's OWN grain back on comped work: measures it from the plate and re-applies it per-brightness. Better than synthetic grain when you have the plate.

Render3D

Renders a 3D scene into the comp: point `scene`/`camera` at your 3D branch and a Camera3D, and the CG composites over the bg input as a premultiplied element. `aux` adds depth/N/P/id channels.

SplitAOVs

The AOV rebuild, materialized: wire a multilayer EXR in, hit Build comb, and get the classic hand-built web — one ChannelRoute + grade slot per beauty pass, a plus-merge cascade back to the beauty, data passes (N/P/depth/crypto) parked on their own rail. Ordinary nodes, one undo. The preset picks the vendor naming (auto-detected and recorded).

UVWarp

Warps the image by a UV map: each output pixel reads where the map's red/green says. Lens grids, ripples, any baked warp.

VectorBlur

Blurs along motion vectors — real per-pixel motion blur from a MotionVectors pass or a renderer's vectors.