Nodes/ComfyUI XWAVE Nodes/XWAVE Cellular Noise
ComfyUI Node

XWAVE Cellular Noise

Cellular noise that actually looks like cells, not static

By XWAVEart·Created about a year ago·Updated about a year ago· 2
XWAVE Cellular Noise
  • image
  • IMAGE
circle_size32
layoutgrid
noise_typergb
blend_modeoverlay
center_noise0.0
edge_noise1.0
gradient_typelinear
reverse_gradientfalse
opacity1.00
antialiasfalse
palette_path

Most "add noise" nodes give you uniform static - same grain everywhere, and it reads as a cheap Instagram filter. XWAVE Cellular Noise is the opposite: it lays down a structured pattern of circular noise cells and blends them into your image with a gradient, so you get an organic, almost biological texture instead of a flat snowstorm. It's the newest node in the pack, and honestly the most interesting one.

What it's for

It's an overlay/texture node. Feed it any image, pick how big the cells should be and how much noise lives at each cell's center versus its edge, and out comes the image with that cellular texture burned in via one of eleven blend modes. If you've ever wanted a Voronoi-ish, iridescent, "living skin" look on a portrait or a poster, this is the node. It also does double duty as a weird-but-cheap way to add filmic texture that isn't uniform - set noise_type to gaussian or grayscale, keep opacity low, and you've got organic grain with zero banding.

How it works

The backend covers the image in a grid (or staggered hex packing) of circles. For each cell it generates noise - raw RGB random, grayscale, palette, or gaussian - then blends only that region using a distance-based profile: center_noise controls the noise amount at the cell center, edge_noise at the rim, and gradient_type (linear or radial) shapes the falloff between them. Cells past the radius fade out instead of cutting off, which is what kills the hard "stamp" look. reverse_gradient flips the profile so cells are noisy at the center instead of the edges.

The palette_path input is the hidden gem: point it at a plain text file of R G B triplets (one per line) and the cells will be filled from that palette instead of random colors.

The inputs that matter

  • circle_size (8–128) - cell diameter. Small = fine texture, large = chunky organic plates.
  • layout - grid or hex. Hex packs tighter and gives that honeycomb vibe.
  • noise_type - rgb, grayscale, palette, gaussian.
  • blend_mode - eleven options; overlay is the default and usually the right call. difference is where the weirdness lives.
  • center_noise / edge_noise (0–1) - the cell interior-to-rim noise ratio. This pair is the soul of the node.
  • opacity (0–1) - blend strength. Start at 0.3–0.5, don't max it.
  • antialias - accepted but currently does nothing in the shipped code. Ignore it.

Output is a single IMAGE, wired straight into a Preview or Save node.

Installing it

It ships in the ComfyUI XWAVE Nodes pack. In ComfyUI Manager, search "XWAVE" and install ComfyUI XWAVE Nodes, then restart. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/XWAVEart/comfyui-xwave-xlitch-nodes
cd comfyui-xwave-xlitch-nodes
pip install -r requirements.txt

Dependencies are just Pillow, numpy and scipy - no model downloads, no API keys, pure CPU. You need nothing else from this pack to use it.

Common issues

  • Palette files silently fail. If the path is wrong or the file is empty, the node logs a warning and falls back to RGB noise. There's no error dialog - check your console.
  • Small circle_size on a big image is slow. It's a per-cell numpy loop, so tiny cells over a 4K canvas can take a few seconds. Fine for one frame; don't put it before a video batch with circle_size 8.
  • Everything gets covered at full opacity. With overlay and opacity 1.0 the texture dominates. Dial opacity back - this is a layer, not a paint bucket.

One last thing: this pack is brand new and has essentially zero community footprint yet, so the normal "check the issues tab" advice is thin on the ground. If something misbehaves, the author's GitHub issues page is the only real channel. For a node this early, judge it with your own eyes - but this one earns a look.

CategoryXWAVE/Noise

Inputs (12)

NameTypeDefaultDescription
imageIMAGE
circle_sizeINT328–128
layoutCOMBOgrid2 options: grid, hex
noise_typeCOMBOrgb4 options: rgb, grayscale, palette, gaussian
blend_modeCOMBOoverlay11 options: overlay, add, multiply, screen, soft_light, hard_light, +5
center_noiseFLOAT0.00–1
edge_noiseFLOAT1.00–1
gradient_typeCOMBOlinear2 options: linear, radial
reverse_gradientBOOLEANfalse
opacityFLOAT1.000–1
antialiasBOOLEANfalse
palette_pathoptSTRING

Outputs (1)

NameTypeDescription
IMAGEIMAGE