Node reference
Merge nodes
AddMix
A added over B, weighted by curves of A's alpha (by default a premultiplied over).
Inputs: B, A.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| A | rgba | A's layer. | |
| B | rgba | B's layer. | |
| output | rgba | The layer the result goes to. | |
| premultiplied | off | A is premultiplied: its weight is divided by its alpha. | |
| nonlinear | off | Softer weights: w / (2 - w) (Nuke's). | |
| lut | A {} B {} | A's and B's weights against A's alpha (A: a, B: 1 - a by default). | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
Blend
The inputs averaged by their weights.
Inputs: 1, 2, 3 (optional), 4 (optional), 5 (optional), 6 (optional), 7 (optional), 8 (optional), 9 (optional), 10 (optional), 11 (optional), 12 (optional), mask (optional).
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | all | rgba, rgb, alpha, all | The channels the node changes; the others pass through. |
| 1 | 1 | 0 to 1 | This input's weight in the sum. |
| 2 | 1 | 0 to 1 | This input's weight in the sum. |
| 3 | 1 | 0 to 1 | This input's weight in the sum. |
| 4 | 1 | 0 to 1 | This input's weight in the sum. |
| 5 | 1 | 0 to 1 | This input's weight in the sum. |
| 6 | 1 | 0 to 1 | This input's weight in the sum. |
| 7 | 1 | 0 to 1 | This input's weight in the sum. |
| 8 | 1 | 0 to 1 | This input's weight in the sum. |
| 9 | 1 | 0 to 1 | This input's weight in the sum. |
| 10 | 1 | 0 to 1 | This input's weight in the sum. |
| 11 | 1 | 0 to 1 | This input's weight in the sum. |
| 12 | 1 | 0 to 1 | This input's weight in the sum. |
| normalize | on | Divide the sum by the total of the weights, so it stays an average. | |
| invert mask | off | Use 1 - the mask's alpha. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
Contact Sheet (Inputs)
Type name: ContactSheet (scripts, MCP and Nuke import use it).
The inputs side by side in a grid, each scaled to fit its cell.
Inputs: input (optional); more as you connect them.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| width | 3072 | 1 to 8192 | The sheet's size in pixels. |
| height | 2048 | 1 to 8192 | The sheet's height in pixels. |
| rows | 3 | 1 to 10 | How many cells down the sheet. |
| columns | 4 | 1 to 10 | How many cells across the sheet. |
| gap | 0 | 0 to 100 | Pixels around and between the cells. |
| center | off | Centre each picture in its cell (else at its bottom-left). | |
| row order | BottomTop | TopBottom, BottomTop | Where the first row is: at the bottom (BottomTop) or the top. |
| column order | LeftRight | LeftRight, RightLeft, Snake | Snake: every other row right to left. |
Copy Bounds
Type name: CopyBBox (scripts, MCP and Nuke import use it).
A's image with B's bounding box.
Inputs: A, B.
No settings.
CopyRectangle
A's channels inside a rectangle over B, its edge softened inwards.
Inputs: B, A.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | all | rgba, rgb, alpha, all | The channels the node changes; the others pass through. |
| area x | 512 | 0 to 4096 | The rectangle's left edge, in pixels. |
| area y | 389 | 0 to 4096 | The rectangle's bottom edge, in pixels. |
| area right | 1536 | 0 to 4096 | The rectangle's right edge, in pixels. |
| area top | 1167 | 0 to 4096 | The rectangle's top edge, in pixels. |
| softness w | 0 | 0 to 100 | How far in from the left and right edges A fades in, in pixels. |
| softness h | 0 | 0 to 100 | How far in from the bottom and top edges A fades in, in pixels. |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
Dissolve
Blends between its images: which 0 is input 0, 1 is input 1, 2 the next image and so on (animate it for a cross dissolve); between two, a mix of both.
Inputs: 0, 1 (optional), mask (optional); more as you connect them.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| which | 0 | 0 to 1 | The image shown: 0 input 0, 1 input 1, 2 the next one (image2)...; between two, a mix of both. Clamped to the images there are. |
| channels | all | rgb, rgba, alpha, all | rgb, rgba, alpha, all, or a layer (depth) or channel by name, as Nuke's. |
| invert mask | off | Use 1 - the mask's alpha. |
DualBlend
From the second input (amount 0) to the first (amount 1).
Inputs: A, B, mask (optional).
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | all | rgba, rgb, alpha, all | The channels the node changes; the others pass through. |
| amount | 0 | 0 to 1 | 0 gives the second input, 1 the first, values between mix them. |
| invert mask | off | Use 1 - the mask's alpha. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
Mask Mix
Type name: KeyMix (scripts, MCP and Nuke import use it).
A where the mask is white, B where it is black (no merge maths): A keyed over B.
Inputs: B, A, mask (optional).
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | all | rgb, rgba, alpha, all | rgb, rgba, alpha, all, or a layer (depth) or channel by name, as Nuke's. |
| invert mask | off | Use 1 - the mask's alpha. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
| bbox | union | union, B, A | The result's bounding box: both inputs', B's or A's (black outside it). |
LightWrap
The background's light wrapped onto the foreground's edges (A over B's light).
Inputs: B, A.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| diffuse | 15 | 0 to 100 | How far the wrap reaches in from the edge (pixels). |
| intensity | 0 | 0 to 10 | 0: no wrap. |
| generate wrap only | off | Outputs the wrap alone instead of adding it to the foreground. | |
| disable luminance | off | Wraps all of the background's light, ignoring the luminance tolerance. | |
| foreground blur | 1 | 0 to 20 | Softens the foreground's alpha before the edge is found, in pixels. |
| background blur | 0 | 0 to 50 | Blurs the background's light before it wraps, in pixels. |
| saturation | 1 | 0 to 2 | The saturation of the background's light (0: grey, 1: unchanged). |
| luminance tolerance | 0 | 0 to 1 | Only background light brighter than this wraps. |
| enable glow | off | Kept for scripts, not applied. | |
| use constant colour | off | Kept for scripts, not applied. |
Merge
Combines A onto B with a Nuke merge operation (premultiplied maths). Channels other than R, G, B, A come from B. A missing alpha counts as 0. More A inputs (A2, A3...) are merged on in order.
Inputs: B, A, mask (optional); more as you connect them.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| operation | over | over, under, plus, minus, from, multiply, screen, max, min, difference, divide, average, in, out, atop, xor, mask, stencil, copy, color-burn, color-dodge, conjoint-over, disjoint-over, exclusion, geometric, hard-light, hypot, matte, overlay, soft-light | The formula combining A with B on premultiplied values, as Nuke's (over: A on top of B). |
| bbox | union | union, B, A, intersection | Which data window the result covers. |
| A channels | rgba | rgba, rgb, alpha, none | A's channels the formula reads; the others count as 0 (rgb: A's alpha is 0). Four names (R G B depth.Z, none for an empty slot) stand for R, G, B and alpha, as Nuke's sets. |
| B channels | rgba | rgba, rgb, alpha, none | B's channels the formula reads; the others count as 0 (rgb: B's alpha is 0). Four names stand for R, G, B and alpha. |
| output | rgba | rgba, rgb, alpha, none | The channels written; the others are B's (rgb: B's alpha stays). Or a list of channel names (R A), as Nuke's {rgba.red rgba.alpha}. |
| also merge | none | Another layer (depth...), or all, merged with the same formula. | |
| invert mask | off | Use 1 - the mask's alpha. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
MergeExpression
Computes B's channels per pixel from expressions of A's and B's colours.
Inputs: B, A (optional), mask (optional).
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| temp name 0 | A name for a temporary value the expressions below can use. | ||
| temp expr 0 | The temporary value's expression, worked out per pixel; it can use the temporaries before it. Unused without a name. | ||
| temp name 1 | A name for a temporary value the expressions below can use. | ||
| temp expr 1 | The temporary value's expression, worked out per pixel; it can use the temporaries before it. Unused without a name. | ||
| temp name 2 | A name for a temporary value the expressions below can use. | ||
| temp expr 2 | The temporary value's expression, worked out per pixel; it can use the temporaries before it. Unused without a name. | ||
| temp name 3 | A name for a temporary value the expressions below can use. | ||
| temp expr 3 | The temporary value's expression, worked out per pixel; it can use the temporaries before it. Unused without a name. | ||
| channel 0 | R | The channel this expression writes (added if the input lacks it). | |
| expr 0 | Per pixel: Ar, Ag, Ab, Aa, Br, Bg, Bb, Ba (r, g, b, a: B's), x, y, width, height, frame, Node.param, the temporaries. Empty: B unchanged. | ||
| channel 1 | G | The channel this expression writes (added if the input lacks it). | |
| expr 1 | Per pixel: Ar, Ag, Ab, Aa, Br, Bg, Bb, Ba (r, g, b, a: B's), x, y, width, height, frame, Node.param, the temporaries. Empty: B unchanged. | ||
| channel 2 | B | The channel this expression writes (added if the input lacks it). | |
| expr 2 | Per pixel: Ar, Ag, Ab, Aa, Br, Bg, Bb, Ba (r, g, b, a: B's), x, y, width, height, frame, Node.param, the temporaries. Empty: B unchanged. | ||
| channel 3 | A | The channel this expression writes (added if the input lacks it). | |
| expr 3 | Per pixel: Ar, Ag, Ab, Aa, Br, Bg, Bb, Ba (r, g, b, a: B's), x, y, width, height, frame, Node.param, the temporaries. Empty: B unchanged. | ||
| invert mask | off | Use 1 - the mask's alpha. | |
| (un)premult by | none | none, A | Divide the colour by this channel (A: the alpha) before the change and multiply it back after, as Nuke's; none: off. |
| invert (un)premult | off | Use 1 - that channel. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
PSDMerge
Photoshop's blend modes: A (the layer) on B (the base), by A's alpha, optionally in sRGB.
Inputs: B, A.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| operation | normal | normal, screen, color dodge, overlay, multiply, darken, color burn, linear burn, lighten, linear dodge, lighter color, soft light, hard light, vivid light, linear light, pin light, hard mix, difference, exclusion, subtract, divide, hue, saturation, color, luminosity | Photoshop's blend mode for A over B, applied to R, G and B and mixed in by A's alpha. |
| sRGB colorspace | on | Blend in sRGB, converting both inputs there and the result back through the colour service. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
Premult
Multiplies colour by alpha (straight to premultiplied).
Inputs: input.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | rgb | rgb, all | rgb: R, G and B. all: every channel except A, AOV layers too. Or a layer (depth) or channel names. |
| alpha | A | The channel to multiply or divide by. | |
| invert | off | Use 1 - that channel. |
Switch
Passes on one of its inputs: 'which' picks it (0 the first). Animate it to cut between inputs.
Inputs: input (optional); more as you connect them.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| which | 0 | 0 to 5 | The input passed on (0 the first); rounded, clamped to the inputs there are. |
Unpremult
Divides colour by alpha where it isn't 0 (premultiplied to straight).
Inputs: input.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | rgb | rgb, all | rgb: R, G and B. all: every channel except A, AOV layers too. Or a layer (depth) or channel names. |
| alpha | A | The channel to multiply or divide by. | |
| invert | off | Use 1 - that channel. |
Depth Comp
Type name: ZComp (scripts, MCP and Nuke import use it).
A soft depth merge of opaque images: A's share falls from all to none as it goes behind B, over twice the tolerance.
Inputs: B, A, Bz (optional), Az (optional).
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| Merge Tolerance | 2 | 0 to 10 | Where both are opaque, A fades from in front to behind B over twice this depth difference. |
| Preview Collision Zone? | off | Show where the depths are closer than the tolerance: 100 in r, g, b and a. | |
| Infinity Value | 1000 | 0 to 1000 | A depth at or past this counts as empty: the other input shows there. |
Depth Merge
Type name: ZMerge (scripts, MCP and Nuke import use it).
Per pixel, the input nearer the camera (smaller Z; backwards: larger) merged over the other.
Inputs: B, A.
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| Z channel | depth.Z | The channel holding each input's depth, compared per pixel. | |
| smaller Z = further away | off | The input with the larger Z goes in front (off: the smaller Z). | |
| Alpha channel | alpha | The front input's coverage: the back one shows through by 1 minus this. |
Depth Merge (Reverse)
Type name: ZRMerge (scripts, MCP and Nuke import use it).
A mixed over B by B's depth: none at the low cutoff, all at the high one.
Inputs: B, A, mask (optional).
| Setting | Default | Range or choices | What it does |
|---|---|---|---|
| channels | rgba | rgba, rgb, alpha, all | The channels the node changes; the others pass through. |
| Z Depth Channel | depth.Z | B's channel whose depth sets how much of A shows; it keeps B's values. | |
| Z Low Cutoff | 0 | 0 to 1 | B's depth where none of A shows. |
| Z High Cutoff | 0.25 | 0 to 1 | B's depth where all of A shows; A is mixed in between the cutoffs. |
| invert mask | off | Use 1 - the mask's alpha. | |
| mix | 1 | 0 to 1 | How much of the result shows over the input: 0 is the input, 1 the full effect. |
