Reference / Nodes
Post-FX
Image-space effects. Each one takes a texture in, a handful of float parameters, and emits a transformed texture. Chain them; reorder them; the only rule is that order matters, blur-then-glow looks different from glow-then-blur.
All Post-FX nodes share a uniform shape: one texture input, a few floats, and a texture output. Documented per node below.
Blur & Sharpen
Soften or sharpen, separable kernels and morphology.
Blur
blurPostFXGaussian blur with separable two-pass kernel.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| radius | float | 5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
The default soft-focus. Big radii hit the GPU hard at 4K, drop the resolution upstream with downsample first if performance dips.
Sharpen
sharpenPostFXUnsharp mask, high-passes the image and adds it back.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Radial Blur
radialBlurPostFXZoom-blur radiating from the centre.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Directional Blur
directionalBlurPostFXLinear motion blur along an angle.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.02 | , | |
| angle | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Dilate
dilatePostFXMorphological dilation, grows bright regions.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| radius | float | 2 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Erode
erodePostFXMorphological erosion, shrinks bright regions. The opposite of Dilate.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| radius | float | 2 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Color
Grade, remap and recolor. Reach for Advanced Color Correction when you want everything in one node.
Color Correction
colorCorrectionPostFXBrightness, contrast and saturation in one node.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| brightness | float | 0 | , | |
| contrast | float | 1 | , | |
| saturation | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
The simplest grading node. For per-channel work or HSL shifts, reach for levels or hslAdjust, and for a full grade see advancedColorCorrection below.
Advanced Color Correction
advancedColorCorrectionPostFXA complete grade in one node: white balance, exposure, contrast, tone, color wheels, RGB + HSL curves and an HSL secondary.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
A professional color-grading panel in a single node. One GPU pass applies, in a fixed order: white balance (temperature / tint), exposure, contrast, highlights / shadows / whites / blacks, Lift / Gamma / Gain / Offset color wheels, saturation / vibrance, RGB curves (master + per-channel) and HSL curves, then an HSL secondary qualifier that keys a hue/sat/lum range and regrades only that.
The inspector has interactive color-balance trackballs and draggable curve editors; each block has its own enable toggle. Contrast is working-space aware (correct in gamma and linear), and it preserves HDR headroom when the project output is HDR.
Invert
invertPostFXInverts RGB. The amount input crossfades back to the original.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Threshold
thresholdPostFXBinarises luminance, softness controls the falloff width.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| threshold | float | 0.5 | , | |
| softness | float | 0.01 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Tint
tintPostFXMultiply the image by a color, with an amount for crossfading back to neutral.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| color | color | , | , | |
| amount | float | 0.5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Tritone
tritonePostFXMaps shadows / midtones / highlights to three picked colors.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| intensity | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Set the three colors on the inspector. The intensity input crossfades the result back to the source.
Channel Mixer
channelMixerPostFXLinear matrix mix, the inspector exposes a 4×4 of weights for surgical channel work.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Use this for tinted black-and-white conversions or for swapping color channels with custom weights. The channelShuffle node in Shading is faster if you only need a permutation.
Posterize
posterizePostFXQuantises each channel into a small number of levels.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| levels | float | 4 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Solarize
solarizePostFXInverts pixels above a threshold, the classic film-overexposure look.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| threshold | float | 0.5 | , | |
| intensity | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
HSL Adjust
hslAdjustPostFXHue shift, saturation multiply and lightness offset, surgical color work.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| hueShift | float | 0 | , | |
| saturation | float | 1 | , | |
| lightness | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Color Map
colorMapPostFXLUT / gradient map, re-colors the image by sampling a palette texture by luminance.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| intensity | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Pick the gradient on the inspector. The intensity input crossfades back to the original color.
Levels
levelsPostFXPhotoshop-style levels, input black, input white and gamma.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| inputBlack | float | 0 | , | |
| inputWhite | float | 1 | , | |
| gamma | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Use after a frameFeedback chain to claw back contrast that decay has flattened.
Stylize
Non-photoreal looks, edges, dots, hatching, halftone and CRT.
Edge Detect
edgeDetectPostFXSobel filter, emits white edges on black.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| strength | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Stack with blend set to additive over the original to add contour lines without losing the underlying image.
Pixellate
pixellatePostFXAverage-block downsample to fake a low-res look.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| pixelSize | float | 8 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Halftone
halftonePostFXNewspaper-style dot pattern modulated by luminance.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| dotSize | float | 4 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Mirror
mirrorPostFXMirrors the image around an axis at the chosen angle.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| angle | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Dither
ditherPostFXOrdered (Bayer) dithering at a chosen number of levels.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| levels | float | 4 | , | |
| scale | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Cross Hatch
crossHatchPostFXHatching lines in the dark areas, denser as luminance drops.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| lineSpacing | float | 5 | , | |
| lineWidth | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Emboss
embossPostFXDirectional difference filter, fakes a relief / chiseled look.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| strength | float | 1 | , | |
| angle | float | 0.785 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Kaleidoscope
kaleidoscopePostFXMirrors a wedge of the image around the centre N times.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| segments | float | 6 | , | |
| rotation | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Scan Lines
scanLinesPostFXCRT scanline overlay, line count, intensity, optional vertical scroll.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| lineCount | float | 300 | , | |
| intensity | float | 0.3 | , | |
| speed | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Tile
tilePostFXRepeats the texture in a grid with optional UV offset, distinct from the Generator-side Tiles node.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| tilesX | float | 3 | , | |
| tilesY | float | 3 | , | |
| offsetX | float | 0 | , | |
| offsetY | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Outline
outlinePostFXSolid edge stroke around bright regions.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| thickness | float | 1 | , | |
| threshold | float | 0.1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Edge Glow
edgeGlowPostFXEdge detection with a glow halo, the result reads like neon outlines.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| glowIntensity | float | 2 | , | |
| edgeThreshold | float | 0.1 | , | |
| glowRadius | float | 4 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Distort
Warp the image in UV space.
Distortion
distortionPostFXAnimated UV distortion driven by an internal noise field.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.05 | , | |
| scale | float | 4 | , | |
| speed | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Barrel Distortion
barrelDistortionPostFXLens barrel / pincushion warp, positive bulges, negative pinches.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.3 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Twirl
twirlPostFXSpiral swirl around the centre. Radius controls how far the swirl reaches.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 3 | , | |
| radius | float | 0.5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Ripple
ripplePostFXConcentric water-ripple distortion expanding from the centre.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amplitude | float | 0.02 | , | |
| frequency | float | 15 | , | |
| speed | float | 3 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Polar Warp
polarWarpPostFXRe-maps the image into polar coordinates. Pair with rotation for a spinning kaleidoscope feel.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| rotation | float | 0 | , | |
| zoom | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Sine Warp
sineWarpPostFXIndependent sine warps along X and Y, wavy heat-haze.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amplitudeX | float | 0.03 | , | |
| amplitudeY | float | 0.03 | , | |
| frequencyX | float | 5 | , | |
| frequencyY | float | 5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Noise Displace
noiseDisplacePostFXAnimated noise-driven UV displacement of the input texture.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.03 | , | |
| scale | float | 4 | , | |
| speed | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
The image-space cousin of the 3D noiseDisplace3d modifier. Useful for water shimmer, heat haze and warp transitions.
Liquid Drip
liquidDripPostFXViscous liquid dripping from edges with shaded specular highlights.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| dripAmount | float | 0.5 | , | |
| viscosity | float | 0.5 | , | |
| speed | float | 1 | , | |
| gravity | float | 0.5 | , | |
| dripColorR | float | 0.6 | , | |
| dripColorG | float | 0.02 | , | |
| dripColorB | float | 0.02 | , | |
| specular | float | 0.8 | , | |
| glossiness | float | 40 | , | |
| lightAngle | float | 0.25 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Reads as wax, blood or paint depending on the color and viscosity. Heavy, best stacked late in the chain.
Glitch
Datamosh, tape and depth-tear artifacts.
Chromatic Aberration
chromaticAberrationPostFXSplits R, G and B channels along an angle for a lens-fringe artifact.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.01 | , | |
| angle | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
VHS
vhsPostFXComposite of scanlines, noise and color bleed for a tape-deck look.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| scanlines | float | 0.3 | , | |
| noise | float | 0.1 | , | |
| colorBleed | float | 0.005 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Block Glitch
blockGlitchPostFXRandom horizontal block shifts, datamosh / DV-tape error look.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| intensity | float | 0.3 | , | |
| blockSize | float | 0.05 | , | |
| speed | float | 8 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Depth Glitch
depthGlitchPostFXBlocky depth-tear with black edges and background bleed, fakes the look of broken depth / AR glitches.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.3 | , | |
| blockSize | float | 0.05 | , | |
| displace | float | 0.06 | , | |
| edge | float | 0.12 | , | |
| speed | float | 6 | , | |
| holes | float | 0.25 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Light
Bloom, grain, streaks and lens phenomena.
Glow
glowPostFXBright-pass plus blur, added back over the original, bloom in three parameters.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| intensity | float | 1 | , | |
| threshold | float | 0.5 | , | |
| radius | float | 8 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Lower the threshold for a smoky overall lift, raise it for a true bloom that only catches highlights.
Film Grain
filmGrainPostFXAnimated luminance noise overlay.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| intensity | float | 0.15 | , | |
| size | float | 1.5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Streaks
streaksPostFXAnamorphic light streaks from bright regions.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| threshold | float | 0.7 | , | |
| streakLength | float | 0.15 | , | |
| intensity | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Vignette
vignettePostFXDarkens the corners. Roundness controls how circular the falloff is.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| amount | float | 0.5 | , | |
| softness | float | 0.5 | , | |
| roundness | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Lens Flare
lensFlarePostFXProcedural lens flare anchored at a screen-space position.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| posX | float | 0.5 | , | |
| posY | float | 0.3 | , | |
| intensity | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
God Rays
godRaysPostFXVolumetric radial smear from a screen-space point, sun-shafts.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| posX | float | 0.5 | , | |
| posY | float | 0.5 | , | |
| intensity | float | 0.5 | , | |
| threshold | float | 0.5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Key & Composite
Keying, masking and feeding frames back on themselves.
Chroma Key
chromaKeyPostFXGreen / blue screen keyer with tolerance, softness and spill suppression.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| tolerance | float | 0.4 | , | |
| softness | float | 0.1 | , | |
| spillSuppression | float | 0.5 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Pick the key color on the inspector. Output alpha can be composited under any texture by feeding both into blend.
Frame Feedback
frameFeedbackPostFXBlends the previous output frame back over the current one, temporal trails, smoke, infinite zoom.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| decay | float | 0.9 | , | |
| zoom | float | 1 | , | |
| rotation | float | 0 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
The single most powerful Post-FX in the list. decay below 1 fades trails, exactly 1 holds them, above 1 blows the buffer out, clip with levels downstream when chasing the look.
Blend
blendPostFXCombines two textures with a chosen blend mode and an opacity multiplier.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| texture2 | texture | , | , | |
| opacity | float | 1 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
The blend mode (normal, add, multiply, screen, overlay, etc.) is on the inspector. The most-reached-for compositing primitive in the engine.
Person Segmentation
personSegmentationPostFXVision-framework person mask, outputs the original texture with the background alpha-keyed out.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
| feather | float | 0.5 | , | |
| threshold | float | 0.5 | , | |
| maskBlur | float | 4 | , | |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
Runs Apple's on-device person-segmentation model every frame. Pair with liveInput for camera-based green-screen-without-a-greenscreen.
Alpha Mask
alphaMaskPostFXUses a mask texture's luminance (or alpha) as the alpha of a foreground, optionally composited over a background.
Inputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | Foreground - shown inside the mask. |
| background | texture | , | , | Shown outside the mask. Optional; transparent by default. |
| mask | texture | , | , | Luminance source (.r, or .a with useAlpha). Null = opaque. |
| amount | float | 1 | 0 – 1 | Masking strength. |
| feather | float | 0 | 0 – 0.2 | Soft edge falloff. |
| invert | bool | false | , | Flip the mask. |
| useAlpha | bool | false | , | Sample mask.a instead of mask.r. |
Outputs
| Port | Type | Default | Range | Notes |
|---|
| texture | texture | , | , | |
A general matte node with an explicit texture output, so it sits anywhere in a chain like a blend. Feed it a shape, a gradient, or a Vision mask and it carves the foreground to that shape, preserving alpha so downstream compositing stays correct.