Affine Worley Edges Noise Options
Affine's Worley edges pattern
- noise_options
WASWorleyEdgesOptions tunes Affine's worley_edges pattern, the cellular-noise mask in the WAS Affine pack. Worley noise is the "cells around scattered points" texture - think lizard skin, cracked mud, stained-glass, Voronoi diagrams. The worley_edges variant doesn't fill the cells; it emphasizes the borders between them. As an affine mask, that means the transform gets applied in a web of fine cell-boundary lines, which is a fantastic way to add organic, stone-like or leather-like texture without touching the interior of each cell.
The README's own guidance puts worley_edges in the "organic content" bucket alongside perlin, and that's the honest use case: rock, bark, cracked terrain, reptile skin, anything where a cellular crackle is a natural fit. It's also a sleeker alternative to plain Perlin when you want structure that reads as structure rather than soft clouds.
How it works
Three inputs, and all three are worth understanding even though the defaults are sane:
worley_points_per_kpx(default 3, range 0.1–200) - cell density, points per kilo-pixel (1000 px). Higher density = smaller, finer cells. At 3 you get a broad, readable cell pattern; crank it up and it turns into fine-grained crackle.worley_metric- L2 (Euclidean) or L1 (Manhattan) distance for the Voronoi computation. L2 gives the familiar rounded-cell geometry; L1 produces the diamond-shaped, axis-skewed variant. Most people leave it on L2; L1 is a fun change of character for geometric-flavored work.worley_edge_sharpness(default 1.2, range 0.1–8) - an exponent that emphasizes the cell borders. Higher values make the edge lines crisper and thinner; lower values soften them into wide boundary bands.
Because the mask concentrates energy on cell edges, the affine scale/bias you apply through it lands as a web of lines. Combined with a darkening scale this reads like engraved cracks; with a subtle positive scale it's more like a faint leather grain.
It outputs the standard noise_options DICT - wire it into the noise_options input on Latent Affine, the KSampler Affine family, or the Ultimate Affine KSampler variants, with pattern set to worley_edges. noise_options overrides the base options dict (from WASLatentAffineCommonOptions) where keys overlap, per the source.
Installing it
It's part of WAS Affine (WASasquatch/was_affine), by the author of the WAS Node Suite. Via Manager, search "WAS Affine" and install; or:
cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/was_affine.git
Restart ComfyUI after. No model files to download; dependencies are torch/numpy (plus matplotlib in requirements.txt), and there's no UltimateSDUpscale requirement despite the sampler names.
Where it shines and where it doesn't
- Rock and terrain are the sweet spot. A
worley_edgesmask withpoints_per_kpxaround 2–4 and a darkening scale adds convincing surface definition to cliff faces and stone walls. - Keep the density low for organic subjects. At high
points_per_kpxthe edges get so fine they approach noise and you lose the cellular readability that makes this pattern interesting. - The usual config-node catch applies: the consuming affine node's
patternmust beworley_edges, or this node sits there doing nothing. And since the cell edges are the whole effect, raisingworley_edge_sharpnessfar past ~3 starts to look etched rather than textured - usually not what you want on skin.
Organic, structural, and pleasantly distinct from every other mask in the pack. If your render needs a crackle, this is the knob.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| worley_points_per_kpx | FLOAT | 3.00.1–200 | Cell density: points per kilo-pixel (1000 px). Higher = finer cells. |
| worley_metric | COMBO | L2 | Distance metric used by Worley noise (L2=Euclidean, L1=Manhattan). |
| worley_edge_sharpness | FLOAT | 1.20.1–8 | Exponent for emphasizing edges; higher = crisper edges. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| noise_options | DICT | — |