Skip to main content
Documentation
Node Editor

SDF Tool Nodes

Tools for manipulating Signed Distance Fields: union, intersection, subtraction, smooth blending, and transformations.

Tools for manipulating Signed Distance Fields: union, intersection, subtraction, smooth blending, and transformations.

This category contains 33 nodes.

Nodes

Bend SDF

Curves space along an axis. Use before shape nodes to bend them like a banana or arch.

Inputs: Position to transform, bend angle (higher = more curve), axis (direction to bend around), and center point.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Bend AngleNumberany1
Bend AxisVectorvec[0, 1, 0]
CenterVectorvec[0, 0, 0]

Outputs: Curved position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Chamfer Intersect SDF

Keeps only where two shapes overlap, with beveled edges at the intersection. Creates clean angular transitions.

Inputs: Two shape distances and bevel size.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0
Chamfer RadiusNumberany0.1

Outputs: Combined distance with beveled edges.

NameTypeRange
Signed DistanceNumbersdf

Chamfer Subtract SDF

Cuts one shape from another with beveled edges. Creates clean angular transitions at the cut.

Inputs: Shape to keep, shape to cut, and bevel size.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0
Chamfer RadiusNumberany0.1

Outputs: Combined distance with beveled edges.

NameTypeRange
Signed DistanceNumbersdf

Chamfer Union SDF

Combines two shapes with beveled edges where they meet. Creates clean angular transitions.

Inputs: Two shape distances and bevel size.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0
Chamfer RadiusNumberany0.1

Outputs: Combined distance with beveled edges.

NameTypeRange
Signed DistanceNumbersdf

Cylindrical SDF

Converts position to cylindrical coordinates. Useful for wrapping effects around a central axis.

Inputs: Position, center point, and axis.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
CenterVectorvec[0, 0, 0]
AxisVectorvec[0, 1, 0]

Outputs: Cylindrical coordinates as (distance from axis, angle, height).

NameTypeRange
Transformed PositionVectorvec

Displace SDF

Adds organic noise displacement to shapes. Makes surfaces bumpy, rocky, or distorted.

Inputs: Position, displacement strength, and noise settings.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
StrengthNumberany0.2
ScaleNumberany4
SeedNumberany12.9898

Outputs: Displaced position.

NameTypeRange
Transformed PositionVectorvec

Domain Repetition SDF

Tiles a shape infinitely in all directions with optional organic distortion. Great for grids, arrays, and patterns.

Inputs: Position, Cell Size (per-axis spacing), and warp settings. Use Uniform Vector to drive all three axes from one number.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Cell SizeVectorvec[1, 1, 1]
Warp AmountNumberany0.2
Warp ScaleNumberany3
SeedNumberany42

Outputs: Position within the repeated cell, plus the integer cell id identifying which tile a pixel falls into.

NameTypeRange
Transformed PositionVectorvec
Cell IDVectorvec

Domain Rotation SDF

Rotates space based on position to create swirling and spiral patterns. The rotation varies across space.

Inputs: Position, rotation angles, and variation settings.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Base AnglesVectorvec[0, 0, 0]
FrequencyVectorvec[0.1, 0.1, 0.1]
AmplitudeNumberany1
CenterVectorvec[0, 0, 0]

Outputs: Rotated position.

NameTypeRange
Transformed PositionVectorvec

Domain Scale SDF

Stretches and compresses space based on position. Creates organic breathing or pulsing effects.

Inputs: Position, base scale, and variation settings.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Base ScaleVectorvec[1, 1, 1]
FrequencyVectorvec[0.1, 0.1, 0.1]
AmplitudeNumberany0.5
CenterVectorvec[0, 0, 0]

Outputs: Scaled position and scale factor.

NameTypeRange
Transformed PositionVectorvec
Scale FactorNumbersdf

Domain Twist SDF

Twists space around an axis to create spiral and helical patterns. Great for tornado or DNA-like effects.

Inputs: Position, twist axis, strength, and variation.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Twist AxisVectorvec[0, 1, 0]
FrequencyVectorvec[1, 1, 1]
Twist StrengthNumberany3
CenterVectorvec[0, 0, 0]

Outputs: Twisted position.

NameTypeRange
Transformed PositionVectorvec

Elongate SDF

