Contour
Extract isolines, skeleton, or UVs from any scalar field.
What it does
Contour turns any scalar field, a Distance Field, a Noise, or anything else drivable to a single value per point, into vector shapes or a UV map.
Isoline traces a curve at one threshold value, the equivalent of a single elevation line on a map. Skeleton finds the field's ridge lines, the medial axis for a Distance Field, giving a spine running through the shape. Both output analytic shapes, fillable and strokeable and accepted by any node that takes a shape. UVs skips curve-tracing and outputs an image: a raster where each pixel's colour encodes its field value and angular position, a texture-coordinate map driven by field shape rather than by a mesh.
When to use it
The outline of a Distance Field or Noise at a specific value: Isoline, with Distance set to that threshold.
A spine or centreline running through a shape: Skeleton.
A field turned into curves to animate, stroke or offset: Isoline or Skeleton, then downstream shape nodes.
UV coordinates following a field's shape instead of a fixed mesh layout: UVs.
A contour of a slice through a Volume: pass it through Rasterize with a plane, then into Contour (Isoline).
| Parameter | Type | Default |
|---|---|---|
source | OneOf([FieldOf(Sdf), Field, FieldOf(Color)]) | — |
mode | String | "Isoline" |
distance | Number | 0 |
detail | Number | 0.300 |
uv_mode | String | "Boundary" |
smoothness | Number | 0.500 |
resolution | Number | 256 |
strength | Number | 1 |
Gotchas
Skeleton's Detail slider trades noise for cleanliness. Low values keep every ridge branch, which can look busy; high values keep only the strongest spine.
UV Mode (Boundary / Skeleton) is not yet wired to change the UV layout. Both options currently produce the same angle-based mapping. Treat it as a placeholder until it is implemented.
For a Distance Field, Distance at 0 traces the field's boundary; positive values trace an outset, negative an inset. For a general, non-distance field, Distance at its default of 0 traces the field's mid-level rather than a literal zero-crossing.
There is no built-in volume-slicing mode. To contour a slice through a Volume, compose Rasterize (with a plane) into Contour. A Volume fed directly into Source will not work.
Worked example
Add a Contour node and wire a field-producing node (a Distance Field shape, or a Noise) into Source.
Leave Mode on Isoline. Adjust Distance to move the traced contour inward or outward.
Raise Smoothness if the curve looks too angular, or lower it to keep sharp detail.
Switch Mode to Skeleton to trace the shape's spine instead, and tune Detail to control how many ridge branches survive.
Raise Resolution if the traced curve looks blocky or is missing fine detail.
See also
SDF · Rasterize · Flood Fill · Fields