Multi-Output Nodes
A multi-output node exposes more than one output port, each carrying different data derived from the same computation. Because every port comes from a single evaluation, the outputs always agree with each other: a cell-color map and a distance map taken from one Voronoi node describe the same scatter, and an ambient occlusion map and a bent normal from one Surface Detail node can never disagree about radius.
Seven node types do this. Each is listed below with its ports; full parameter tables live on the linked reference pages.
Voronoi
Section titled “Voronoi”Type id: voronoi_noise. See Generators.
| Output | Carries |
|---|---|
| Cells | Flat random fill per region with dark walls between them; the default output. |
| F1 Distance | Distance to the nearest seed point, normalized so the ramp spans 0 to 1 whatever the scale. |
| Edge Distance | Distance to the nearest region boundary: black exactly on the boundary, rising into the region. The classic crack and edge mask. It is a true boundary distance, not an F2−F1 approximation, and it is the same distance the Cells port cuts its walls from, so the two round and thicken together. |
| Cell Color | A random RGB color, flat-filled per region. |
| Cell Position | The owning seed point’s location, flat-filled per region. Feeds per-region gradients and warps. |
| Cell ID | A stable random gray per region, for driving per-region variation. |
Type id: brick. See Generators.
| Output | Carries |
|---|---|
| Bricks | The brick faces, each shaded with its own random tone; the default output. |
| Mortar | The exact complement of the brick mask, so the two never leave a hairline gap or overlap along the bevel. |
| Cell ID | A stable random gray per brick, for per-brick color or roughness variation. |
| Cell UV | The position within each brick, 0 to 1 on each axis, carried in red and green. Wire it into a gradient or a sampler to place something inside every brick. |
Tile Sampler
Section titled “Tile Sampler”Type id: tile_sampler. See Generators.
| Output | Carries |
|---|---|
| Pattern | The composited scatter; the default output. |
| Instance ID | A stable identifier for the tile owning each pixel. |
| Random Value | That tile’s random value, for driving per-instance variation downstream. |
| Position | The owning tile’s center position. |
Frequency Split
Section titled “Frequency Split”Type id: high_pass. See Filters.
| Output | Carries |
|---|---|
| High Pass | Detail finer than the radius, centered on mid-gray (0.5 means no deviation from the local average), which drops straight into an Overlay or Add blend. |
| Low Pass | The broad structure that was subtracted; this is the blur the high pass removed. |
Edge Detect
Section titled “Edge Detect”Type id: edge_detect. See Filters.
| Output | Carries |
|---|---|
| Magnitude | Bright where the input has an edge, dark on flat areas. |
| Direction | The direction each edge runs, encoded in red and green centered on 0.5 exactly like a normal or flow map, so it feeds Warp, Vector Morph and Rotate’s Vector mode unchanged. It is normalized, so a faint edge still reports a usable direction; strength is Magnitude’s job. |
Surface Detail
Section titled “Surface Detail”Type id: ao_from_height. See Normal.
| Output | Carries |
|---|---|
| Occlusion | Classic ambient occlusion, dark where the neighborhood stands above the point. |
| Thickness | How enclosed the point is, sampled at double the radius: bright in troughs with material all around, dark on exposed ridges. Drives subsurface and translucency masks. |
| Bent Normal | The average unoccluded direction encoded as a normal map, so cavities self-shadow correctly when lit along it. |
Height Blend
Section titled “Height Blend”Type id: height_blend. See Blend.
| Output | Carries |
|---|---|
| Height | The two inputs merged by height so the taller surface wins; the default output. |
| Blend Mask | B’s share of the blend, which is the height-sorted boundary itself. Feed it to ordinary Blend nodes so the matching base color, roughness and normal layers composite along the same interlocking seam. Re-deriving that boundary with a Threshold would not line up. |