Stretches a shape by pulling its centre apart along each axis, leaving the caps intact. A sphere becomes a capsule, a box becomes a longer box: the corners keep their original rounding instead of being scaled out of shape.

Inputs: Position and extent (how far to pull apart along X, Y, and Z).

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
ExtentVectorvec[0.2, 0, 0]

Outputs: Position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Finite Repeat SDF

Tiles a shape a limited number of times. Unlike infinite repeat, this creates bounded arrays.

Inputs: Position, Cell Size as the per-axis spacing, and the number of copies in each direction. Cell Size is a vector here and on Infinite Repeat SDF and Domain Repetition SDF; use Uniform Vector to drive all three axes from one number.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Cell SizeVectorvec[1, 1, 1]
Repetition LimitsVectorvec[1, 1, 1]

Outputs: Position within the array.

NameTypeRange
Transformed PositionVectorvec

Infinite Repeat SDF

Tiles a shape infinitely in all directions. Creates grids and repeating patterns from a single shape.

Inputs: Position and Cell Size (per-axis spacing between repetitions). Use Uniform Vector to drive all three axes from one number.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Cell SizeVectorvec[1, 1, 1]

Outputs: Repeated position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Intersect SDF

Keeps only where two shapes overlap. Shows only the region inside both shapes.

Inputs: Two shape distances to intersect.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0

Outputs: Intersection shape distance.

NameTypeRange
Signed DistanceNumbersdf

Mirror SDF

Reflects a shape across a plane. Creates symmetrical effects - define one half and mirror the rest.

Inputs: Position, normal (direction the mirror faces), and offset (plane position).

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Normal VectorVectorvec[0, 1, 0]
OffsetNumberany0

Outputs: Mirrored position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Polar Repeat SDF

Folds space into equal pie slices around an axis, so one shape repeats N times in a ring. Build a single petal and get a whole flower. Chain Mirror SDF after it for a mirrored kaleidoscope.

Inputs: Position, the number of sectors, and the axis to rotate around.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
SectorsNumber1+6
AxisVectorvec[0, 0, 1]

Outputs: Position folded into a single sector, to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Polar SDF

Converts position to circular coordinates. Useful for creating radial patterns, rings, and spiral effects.

Inputs: Position, center point, and axis of rotation.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
CenterVectorvec[0, 0, 0]
AxisVectorvec[0, 1, 0]

Outputs: Polar coordinates as (distance from center, angle, height).

NameTypeRange
Transformed PositionVectorvec

Rotate SDF

Rotates a shape around a pivot point. Useful for spinning or angling shapes.

Inputs: Position, rotation angles (X, Y, Z axis rotation), and pivot (center of rotation).

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Rotation (Radians)Vectorvec[0, 0, 0]
Pivot PointVectorvec[0.5, 0.5, 0.5]

Outputs: Rotated position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Scale SDF

Resizes a shape. Scale around a pivot point to grow or shrink shapes.

Inputs: Position, scale (size multiplier for X, Y, Z), and pivot (center of scaling).

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
ScaleVectorvec[1, 1, 1]
Pivot PointVectorvec[0, 0, 0]

Outputs: Scaled position and scale factor (multiply with shape distance for correct sizing).

NameTypeRange
Transformed PositionVectorvec
Scale FactorNumbersdf

SDF to Glow

Turns a shape into a soft halo that fades out with distance. The inside of the shape sits at full intensity and the light falls off exponentially outside it. Add it on top of Solid or Stroke for a bloom or neon look.

Inputs: Shape distance, intensity (the value inside the shape), and falloff (higher = tighter glow).

NameTypeRangeDefault
Signed DistanceNumbersdf0
IntensityNumber0-11
FalloffNumber0+12

Outputs: 0 to Intensity, brightest inside the shape. Multiply with a color to use.

NameTypeRange
GlowNumber0-1

SDF to Smooth Solid

Fills a shape with smooth edges. Unlike Shape to Solid, this creates a soft gradient at the boundary.

Inputs: Shape distance, threshold (edge position), and smoothing (edge softness).

NameTypeRangeDefault
Signed DistanceNumbersdf0
ThresholdNumberany0
SmoothingNumberany0.1

Outputs: 0 to 1 with smooth falloff at edges. Multiply with a color to use.

NameTypeRange
Is SolidNumbersdf

