Skip to content

Noise Nodes

Curl Noise

Curl of a noise field at Position+offset: divergence-free direction vectors for wind and flow. Seed produces a distinct field per value.

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Direction (Vector3)

Tips

  • Curl noise produces vectors that never converge or diverge: particles following curl noise swirl and flow without clumping or dispersing. Ideal for river meanders, wind direction, and scatter orientation.
  • Feed the Direction output into a GeometryTransform Rotate X/Z (after converting to Euler) to orient scatter instances along the flow field.

Domain Warp

Warps the sampling coordinate by a noise field before reading the output: organic flowing distortion. Seed produces a distinct warp pattern per value.

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Strength (Float)
  • Seed (Float)

Outputs

  • Value (Float)

Options

  • noiseType: Noise algorithm used for both the warp field and the output sample: Perlin is smoother; Simplex is slightly sharper.
  • outputMode: Output range of the noise sample at the warped coordinate. Unipolar [0, 1] or Bipolar [-1, 1].

Tips

  • Domain Warp displaces the coordinate, not the output value. Value is still a [0,1] (or [-1,1] bipolar) scalar sampled at the warped position.
  • Chain: wire a DomainWarp Value into another noise node’s X/Y/Z inputs for multi-level warping. Increase Strength for stronger distortion.

Erode Height

Applies the Advanced Terrain Erosion Filter (Rune Skovbo Johansen, MPL-2.0) at a sample point. Outputs a signed height delta and a ridge/crease map. Loop N times for multi-pass erosion.

Inputs

  • Position (Vector3)
  • Height (Float)
  • Slope X (Float)
  • Slope Y (Float)
  • Fade Target (Float)

Outputs

  • Height Delta (Float)
  • Ridge Map (Float)

Options

  • scale: Horizontal and vertical scale of the erosion kernel. Larger values produce broader, more pronounced gullies.
  • strength: Overall erosion intensity multiplier. Increase for a stronger height change per pass; decrease for a subtle single-pass effect.
  • gullyWeight: Balance between gully-carving and ridge-sharpening [0, 1]. 0 = ridge sharpening only; 1 = full gully erosion. Default 0.5 mixes both.
  • detail: Controls how strongly higher-frequency octaves are restricted to steep slopes. Increase to concentrate fine erosion detail on cliff faces and suppress it on gentle slopes.
  • octaves: Number of erosion octave passes per evaluation. More passes produce finer gully branching. Default 5; above 8 adds minimal visible detail.

Limitations

  • Slope X / Slope Y must be the analytical gradient (dh/dx, dh/dz) of the Height input. Unwired Slope inputs are treated as zero, disabling erosion directionality.

Tips

  • Get Slope X/Y from a Fractal Noise node configured to output gradient derivatives, or compute them manually with finite differences.
  • Loop this node N times: feed the previous Height Delta back into Height each pass for progressive multi-pass erosion.
  • Ridge Map outputs -1 at creases, 1 at ridges: useful for vegetation density, wetness masking, or material blending.

Fractal Noise

Fractal noise (fBm): stacks noise octaves for natural-looking terrain and cloud detail. Seed produces a distinct fractal pattern per value.

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Value (Float)

Options

  • noiseType: Base noise algorithm for each octave: Perlin is smoother; Simplex is slightly sharper.
  • outputMode: Output range. Unipolar maps to roughly [0, 1]: use for density masks and height blending. Bipolar maps to roughly [-1, 1]: use for additive displacement.
  • octaves: Number of stacked noise layers. More octaves add finer surface detail. Values above 6 add little visible detail at normal world scales; capped at 16 at evaluation time.
  • lacunarity: Frequency multiplier between octaves. 2 = each layer is twice as fine as the previous. Typical range 1.5–3.
  • gain: Amplitude multiplier between octaves. 0.5 = each layer is half the height of the previous. Lower values flatten small-scale detail.

Limitations

  • Octaves capped at 16 at evaluation time to prevent runaway evaluation in Player builds.

Tips

  • Octaves > 6 adds no visible detail at normal world scales: keep at 4 for fast previews.
  • Lacunarity: frequency multiplier between octaves (2 = each layer is twice as fine). Gain: amplitude multiplier (0.5 = each layer is half the height).
  • Unipolar output is roughly [0, 1]: use for height and density masks. Bipolar is roughly [-1, 1]: use for additive displacement.

Noise Field

Samples 3D noise at Position+offset. Wire Position for world-space sampling; set X/Y/Z as offsets or standalone coordinates. Seed isolates this field from other noise nodes.

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Value (Float)

Options

  • noiseType: Noise algorithm: Perlin produces smooth blended gradients; Simplex is slightly sharper with fewer grid artefacts at low frequencies.
  • outputMode: Output range. Unipolar maps to roughly [0, 1]: use for density masks and height blending. Bipolar maps to roughly [-1, 1]: use for additive displacement where negative moves down.

