Attribute Assign
Write attribute values to points and shapes.
What it does
Attribute Assign writes a value onto every point or shape in a collection as a named attribute, readable anywhere downstream. A single number, vector, or colour broadcasts the same value to every element. A per-element array, from Noise, Flood Fill, or similar, paints a different value onto each one.
A weight input restricts or softens the write: wire in a weight array, name a selection attribute, or both. They multiply together, and an element picks up the new value only where its combined weight is above zero. A Curve wired into Values authors a ramp along an analytic shape's length, sampling the curve and multiplying it into the named attribute per anchor.
When to use it
Storing a computed value (distance, noise, colour) as a named attribute for another node to read later.
Painting a value onto part of a collection: a selection or weight array wired into the mask inputs instead of writing everywhere.
A width or colour ramp following a curve along a shape's length.
Initialising a fresh attribute on newly created or scattered points.
| Parameter | Type | Default |
|---|---|---|
collection_in | OneOf([Collection]) | — |
values | OneOf([Number, Vec3, Color, NumberArray, Vec3Array, ColorArray, Curve]) | — |
mask_weights | OneOf([Number, NumberArray]) | — |
attribute_name | String | "weight" |
clamp | Boolean | false |
mask | String | "" |
strength | Number | 1 |
Gotchas
Clamp affects the direct value-assignment path only. When Values is a Curve, the result is left unclamped deliberately, so the ramp's shape is not flattened.
The Curve input for Values drives a ramp on analytic shapes only, sampling the curve along the shape and multiplying it into the attribute. On plain point collections a wired Curve has nothing to walk along, so use a Number, Vec3, Color, or array input there.
Naming a Mask attribute that does not exist on the collection is a silent no-op: nothing is written. Check that the name in Mask matches an attribute present upstream, for example the "selected" weight from a selection node, or clear it back to empty to write everywhere.
Worked example
Add Attribute Assign and wire a collection of points or shapes into Collection In.
Wire a Noise or Flood Fill array into Values, and set Attribute Name to something descriptive like "density".
To restrict the write, wire a weight array into Mask Weights, or type the name of an existing selection attribute into Mask.
Enable Clamp to hold the written values to 0–1.
Read the collection downstream. The new attribute is available on every element.
See also
Point · Scatter · Edit · Attributes