SDF to Smooth Stroke

Creates a soft outline around a shape. The stroke has smooth, anti-aliased edges.

Inputs: Shape distance, threshold (edge position), stroke width, and smoothing (edge softness).

NameTypeRangeDefault
Signed DistanceNumbersdf0
ThresholdNumberany0
Stroke WidthNumberany0.1
SmoothingNumberany0.1

Outputs: 0 to 1 with smooth edges on the outline. Multiply with a color to use.

NameTypeRange
Is StrokeNumbersdf

SDF to Solid

Fills a shape solid. Outputs 1 inside the shape, 0 outside.

Inputs: Shape distance and threshold (adjusts where the edge appears).

NameTypeRangeDefault
Signed DistanceNumbersdf0
ThresholdNumberany0

Outputs: 1 inside, 0 outside. Multiply with a color to use.

NameTypeRange
Is SolidNumbersdf

SDF to Stroke

Creates an outline around a shape. Only the edge is lit, not the interior.

Inputs: Shape distance, threshold (edge position), and stroke width.

NameTypeRangeDefault
Signed DistanceNumbersdf0
ThresholdNumberany0
Stroke WidthNumberany0.1

Outputs: 1 on the outline, 0 elsewhere. Multiply with a color to use.

NameTypeRange
Is StrokeNumbersdf

Smooth Intersect SDF

Keeps the overlap of two shapes with smooth blending at the edges.

Inputs: Two shape distances and smoothing factor.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0
Smoothing FactorNumberany0.1

Outputs: Smooth intersection of both shapes.

NameTypeRange
Signed DistanceNumbersdf

Smooth Subtract SDF

Carves shape B from shape A with smooth blending. Creates organic cut-out effects.

Inputs: Shape A (base), shape B (cutter), and smoothing factor.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0
Smoothing FactorNumberany0.1

Outputs: Shape A with B smoothly carved out.

NameTypeRange
Signed DistanceNumbersdf

Smooth Union SDF

Blends two shapes together with smooth transitions. Higher smoothing creates more organic, melted-together looks.

Inputs: Two shape distances and smoothing factor (higher = more blending).

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0
Smoothing FactorNumberany0.1

Outputs: Blended shape distance.

NameTypeRange
Signed DistanceNumbersdf

Spherical SDF

Converts position to spherical coordinates. Useful for effects that radiate outward from a center point.

Inputs: Position and center point.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
CenterVectorvec[0, 0, 0]

Outputs: Spherical coordinates as (distance, horizontal angle, vertical angle).

NameTypeRange
Transformed PositionVectorvec

Subtract SDF

Cuts shape B out of shape A. Creates holes or carved effects.

Inputs: Shape A (the base) and shape B (the cutter).

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0

Outputs: Shape A with B removed.

NameTypeRange
Signed DistanceNumbersdf

Taper SDF

Gradually shrinks or expands shapes along an axis. Creates cone-like tapering effects from any shape.

Inputs: Position, taper axis, start/end scale, and length.

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Taper AxisVectorvec[0, 1, 0]
Start ScaleNumberany1
End ScaleNumberany0.2
LengthNumber≥02
CenterVectorvec[0, 0, 0]

Outputs: Tapered position and scale factor.

NameTypeRange
Transformed PositionVectorvec
Scale FactorNumbersdf

Translate SDF

Moves a shape to a different location. Apply before shape nodes to position them.

Inputs: Position (from Pixel Position) and translation offset (how far to move in X, Y, Z).

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
TranslationVectorvec[0, 0, 0]

Outputs: Shifted position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Twist SDF

Twists space around an axis. Creates spiral and corkscrew effects. Amount of twist increases along the axis.

Inputs: Position to transform, twist angle (rotation per unit distance), and axis (twist direction).

NameTypeRangeDefault
PositionVectorvec[0, 0, 0]
Twist AngleNumberany5
Twist AxisVectorvec[0, 1, 0]

Outputs: Twisted position to feed into shape nodes.

NameTypeRange
Transformed PositionVectorvec

Union SDF

Combines two shapes into one. Shows wherever either shape exists.

Inputs: Two shape distances to combine.

NameTypeRangeDefault
Distance ANumberany0
Distance BNumberany0

Outputs: Combined shape distance.

NameTypeRange
Signed DistanceNumbersdf