Nodes/ComfyUI-TextureAlchemy/Procedural Noise Generator
ComfyUI Node

Procedural Noise Generator

Perlin, voronoi, and everything between

By amtarr·Created 9 months ago·Updated 4 months ago· 58
Procedural Noise Generator
    • noise
    width512
    height512
    noise_type
    scale50
    octaves4
    persistence0.50
    lacunarity2.0
    tileabletrue
    seed0

    Every procedural texture starts with noise. Roughness variation, dirt distribution, height map wobble - the map that makes a surface look organic instead of flat is usually just noise with the right character. Procedural Noise Generator is the node that hands you that character on demand: six noise types, seeded, tileable, and resolution-controlled, with no image needed on the input side.

    It's the sibling of the pack's Pattern Generator - one makes structure, the other makes texture. Combined they're a solid base for roughness maps, height fields, and masks without ever loading a file.

    How it works

    Six types, each with a distinct flavor:

    • perlin - smooth, cloud-like gradients. The default vibe for "natural variation."
    • fbm - fractional Brownian motion: layered perlin with octaves. More structured, more organic.
    • turbulence - fbm with the noise folded at zero, producing sharp "fractal fire" ridges. Great for veins, cracks, and stone.
    • voronoi - nearest-point distance cells. Your go-to for cracked mud, tiles, or stone slabs.
    • cellular - the second-nearest distance field, giving the organic "jellyfish cell" look.
    • white - pure random per pixel. Mostly useful for grain or as a debug input.

    The controls are the standard noise toolkit: scale (frequency), octaves (detail layers), persistence (how fast amplitude drops per octave), lacunarity (how fast frequency rises), tileable (on by default - keep it on if you're building repeating textures), and seed. Output is a single noise IMAGE, grayscale replicated to RGB.

    What actually matters

    For most texture work you only need two knobs: scale and seed. Lower scale = bigger features, higher = finer grain. The octaves/persistence/lacunarity trio is where you go when perlin alone is too smooth - crank octaves to 6+ for rich detail, and switch to turbulence when you want hard, ridged edges instead of soft blobs. If you want a seamless noise field (you usually do), keep tileable on.

    Two honest caveats. First, voronoi and cellular compute against every cell point directly, so at high resolutions or tiny scale they're noticeably slower than the perlin family - fine at 512, sluggish at 4096. Second, this is noise generation, not a magic texture maker: it's a base layer you'll blend, mask, or run through a color ramp. Pair it with the pack's Multi-Texture Blender or a roughness map and it earns its keep.

    Installation

    Ships in amtarr/ComfyUI-TextureAlchemy under Add Node → Texture Alchemist → Procedural. Install via ComfyUI Manager (search "TextureAlchemy") or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/amtarr/ComfyUI-TextureAlchemy
    

    Restart ComfyUI. No dependencies - pure torch math, instant results.

    CategoryTexture Alchemist/Procedural

    Inputs (9)

    NameTypeDefaultDescription
    widthINT51264–8192
    heightINT51264–8192
    noise_typeCOMBO6 options: perlin, fbm, turbulence, voronoi, cellular, white
    scaleFLOAT501–500Noise scale/frequency
    octavesINT41–8Number of detail levels
    persistenceFLOAT0.500–1Amplitude falloff per octave
    lacunarityFLOAT2.01–4Frequency multiplier per octave
    tileableBOOLEANtrue
    seedINT00–18446744073709550000

    Outputs (1)

    NameTypeDescription
    noiseIMAGE