Tips

  • Unipolar mode outputs roughly [0, 1]: use for density masks and height blending. Bipolar mode outputs roughly [-1, 1]: use for additive displacement where negative moves down.
  • Wire a world-space position (e.g. from a scatter spawn) into Position and leave X/Y/Z at 0 for terrain-aligned noise. Leave Position unwired and set X/Y/Z for graph-local fixed coordinates.
  • Use a different Seed value for each independent noise field in the same graph to prevent identical patterns.

Phacelle Noise

Stripe-pattern noise aligned to a direction angle. Produces organic erosion-line and vein patterns. Scale controls cell density; keep Stripe Frequency near 1 for clean stripes.

Inputs

  • Position (Vector3)
  • Direction Angle (Float)

Outputs

  • Value (Float)

Options

  • scale: Cell density. Larger values zoom out and produce more stripe cells per world unit.
  • stripeFrequency: Stripe repeat rate within each cell. Keep near 1.0: values significantly above 1 produce moiré distortions.
  • offset: Phase shift along the stripe direction in full cycles [0, 1]. Slide the stripe pattern without changing its scale or angle.
  • normalization: Output normalisation strength [0, 1]. Higher values push stripe magnitude toward 1, reducing brightness variation between cells.

Ridged Noise

fBm variant: each octave folds noise with 1 - |s| for sharp ridge silhouettes. Unipolar: [0, 1]. Bipolar: [-1, 1].

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Value (Float)

Options

  • noiseType: Base noise algorithm for each octave: Perlin is smoother; Simplex is slightly sharper.
  • outputMode: Output range. Unipolar maps to roughly [0, 1]. Bipolar maps to roughly [-1, 1]: use for additive displacement.
  • octaves: Number of stacked noise layers. More octaves add finer ridge detail. Values above 6 add little visible detail at normal world scales.
  • lacunarity: Frequency multiplier between octaves. 2 = each layer is twice as fine as the previous.
  • gain: Amplitude multiplier between octaves. 0.5 = each layer contributes half the height. Lower values reduce fine-ridge prominence.

Tips

  • Use for mountain silhouettes and rock strata where sharp ridges are the primary visual feature. Regular fBm produces smooth hills; Ridged produces dramatic jagged peaks.
  • Invert by subtracting from 1 (Add node with A=1, negate, then Add) to get deep valleys instead of ridges.

Turbulence

fBm variant: each octave accumulates |s|: cloud and smoke-like turbulent patterns. Unipolar: [0, 1]. Bipolar: [-1, 1].

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Value (Float)

Options

  • noiseType: Base noise algorithm for each octave: Perlin is smoother; Simplex is slightly sharper.
  • outputMode: Output range. Unipolar maps to roughly [0, 1]: use for density masks. Bipolar maps to roughly [-1, 1]: use for additive displacement.
  • octaves: Number of stacked noise layers. 4–6 give the best cloud quality; above 6 adds little visible detail.
  • lacunarity: Frequency multiplier between octaves. 2 = each layer is twice as fine as the previous.
  • gain: Amplitude multiplier between octaves. 0.5 = each layer is half the brightness. Lower values reduce high-frequency lumpiness.

Tips

  • Use for smoke, fire, and cloud density masks. Turbulence produces bright lumpy clusters rather than fBm’s smooth gradients.
  • Octaves 4–6 give the best visual quality for cloud shapes; fewer octaves look blocky, more add little visible detail.

Voronoi Noise

Noise field: cellular (Voronoi): outputs Distance to nearest cell, unique Cell ID [0,1], and Centroid of the owning cell. Seed produces a distinct pattern per value.

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Distance (Float)
  • Cell ID (Float)
  • Centroid X (Float)
  • Centroid Y (Float)
  • Centroid Z (Float)

Tips

  • Cell ID is a stable random value per cell: use it as an index into a colour table, a biome selector, or a weighted-selection node to assign a different asset or material to every Voronoi region.
  • Centroid X/Z give the world-XZ position of the owning cell’s feature point. Use to snap scatter objects to cell centres, or to compute per-cell transform offset.
  • Distance output is roughly [0, 0.7]: remap to [0, 1] with a Remap node before using as a density mask.

Worley Noise

Cellular/Worley noise at Position+offset. F1=nearest cell distance, F2=second-nearest. Seed produces distinct cell layouts per value.

Inputs

  • Position (Vector3)
  • X (Float)
  • Y (Float)
  • Z (Float)
  • Scale (Float)
  • Seed (Float)

Outputs

  • Value (Float)

Options

  • mode: F1: distance to the nearest cell feature point; dark at centres, bright at edges. F2: distance to the second-nearest feature point; produces smoother ridgelines between cells.
  • outputMode: Output range. Unipolar maps to roughly [0, 1]: use for density masks. Bipolar maps to roughly [-1, 1]: use for additive displacement.

Tips

  • F1 mode: dark at cell centres, bright at cell edges: good for cracked-earth or stone-tile textures. F2 mode: smoothly bright at edges of the second-nearest cell: good for organic membranes.
  • Combine F2 - F1 (subtract two Worley nodes, same Seed) for sharp ridgeline patterns that separate cells evenly.