Fields & sampling

A field is a value that exists everywhere in space. Read it at any point to drive colour, motion, shape, or any parameter.

Most values are a single number, colour or vector. A field gives a different value at every point in space: noise filling a room, a gradient fading across the canvas, a distance from a surface.

You do not set the value. You ask the field for it at a location.

For the full set of field kinds (scalar, vector, colour, Volume, Distance Field and more) see Fields. This page covers the three things you do with them.

Driving a parameter spatially

Wire a field into a parameter and each point picks up its own value. Noise into colour gives mottled variation. A gradient into height pushes one side up and the other down. A radial field into scale makes things grow toward the centre.

A field reads itself anywhere: at a point, along a surface, or across a whole canvas. The same field also adapts to the slot it lands in. Feed noise into a colour slot and it reads as greyscale shading; feed it into a position and it reads as a push in space. There is no conversion step to add.

Sampling a field at your points

Sampling is each point of your geometry, particles, mesh or curve grabbing the field's value at its own location.

Wire both into a Sample node, the field into Source and the elements into Position, and every point reads the field where it sits. The result lands on the points as a named attribute, sampled unless you change it, and Apply Mode decides whether it replaces, adds to or multiplies what is already there. From there:

Downstream it behaves like any other attribute, readable in an The Expression language, a filter, or a colour ramp.

The attribute is written only when Position carries a collection. Hand it a bare position or a plain list of positions instead and the values come back as an array, with nothing attached and no channel collapse, because Channel is read on the way onto the collection and has nothing to act on otherwise. Leave Position unwired altogether and the node hands the source field straight back unchanged, which is the quickest way to preview a field through a Sample without committing to points yet.

Time decides which moment is read. At 0, the default, the field follows the playhead. Any other value pins evaluation to that second, so an animated field can be held at one frame while everything around it keeps moving.

Sampling reads the field as it is right now. If the field animates over time, re-sampling on each frame keeps your points in step with it.

Sampling things that are not fields

Mode decides what Source means, and Field is only the default.

Curve walks a curve or shape rather than evaluating a field, laying the elements on Position along it by even parameter spacing or even distance, or at t-values read from an attribute. Align turns each element to face along the curve and Curve Offset pushes it sideways.

The rest query a point set. Nearest Attribute copies a named attribute from the closest source point onto each query element, under that same name. Nearest Distance and Density answer with numbers: how far the closest source point is, and how crowded the neighbourhood is inside Max Radius. KNN Blend averages an attribute over the several nearest points. Splat Pick returns the indices of the gaussian splats nearest a point on screen. The four point queries also fill the node's Distance and Nearest Index outputs, which Field, Curve and Splat Pick leave empty.

The field ↔ geometry round trip

You can cross between fields and geometry in both directions.

Geometry → field. A mesh or a set of points can become a Distance Field (how far am I from this surface?) or a Volume (what is the density here?). Once it is a field it can be sampled, blended, displaced, or fed into anything that takes a field.

Field → geometry. Sample a vector field onto points to displace them. Use a Distance Field to carve, fill or grow a surface. Render a Volume directly as lit smoke or cloud.

Model something concrete, lift it into a field to manipulate it continuously, then bring it back to something you can render.

A common recipe: convert geometry to a Distance Field, blend or warp it in field-space (where shapes melt and merge smoothly), then render or re-mesh the result. The smoothness you get blending fields is hard to fake with geometry alone.

See also