Writes resultAttribute = left + right per element from float bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Float Or AttributeConstant or attribute | – |
| right | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.AddFloatValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.AddFloatValues- Attribute-name inputs
resultAttributeName left right
Writes resultAttribute = left + right per element from int bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Int Or AttributeConstant or attribute | – |
| right | Int Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.AddIntValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.AddIntValues- Attribute-name inputs
resultAttributeName left right
Computes resultAttribute = A + B per element from Vector3 bindings (constant or attribute).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Vector3 Or AttributeConstant or attribute | – |
| b | Vector3 Or AttributeConstant or attribute | – |
| resultAttributeName | String | "result" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.AddVectorAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.AddVectorAttribute- Attribute-name inputs
resultAttributeName a b
Multiplies each element's attribute value by a constant scalar factor.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attribute | Float Or AttributeConstant or attribute | – |
| scalar | Float | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.ApplyScalarAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.ApplyScalarAttribute- Attribute-name inputs
resultAttributeName attribute
Computes the component-wise average of a Vector3 value across all elements, returning the result as a scalar Vector3.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Vector3 Or AttributeConstant or attribute | – |
OutputAverageVector3The component-wise average across all elements
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.AverageVector3- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.AverageVector3- Attribute-name inputs
value
Clamps a float value between min and max per element.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Float Or AttributeConstant or attribute | – |
| min | Float Or AttributeConstant or attribute | – |
| max | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.ClampFloatAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.ClampFloatAttribute- Attribute-name inputs
resultAttributeName value min max
Clamps each component of a Vector3 attribute between min and max bindings per element, updating it in place.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| vector3AttributeName | String | – |
| min | Vector3 Or AttributeConstant or attribute | – |
| max | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.ClampVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.ClampVector3Attribute- Attribute-name inputs
vector3AttributeName vector3AttributeName min max
Compares a numeric attribute against a value and writes a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attribute | String | – |
| op | CompareOp | – |
| value | Float | – |
| outputMask | String | – |
OutputElementsElement SetElementSet with output mask
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.Compare- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.Compare- Attribute-name inputs
attribute outputMask
Compares two numeric attributes on each row and writes a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| leftAttribute | String | – |
| op | CompareOp | – |
| rightAttribute | String | – |
| outputMask | String | – |
OutputElementsElement SetElementSet with output mask
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.CompareAttributes- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.CompareAttributes- Attribute-name inputs
leftAttribute rightAttribute outputMask
Creates/overwrites a Vector3 attribute from X/Y/Z float bindings (constants or per-element attributes).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| x | Float Or AttributeConstant or attribute | – |
| y | Float Or AttributeConstant or attribute | – |
| z | Float Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeBindings.CreateVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeBindings.CreateVector3Attribute- Attribute-name inputs
attributeName
Computes resultAttribute = cross(A, B) per element from Vector3 bindings (constant or attribute).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Vector3 Or AttributeConstant or attribute | – |
| b | Vector3 Or AttributeConstant or attribute | – |
| resultAttributeName | String | "result" |
| normalizeResult | Boolean | On |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.CrossVectorAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.CrossVectorAttribute- Attribute-name inputs
resultAttributeName a b
Writes resultAttribute = left / right per element from float bindings (safe divide).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Float Or AttributeConstant or attribute | – |
| right | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.DivideFloatValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.DivideFloatValues- Attribute-name inputs
resultAttributeName left right
Writes resultAttribute = left / right per element from int bindings (safe divide).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Int Or AttributeConstant or attribute | – |
| right | Int Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.DivideIntValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.DivideIntValues- Attribute-name inputs
resultAttributeName left right
Divides Vector3 attribute A by Vector3 binding B per element (safe component-wise divide), updating A in place.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Vector3 Or AttributeConstant or attribute | – |
| b | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.DivideVector3Column- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.DivideVector3Column- Attribute-name inputs
a b a
Computes resultAttribute = dot(A, B) per element from Vector3 bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Vector3 Or AttributeConstant or attribute | – |
| b | Vector3 Or AttributeConstant or attribute | – |
| resultAttributeName | String | "result" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.DotVectorAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.DotVectorAttribute- Attribute-name inputs
resultAttributeName a b
Writes the 0-based element index to the result attribute for each row.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.ElementIndexAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.ElementIndexAttribute- Attribute-name inputs
resultAttributeName
Evaluates a single AnimationCurve for each element, using a selected float attribute as the time input.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| curve | Animation Curve | – |
| Time Attribute | Float Or AttributeConstant or attribute | – |
| outputAttribute | String | "curveValue" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Curve.EvaluateOnSet- C# method
CuriousTrove.OctoShaper.Library.Nodes.Math.CurveNodes.EvaluateCurveOnSet- Attribute-name inputs
outputAttribute
Extracts one component from a Vector3 binding into a float attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Vector3 Or AttributeConstant or attribute | – |
| component | Vector3Component | X |
| resultAttributeName | String | "result" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.GetVector3ComponentAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.GetVector3ComponentAttribute- Attribute-name inputs
resultAttributeName value
Linearly interpolates between Vector3 bindings A and B by factor T per element: result = A + (B - A) * T.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Vector3 Or AttributeConstant or attribute | – |
| b | Vector3 Or AttributeConstant or attribute | – |
| t | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | "result" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.LerpVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.LerpVector3Attribute- Attribute-name inputs
resultAttributeName a b t
Finds the maximum float value across all elements, returning the result as a scalar.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Float Or AttributeConstant or attribute | – |
OutputMaxFloatThe maximum value across all elements
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MaxFloatAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MaxFloatAttribute- Attribute-name inputs
value
Finds the minimum float value across all elements, returning the result as a scalar.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Float Or AttributeConstant or attribute | – |
OutputMinFloatThe minimum value across all elements
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MinFloatAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MinFloatAttribute- Attribute-name inputs
value
Writes resultAttribute = left * right per element from float bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Float Or AttributeConstant or attribute | – |
| right | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MultiplyFloatValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MultiplyFloatValues- Attribute-name inputs
resultAttributeName left right
Writes resultAttribute = source * multiplier per element (int × float => float).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| source | Int Or AttributeConstant or attribute | – |
| multiplier | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MultiplyIntByFloat- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MultiplyIntByFloat- Attribute-name inputs
resultAttributeName source
Writes resultAttribute = left * right per element from int bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Int Or AttributeConstant or attribute | – |
| right | Int Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MultiplyIntValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MultiplyIntValues- Attribute-name inputs
resultAttributeName left right
Multiplies a selected Vector3 attribute by a float binding (constant or per-element attribute), updating it in place.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| vector3AttributeName | String | – |
| multiplier | Float Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MultiplyVector3ByFloat- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MultiplyVector3ByFloat- Attribute-name inputs
vector3AttributeName vector3AttributeName multiplier
Multiplies a selected Vector3 attribute by a Vector3 binding (constant or per-element attribute), updating it in place.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| vector3AttributeName | String | – |
| multiplier | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.MultiplyVector3ByVector3- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.MultiplyVector3ByVector3- Attribute-name inputs
vector3AttributeName vector3AttributeName multiplier
Normalizes a selected Vector3 attribute per element, updating it in place. Vectors with near-zero length become zero.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| vector3AttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.NormalizeVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.NormalizeVector3Attribute- Attribute-name inputs
vector3AttributeName vector3AttributeName
Samples 2D Perlin noise at each element's position and writes the result to a float attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| position | Vector3 Or AttributeConstant or attribute | – |
| frequency | Float Or AttributeConstant or attribute | – |
| outputAttribute | String | "noise" |
| seed | Integer | 1 |
OutputElement Set
- Requires
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.NoiseNodes.PerlinNoise2D- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.NoiseNodes.PerlinNoise2D- Attribute-name inputs
outputAttribute position
Samples 3D Perlin noise at each element's position and writes the result to a float attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| position | Vector3 Or AttributeConstant or attribute | – |
| frequency | Float Or AttributeConstant or attribute | – |
| outputAttribute | String | "noise" |
| seed | Integer | 1 |
OutputElement Set
- Requires
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.NoiseNodes.PerlinNoise3D- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.NoiseNodes.PerlinNoise3D- Attribute-name inputs
outputAttribute position
Remaps a float value from [inMin, inMax] to [outMin, outMax] per element.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Float Or AttributeConstant or attribute | – |
| inMin | Float Or AttributeConstant or attribute | – |
| inMax | Float Or AttributeConstant or attribute | – |
| outMin | Float Or AttributeConstant or attribute | – |
| outMax | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.RemapRangeAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.RemapRangeAttribute- Attribute-name inputs
resultAttributeName value inMin inMax outMin outMax
Scales a selected Vector3 attribute by a Vector3 binding (constant or per-element attribute) per component, updating it in place.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| vector3AttributeName | String | – |
| scale | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.ScaleVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.ScaleVector3Attribute- Attribute-name inputs
vector3AttributeName vector3AttributeName scale
Writes a bool attribute from a bool binding, optionally gated by a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| value | Bool Or AttributeConstant or attribute | – |
| mask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SetBoolAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SetBoolAttribute- Attribute-name inputs
mask attributeName value
Writes a color constant or copies a color attribute into a named attribute.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.SetAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.SetAttribute- Attribute-name inputs
resultAttributeName color
Writes a float attribute from a float binding, optionally gated by a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| value | Float Or AttributeConstant or attribute | – |
| mask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SetFloatAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SetFloatAttribute- Attribute-name inputs
mask attributeName value
Writes an int attribute from an int binding, optionally gated by a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| value | Int Or AttributeConstant or attribute | – |
| mask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SetIntAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SetIntAttribute- Attribute-name inputs
mask attributeName value
Writes a Quaternion attribute from a Quaternion binding, optionally gated by a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| value | Quaternion Or AttributeConstant or attribute | – |
| mask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SetQuaternionAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SetQuaternionAttribute- Attribute-name inputs
mask attributeName value
Writes a deterministic random bool per element using id, falling back to row index.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| probability | Float Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.Random.SetRandomBoolAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.Random.SetRandomBoolAttribute- Attribute-name inputs
attributeName probability
Writes a deterministic random float per element using id, falling back to row index.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| min | Float Or AttributeConstant or attribute | – |
| max | Float Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.Random.SetRandomFloatAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.Random.SetRandomFloatAttribute- Attribute-name inputs
attributeName min max
Writes a random int per element row to the selected attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| min | Integer | – |
| max | Integer | – |
| seed | Integer | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.Random.SetRandomIntAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.Random.SetRandomIntAttribute- Attribute-name inputs
attributeName
Writes a deterministic random rotation per element using id, falling back to row index.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| minEuler | Vector3 Or AttributeConstant or attribute | – |
| maxEuler | Vector3 Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
| uniform | Boolean | Off |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.Random.SetRandomRotationAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.Random.SetRandomRotationAttribute- Attribute-name inputs
attributeName minEuler maxEuler
Writes a deterministic random Vector3 per element using id, falling back to row index.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| min | Vector3 Or AttributeConstant or attribute | – |
| max | Vector3 Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
| uniform | Boolean | Off |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Generators.Random.SetRandomVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Generation.Random.SetRandomVector3Attribute- Attribute-name inputs
attributeName min max
Writes a string attribute from a string binding, optionally gated by a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| value | String Or AttributeConstant or attribute | – |
| mask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SetStringAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SetStringAttribute- Attribute-name inputs
mask attributeName value
Writes a texture reference constant or copies a texture attribute. Does not copy pixel data.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| textureTexture asset constant or named texture-reference attribute. | Texture Or AttributeConstant or attribute | – |
| resultAttributeName | String | "texture" |
OutputElement Set
Technical details
- Node ID
Texture.SetAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.TextureNodes.SetAttribute- Attribute-name inputs
resultAttributeName texture
Writes a Vector3 attribute from a Vector3 binding, optionally gated by a boolean mask attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| attributeName | String | – |
| value | Vector3 Or AttributeConstant or attribute | – |
| mask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SetVector3Attribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SetVector3Attribute- Attribute-name inputs
mask attributeName value
Spherically interpolates between two quaternion bindings by factor T per element.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Quaternion Or AttributeConstant or attribute | – |
| b | Quaternion Or AttributeConstant or attribute | – |
| t | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | "result" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.SlerpQuaternionAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.SlerpQuaternionAttribute- Attribute-name inputs
resultAttributeName a b t
Writes resultAttribute = left - right per element from float bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Float Or AttributeConstant or attribute | – |
| right | Float Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.SubtractFloatValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.SubtractFloatValues- Attribute-name inputs
resultAttributeName left right
Writes resultAttribute = left - right per element from int bindings.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| left | Int Or AttributeConstant or attribute | – |
| right | Int Or AttributeConstant or attribute | – |
| resultAttributeName | String | – |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.SubtractIntValues- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.SubtractIntValues- Attribute-name inputs
resultAttributeName left right
Computes resultAttribute = A - B per element from Vector3 bindings (constant or attribute).
| Input | Type | Default |
|---|
| elements | Element Set | – |
| a | Vector3 Or AttributeConstant or attribute | – |
| b | Vector3 Or AttributeConstant or attribute | – |
| resultAttributeName | String | "result" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.SubtractVectorAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.SubtractVectorAttribute- Attribute-name inputs
resultAttributeName a b
Computes the sum of a float value across all elements, returning the result as a scalar.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Float Or AttributeConstant or attribute | – |
OutputSumFloatThe total sum across all elements
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.SumFloatAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.SumFloatAttribute- Attribute-name inputs
value
Computes the component-wise sum of a Vector3 value across all elements, returning the result as a scalar Vector3.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Vector3 Or AttributeConstant or attribute | – |
OutputSumVector3The component-wise sum across all elements
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.SumVector3- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.SumVector3- Attribute-name inputs
value
Computes the magnitude (length) of a Vector3 binding per element, writing the result to a float attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| value | Vector3 Or AttributeConstant or attribute | – |
| resultAttributeName | String | "magnitude" |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.Vector3AttributeMagnitude- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.Vector3AttributeMagnitude- Attribute-name inputs
resultAttributeName value
Mix, add, subtract, multiply, screen, overlay, minimum or maximum RGB with a clamped factor. Alpha is interpolated between the inputs.
| Input | Type | Default |
|---|
| a | Color | – |
| b | Color | – |
| factor | Float | 0.5 |
| mode | ColorBlendMode | Mix |
OutputColorColor
Technical details
- Node ID
Color.Blend- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Blend
Mix, add, subtract, multiply, screen, overlay, minimum or maximum RGB with a clamped factor. Alpha is interpolated between the inputs. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| aFirst color, as a constant or attribute. | Color Or AttributeConstant or attribute | – |
| bSecond color, as a constant or attribute. | Color Or AttributeConstant or attribute | – |
| factorBlend amount, clamped to 0–1. | Float Or AttributeConstant or attribute | – |
| mode | ColorBlendMode | Mix |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.BlendAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.BlendAttribute- Attribute-name inputs
resultAttributeName a b factor
Clamps all RGBA components to the 0–1 range.
| Input | Type | Default |
|---|
| color | Color | – |
OutputColorColor
Technical details
- Node ID
Color.Clamp- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Clamp
Clamps all RGBA components to the 0–1 range. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.ClampAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ClampAttribute- Attribute-name inputs
resultAttributeName color
Extracts RGBA, luminance (Rec.709 weights), or an HSV component.
| Input | Type | Default |
|---|
| color | Color | – |
| channel | ColorChannel | Luminance |
OutputfloatFloat
Technical details
- Node ID
Color.Channel- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Channel
Extracts RGBA, luminance (Rec.709 weights), or an HSV component. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| channel | ColorChannel | Luminance |
| resultAttributeNameName of the float attribute to create or overwrite. | String | "value" |
OutputElement Set
Technical details
- Node ID
Color.ChannelAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ChannelAttribute- Attribute-name inputs
resultAttributeName color
Adjusts RGB contrast around a pivot, preserving alpha. One preserves contrast.
| Input | Type | Default |
|---|
| color | Color | – |
| contrast | Float | 1 |
| pivot | Float | 0.5 |
OutputColorColor
Technical details
- Node ID
Color.Contrast- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Contrast
Adjusts RGB contrast around a pivot, preserving alpha. One preserves contrast. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| contrastContrast multiplier; one preserves input. | Float Or AttributeConstant or attribute | – |
| pivotRGB value around which contrast is adjusted. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.ContrastAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ContrastAttribute- Attribute-name inputs
resultAttributeName color contrast pivot
Multiplies RGB by two to the power of exposure (stops), preserving alpha.
| Input | Type | Default |
|---|
| color | Color | – |
| exposure | Float | 0 |
OutputColorColor
Technical details
- Node ID
Color.Exposure- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Exposure
Multiplies RGB by two to the power of exposure (stops), preserving alpha. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| exposureExposure adjustment in stops. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.ExposureAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ExposureAttribute- Attribute-name inputs
resultAttributeName color exposure
Converts linear RGB components to sRGB, preserving alpha.
| Input | Type | Default |
|---|
| color | Color | – |
OutputColorColor
Technical details
- Node ID
Color.ToSRGB- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ToSRGB
Converts linear RGB components to sRGB, preserving alpha. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.ToSRGBAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ToSRGBAttribute- Attribute-name inputs
resultAttributeName color
Evaluates a multi-stop gradient at a clamped 0–1 position.
| Input | Type | Default |
|---|
| gradientColor and alpha stops; edit the gradient to define the ramp. | Gradient | – |
| position | Float | 0 |
OutputColor
Technical details
- Node ID
Color.Ramp- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorRampNodes.Evaluate
Maps an attribute (height, slope, noise, etc.) through a gradient. Normalize values to 0–1 first.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| gradientColor and alpha stops; edit the gradient to define the ramp. | Gradient | – |
| positionPosition along the gradient, clamped to 0–1. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.RampAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorRampNodes.EvaluateAttribute- Attribute-name inputs
resultAttributeName position
Adjusts saturation around luminance: zero is grayscale, one preserves the color.
| Input | Type | Default |
|---|
| color | Color | – |
| saturation | Float | 1 |
OutputColorColor
Technical details
- Node ID
Color.Saturation- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Saturation
Adjusts saturation around luminance: zero is grayscale, one preserves the color. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| saturationSaturation amount. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.SaturationAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.SaturationAttribute- Attribute-name inputs
resultAttributeName color saturation
Converts sRGB RGB components to linear light, preserving alpha.
| Input | Type | Default |
|---|
| color | Color | – |
OutputColorColor
Technical details
- Node ID
Color.ToLinear- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ToLinear
Converts sRGB RGB components to linear light, preserving alpha. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.ToLinearAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.ToLinearAttribute- Attribute-name inputs
resultAttributeName color
Builds a color from hue (wrapped 0–1), saturation, value and alpha.
| Input | Type | Default |
|---|
| hue | Float | 0 |
| saturation | Float | 1 |
| value | Float | 1 |
| alpha | Float | 1 |
OutputColorColor
Technical details
- Node ID
Color.HSV- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.HSV
Builds a color from hue (wrapped 0–1), saturation, value and alpha. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| hueHue in turns; wraps every 1. | Float Or AttributeConstant or attribute | – |
| saturationSaturation amount. | Float Or AttributeConstant or attribute | – |
| valueValue constant or named float attribute. | Float Or AttributeConstant or attribute | – |
| alphaOpacity: zero is transparent, one is opaque. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.HSVAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.HSVAttribute- Attribute-name inputs
resultAttributeName hue saturation value alpha
Builds a color from red, green, blue and alpha components.
| Input | Type | Default |
|---|
| red | Float | 0 |
| green | Float | 0 |
| blue | Float | 0 |
| alpha | Float | 1 |
OutputColorColor
Technical details
- Node ID
Color.RGBA- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.RGBA
Builds a color from red, green, blue and alpha components. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| redRed component; values above one are supported for HDR. | Float Or AttributeConstant or attribute | – |
| greenGreen component; values above one are supported for HDR. | Float Or AttributeConstant or attribute | – |
| blueBlue component; values above one are supported for HDR. | Float Or AttributeConstant or attribute | – |
| alphaOpacity: zero is transparent, one is opaque. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.RGBAAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.RGBAAttribute- Attribute-name inputs
resultAttributeName red green blue alpha
Inverts RGB around one and preserves alpha.
| Input | Type | Default |
|---|
| color | Color | – |
OutputColorColor
Technical details
- Node ID
Color.Invert- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Invert
Inverts RGB around one and preserves alpha. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.InvertAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.InvertAttribute- Attribute-name inputs
resultAttributeName color
Replaces alpha while preserving RGB.
| Input | Type | Default |
|---|
| color | Color | – |
| alpha | Float | 1 |
OutputColorColor
Technical details
- Node ID
Color.Alpha- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.Alpha
Replaces alpha while preserving RGB. Evaluates per element from constants or attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
| alphaOpacity: zero is transparent, one is opaque. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
OutputElement Set
Technical details
- Node ID
Color.AlphaAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.AlphaAttribute- Attribute-name inputs
resultAttributeName color alpha
Bevels editable mesh groups before Realize Meshes. Each group must be a closed convex solid with matching edge positions. Concave, hollow and disconnected solids are unsupported; a revolved shell is not a safe input. Bevel separate convex prototypes before repetition. Large widths can remove the whole solid.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| widthBevel width in local mesh units; start small relative to the shortest edge. | Float Or AttributeConstant or attribute | – |
| minimumAngleMinimum angle between adjacent face normals, in degrees; coplanar edges are ignored. | Float Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
Mesh.Bevel- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Bevel- Attribute-name inputs
width minimumAngle
Pairs mesh groups by order or broadcasts a single B group. Inputs must use a common coordinate space.
| Input | Type | Default |
|---|
| a | Element Set | – |
| b | Element Set | – |
| operation | MeshBooleanOperation | Union |
| tolerance | Float Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
Mesh.Boolean- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Boolean- Attribute-name inputs
tolerance
Creates a centered box definition for each input placement. Dimensions are full lengths in local units and must be positive; nonpositive dimensions emit no geometry. Null input creates one origin prototype; explicit empty input creates none. Realize then Draw Instanced to render.
| Input | Type | Default |
|---|
| elements | Element Set | None |
| width | Float Or AttributeConstant or attribute | – |
| height | Float Or AttributeConstant or attribute | – |
| depth | Float Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
position rotation scale id
Technical details
- Node ID
Mesh.Box- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Box- Attribute-name inputs
width height depth
Sets shading mode for editable topology, applied when realized. Flat preserves hard faces; SmoothByPointId shares normals by logical point identity. This does not weld positions or repair cracks caused by inconsistent corner displacement.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| mode | MeshNormalMode | Flat |
OutputElement Set
Technical details
- Node ID
Mesh.Normals- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Normals
No description yet.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
Technical details
- Node ID
Mesh.Tangents- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Tangents
Computes the average position (centroid) of all elements. Convenience shortcut — no attribute binding needed.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputCentroidVector3The average position across all elements
- Requires
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.Centroid- C# method
CuriousTrove.OctoShaper.Library.Nodes.Attributes.AttributeNodes.Centroid
Creates a circle centered on the local XZ origin.
| Input | Type | Default |
|---|
| RadiusCircle radius | Float | 0.5 |
OutputShapePlanar ShapeLocal circle domain
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Spatial.PlanarShapeNodes.CircleShape- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.PlanarShapeNodes.CircleShape
Finds the nearest target position for each query position.
| Input | Type | Default |
|---|
| queries | Element Set | – |
| targets | Element Set | – |
| maxDistance | Float | -1 |
OutputElement Set
- Requires
position- Writes
closestRowIndex closestDistance closestPosition closestFound
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.GeometryNodes.ClosestElement- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.ClosestElement
Combines all mesh groups into one definition. Does not allocate a Unity Mesh or perform a boolean union.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
Technical details
- Node ID
Mesh.Combine- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Combine
No description yet.
| Input | Type | Default |
|---|
| points | Element Set | – |
| mode | MeshNormalMode | Flat |
| tolerance | Float | 0 |
OutputElement Set
- Requires
position
Technical details
- Node ID
Mesh.ConvexHull- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.ConvexHull
Creates a capped Y-axis cylinder centered on each input placement, from -height/2 to +height/2. Positive radius/height; segment count is clamped to 3–4096. Output is editable topology, not rendered instances. Null input creates one prototype; explicit empty input creates none.
| Input | Type | Default |
|---|
| elements | Element Set | None |
| radius | Float Or AttributeConstant or attribute | – |
| height | Float Or AttributeConstant or attribute | – |
| segments | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
position rotation scale id
Technical details
- Node ID
Mesh.Cylinder- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Cylinder- Attribute-name inputs
radius height segments
Keeps all point rows and attributes but discards faces and mesh grouping. Not required for ordinary point edits or spawning.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
Technical details
- Node ID
Mesh.Points- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Points
For each element in queries, finds the nearest target element and writes the distance to the distanceAttribute. Optionally clamped by maxDistance.
| Input | Type | Default |
|---|
| queries | Element Set | – |
| targets | Element Set | – |
| distanceAttribute | String | – |
| maxDistance | Float | -1 |
OutputElement Set
- Requires
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.DistanceBetweenElements- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.DistanceBetweenElements- Attribute-name inputs
distanceAttribute
Computes per-element distance from position to a target point and writes it to a float attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| targetPoint | Vector3 | – |
| outputAttribute | String | "distance" |
OutputElement Set
- Requires
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.DistanceToPoint- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.DistanceToPoint- Attribute-name inputs
outputAttribute
Distributes points at equal arc-length intervals around a local shape perimeter.
| Input | Type | Default |
|---|
| shape | Planar Shape | – |
| count | Integer | – |
| Start OffsetNormalized offset around the closed perimeter | Float | 0 |
| Align RotationAlign forward to the perimeter tangent | Boolean | Off |
OutputPointsElement SetPoints distributed around the shape perimeter
- Writes
id position rotation tangent normal
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Spatial.PlanarShapeNodes.DistributePointsOnShape- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.PlanarShapeNodes.DistributePointsOnShape
Reads consolidated Unity meshes into editable logical point rows with attached topology. Meshes must have Read/Write enabled.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| mode | MeshNormalMode | Flat |
OutputElement Set
- Requires
mesh- Writes
position id
Technical details
- Node ID
Mesh.Explode- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Explode
Extrudes a closed spline into a solid along +Y; negative height extrudes downwards. Each spline point keeps its own Y as the base. Bezier splines are sampled with Segments points; linear splines keep their corners. Taper shrinks (or with negative values flares) the outline at the far end of the extrusion in metres. Top and bottom caps follow world up and down. Side UVs use metres along the outline and up the wall; cap UVs use XZ. Concave outlines are supported; self-intersecting outlines are not.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| splineClosed outline; its XZ projection is extruded. | Spline | – |
| heightExtrusion height in metres. Negative values extrude downwards. | Float Or AttributeConstant or attribute | – |
| taperMoves the outline at the far end of the extrusion inwards in metres; negative values flare it outwards. | Float Or AttributeConstant or attribute | – |
| segmentsOutline samples for Bezier splines. Linear splines use their points. | Integer | 64 |
| capTop | Boolean | On |
| capBottom | Boolean | On |
| smoothAngleOutline corners turning less than this angle are shaded smoothly. | Float | 30 |
OutputElement Set
- Writes
position rotation scale id
Technical details
- Node ID
Mesh.ExtrudeSpline- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.ExtrudeSpline- Attribute-name inputs
height taper
Deforms mesh definitions along an open spline. Source X maps to arc distance; Y/Z become normal/side offsets. Generate or explode meshes first. Existing topology is retained; subdivide long faces before bending. A Y-axis primitive must be rotated onto X before bending. sourceStart/sourceLength map the source X interval onto the complete spline.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| spline | Spline | – |
| sourceStart | Float | 0 |
| sourceLength | Float | 1 |
OutputElement Set
Technical details
- Node ID
Mesh.FollowSpline- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.FollowSpline
Copies one mesh definition onto target points, retaining editable topology. Combine source meshes first; realize only after editing.
| Input | Type | Default |
|---|
| points | Element Set | – |
| source | Element Set | – |
OutputElement Set
Technical details
- Node ID
Mesh.PlaceOnPoints- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.PlaceOnPoints
No description yet.
| Input | Type | Default |
|---|
| elements | Element Set | None |
| width | Float Or AttributeConstant or attribute | – |
| depth | Float Or AttributeConstant or attribute | – |
| columns | Int Or AttributeConstant or attribute | – |
| rows | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
position rotation scale id
Technical details
- Node ID
Mesh.Plane- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Plane- Attribute-name inputs
width depth columns rows
Tests whether each element's position falls inside a closed spline boundary (horizontal XZ plane projection). Writes a bool attribute.
| Input | Type | Default |
|---|
| queries | Element Set | – |
| boundary | Spline | – |
| maskAttribute | String | "inside" |
| sampleCount | Integer | 128 |
OutputElement Set
- Requires
position- Writes
inside
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.PointInClosedSpline- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.PointInClosedSpline
Consolidates each point-based mesh definition into one mesh-bearing placement. Ordinary rows pass through. Identical meshes share resources. Row count changes from point/corner rows to placements; source-row indexes used by Assign Mesh refer to this realized output. Realization alone does not draw anything.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
- Writes
mesh position rotation scale
Technical details
- Node ID
Mesh.Realize- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Realize
Creates a rectangle centered on the local XZ origin.
| Input | Type | Default |
|---|
| WidthRectangle width on the local X axis | Float | 1 |
| DepthRectangle depth on the local Z axis | Float | 1 |
OutputShapePlanar ShapeLocal rectangle domain
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Spatial.PlanarShapeNodes.RectangleShape- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.PlanarShapeNodes.RectangleShape
Revolves a radius multiplier curve around Y. Height is measured in metres; start/end select normalized profile heights. Wall thickness stays in metres. Partial sweeps have closed sides. Output starts at local Y=0. Every sampled curve value times radius must exceed wallThickness; thin tips need thinner walls. The result is a hollow shell, generally unsuitable for convex-only Bevel Mesh.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| profileAt least two curve keys; time is normalized height and value multiplies radius. All sampled radii must exceed wallThickness. | Animation Curve | – |
| radiusRadius multiplier in metres; multiplied by the profile value. | Float Or AttributeConstant or attribute | – |
| height | Float Or AttributeConstant or attribute | – |
| wallThicknessPositive radial thickness in metres, strictly smaller than every sampled radius. | Float Or AttributeConstant or attribute | – |
| sweepDegreesPositive sweep angle in degrees; capped at 360. Partial sweeps close both cut sides. | Float Or AttributeConstant or attribute | – |
| start | Float Or AttributeConstant or attribute | – |
| end | Float Or AttributeConstant or attribute | – |
| segments | Int Or AttributeConstant or attribute | – |
| profileSegments | Integer | 16 |
OutputElement Set
- Writes
position rotation scale id
Technical details
- Node ID
Mesh.RevolveProfile- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.RevolveProfile- Attribute-name inputs
radius height wallThickness sweepDegrees start end segments
Legacy surface sampling from a triangle-corner ElementSet. Use Sample Mesh Surface for new graphs.
| Input | Type | Default |
|---|
| triangles | Element Set | – |
| samplesPerTriangle | Integer | 1 |
| seed | Integer | 0 |
OutputElement Set
- Requires
position- Writes
id position normal sourceRowIndex localIndex triangleIndex triangleVertexIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.GeometryNodes.SampleFromSurface- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.SampleFromSurface
Legacy projected-grid sampling from a triangle-corner ElementSet. Use Sample Mesh Surface Grid for new graphs.
| Input | Type | Default |
|---|
| triangles | Element Set | – |
| gridSpacing | Float | 1 |
| includeEdges | Boolean | On |
| projectionNormal | Vector3 | (0, 0, 0) |
| gridAnchor | Vector3 | (0, 0, 0) |
OutputElement Set
- Requires
position- Writes
id position normal sourceRowIndex localIndex triangleIndex triangleVertexIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.GeometryNodes.SampleFromSurfaceGrid- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.SampleFromSurfaceGrid
No description yet.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| samplesPerTriangle | Int Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position normal sourceRowIndex
Technical details
- Node ID
Mesh.SampleSurface- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.SampleSurface
No description yet.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| spacing | Float Or AttributeConstant or attribute | – |
| includeEdges | Boolean | On |
| projectionNormal | Vector3 | (0, 0, 0) |
| gridAnchor | Vector3 | (0, 0, 0) |
OutputElement Set
- Writes
id position normal sourceRowIndex
Technical details
- Node ID
Mesh.SampleGrid- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.SampleGrid
Generates deterministic uniformly distributed points inside a local shape.
| Input | Type | Default |
|---|
| shape | Planar Shape | – |
| count | Integer | – |
| seed | Integer | 0 |
OutputPointsElement SetPoints sampled inside the shape
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Spatial.PlanarShapeNodes.SamplePointsInShape- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.PlanarShapeNodes.SamplePointsInShape
Writes the mesh color channel from a color binding. Use on point-based meshes before Realize Meshes; the shader must use vertex colors.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| colorA color constant or a named Unity color attribute. | Color Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
color
Technical details
- Node ID
Color.SetVertexColor- C# method
CuriousTrove.OctoShaper.Library.Nodes.Colors.ColorNodes.SetVertexColor- Attribute-name inputs
color
Moves query positions to their nearest target positions.
| Input | Type | Default |
|---|
| queries | Element Set | – |
| targets | Element Set | – |
| maxDistance | Float | -1 |
OutputElement Set
- Requires
position- Writes
position closestRowIndex closestDistance closestPosition closestFound
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.GeometryNodes.SnapToClosestPosition- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.SnapToClosestPosition
Transforms editable mesh geometry in each mesh group's local space. Translation uses metres, rotation Euler degrees, scale is uniform and non-zero. Generate or Explode meshes first; use ordinary Translate/Rotate/Scale for realized instance placements.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| translation | Vector3 Or AttributeConstant or attribute | – |
| rotation | Vector3 Or AttributeConstant or attribute | – |
| scale | Float Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
Mesh.Transform- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Transform- Attribute-name inputs
translation rotation scale
Legacy ordered-polygon triangulation that returns one ElementSet row per triangle corner. Use the current Triangulate Points node for new graphs.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
- Requires
position- Writes
id sourceRowIndex localIndex primitiveId cornerIndex pointId triangleIndex triangleVertexIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.GeometryNodes.TriangulatePoints- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.GeometryNodes.TriangulatePoints
No description yet.
| Input | Type | Default |
|---|
| points | Element Set | – |
OutputElement Set
- Requires
position
Technical details
- Node ID
Mesh.Triangulate- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Triangulate
No description yet.
| Input | Type | Default |
|---|
| elements | Element Set | None |
| radius | Float Or AttributeConstant or attribute | – |
| segments | Int Or AttributeConstant or attribute | – |
| rings | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
position rotation scale id
Technical details
- Node ID
Mesh.Sphere- C# method
CuriousTrove.OctoShaper.Library.Nodes.Geometry.MeshNodes.Sphere- Attribute-name inputs
radius segments rings
Appends a local-space box collider to each selected placement, independently of its visuals. Raw mesh points must be realized or have topology discarded first.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| width | Float Or AttributeConstant or attribute | – |
| height | Float Or AttributeConstant or attribute | – |
| depth | Float Or AttributeConstant or attribute | – |
| center | Vector3 Or AttributeConstant or attribute | – |
| rotation | Vector3 Or AttributeConstant or attribute | – |
| selection | Bool Or AttributeConstant or attribute | – |
| isTrigger | Bool Or AttributeConstant or attribute | – |
| material | Physics Material | None |
| layer | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
colliders
Technical details
- Node ID
Collider.AddBox- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.ColliderNodes.AddBox- Attribute-name inputs
width height depth center rotation selection isTrigger layer
Appends a local-space capsule collider to each selected placement, independently of its visuals. Raw mesh points must be realized or have topology discarded first.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| radius | Float Or AttributeConstant or attribute | – |
| height | Float Or AttributeConstant or attribute | – |
| center | Vector3 Or AttributeConstant or attribute | – |
| rotation | Vector3 Or AttributeConstant or attribute | – |
| selection | Bool Or AttributeConstant or attribute | – |
| isTrigger | Bool Or AttributeConstant or attribute | – |
| material | Physics Material | None |
| layer | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
colliders
Technical details
- Node ID
Collider.AddCapsule- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.ColliderNodes.AddCapsule- Attribute-name inputs
radius height center rotation selection isTrigger layer
Appends a collider using an independent Mesh constant/attribute or a realized Source row. Source transforms and visual payloads are not copied. Choose Attribute(mesh) explicitly to use the target's mesh. Convex previews show source geometry; Unity cooks the final hull.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| mesh | Mesh Or AttributeConstant or attribute | – |
| source | Element Set | None |
| sourceRow | Int Or AttributeConstant or attribute | – |
| convex | Boolean | Off |
| center | Vector3 Or AttributeConstant or attribute | – |
| rotation | Vector3 Or AttributeConstant or attribute | – |
| selection | Bool Or AttributeConstant or attribute | – |
| isTrigger | Bool Or AttributeConstant or attribute | – |
| material | Physics Material | None |
| layer | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
colliders
Technical details
- Node ID
Collider.AddMesh- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.ColliderNodes.AddMesh- Attribute-name inputs
mesh sourceRow center rotation selection isTrigger layer
Appends a local-space sphere collider to each selected placement, independently of its visuals. Raw mesh points must be realized or have topology discarded first.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| radius | Float Or AttributeConstant or attribute | – |
| center | Vector3 Or AttributeConstant or attribute | – |
| rotation | Vector3 Or AttributeConstant or attribute | – |
| selection | Bool Or AttributeConstant or attribute | – |
| isTrigger | Bool Or AttributeConstant or attribute | – |
| material | Physics Material | None |
| layer | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
colliders
Technical details
- Node ID
Collider.AddSphere- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.ColliderNodes.AddSphere- Attribute-name inputs
radius center rotation selection isTrigger layer
Clears graph-authored collider definitions on selected rows. Existing prefab colliders are untouched.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| selection | Bool Or AttributeConstant or attribute | – |
OutputElement Set
Technical details
- Node ID
Collider.Clear- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.ColliderNodes.Clear- Attribute-name inputs
selection
Finds the closest point on the live collider world for each row and writes surface metadata.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| queryPosition | Vector3 Or AttributeConstant or attribute | – |
| maxDistance | Float Or AttributeConstant or attribute | – |
| hitMask | String | None |
OutputElement Set
- Writes
surfaceFound surfacePoint surfaceNormal surfaceDistance surfaceOffset
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.Physics.ClosestPointOnColliderWorld- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.Physics.ClosestPointOnColliderWorld- Attribute-name inputs
hitMask queryPosition maxDistance
Evaluates a per-row surface normal, writes a boolean slope mask, and optionally writes slope cosine, slope angle, and soft-falloff probability.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| normal | Vector3 Or AttributeConstant or attribute | – |
| maxSlopeDegrees | Float | – |
| outputMask | String | – |
| fullDensitySlopeDegrees | Float | 0 |
| probabilityAttribute | String | None |
| slopeDegreesAttribute | String | None |
| slopeCosAttribute | String | None |
| inputMask | String | None |
OutputElement Set
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.Physics.ComputeSlopeMask- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.Physics.ComputeSlopeMask- Attribute-name inputs
inputMask outputMask probabilityAttribute slopeDegreesAttribute slopeCosAttribute normal
Appends a box fitted to the local bounds of a selected mesh, independently of rendering. Does not combine rows.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| mesh | Mesh Or AttributeConstant or attribute | – |
| selection | Bool Or AttributeConstant or attribute | – |
| isTrigger | Bool Or AttributeConstant or attribute | – |
| material | Physics Material | None |
| layer | Int Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
colliders
Technical details
- Node ID
Collider.FitBox- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.ColliderNodes.FitBox- Attribute-name inputs
mesh selection isTrigger layer
Casts a ray from each element's position attribute in the given direction and writes the hit point back into the position attribute. Useful for snapping elements to terrain or geometry. When no hit is found, the element position is either kept as-is or zeroed depending on 'keepOnMiss'. An optional start offset moves the ray origin along the *opposite* of the cast direction so that elements sitting on a surface are not immediately clipped by it.
| Input | Type | Default |
|---|
| ElementsInput ElementSet — must have a 'position' attribute | Element Set | – |
| DirectionProjection direction — normalised automatically (e.g. (0,-1,0) to project downward) | Vector3 | – |
| Start OffsetDistance to pull the ray origin back along the opposite of Direction before casting. Use a positive value to ensure elements resting on a surface still get a hit. | Float | 0.1 |
| Max DistanceMaximum ray travel distance. | Float | ∞ |
| Keep On MissWhen true, elements that produce no hit keep their original position. When false, their position is set to zero. | Boolean | On |
OutputElementsElement SetElementSet with projected positions
- Requires
position- Writes
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.Physics.ProjectPositions- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.Physics.ProjectPositions
Casts a ray into the physics world and returns the hit point.
| Input | Type | Default |
|---|
| origin | Vector3 | – |
| direction | Vector3 | – |
| maxDistance | Float | ∞ |
OutputVector3
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.Physics.Raycast- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.Physics.Raycast
Evaluates one ray per row and writes hit state, hit point, hit normal, and hit distance attributes.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| origin | Vector3 Or AttributeConstant or attribute | – |
| direction | Vector3 Or AttributeConstant or attribute | – |
| maxDistance | Float Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
rayHit rayHitPoint rayHitNormal rayHitDistance rayHitDirection
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.Physics.RaycastSceneDetails- C# method
CuriousTrove.OctoShaper.Library.Nodes.Physics.Physics.RaycastSceneDetails- Attribute-name inputs
origin direction maxDistance
Moves each point toward a target position using distance falloff. Target, strength, radius, and falloff can be constants or per-point attributes.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| targetPositionTarget position, resolved separately for each point in Attribute mode. | Vector3 Or AttributeConstant or attribute | – |
| strengthMovement strength before distance falloff. Negative values repel points. | Float Or AttributeConstant or attribute | – |
| radiusInfluence radius for each point. Non-positive radii leave the point unchanged. | Float Or AttributeConstant or attribute | – |
| falloffPowerDistance-falloff exponent, clamped to at least 0.0001. | Float Or AttributeConstant or attribute | – |
OutputElement Set
- Requires
position- Writes
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.AttractPointsByDistance- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.AttractPointsByDistance- Attribute-name inputs
targetPosition strength radius falloffPower
Expands each input element into points distributed in a 2D grid.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| origin | Vector3 Or AttributeConstant or attribute | – |
| xAxis | Vector3 Or AttributeConstant or attribute | – |
| yAxis | Vector3 Or AttributeConstant or attribute | – |
| xCount | Int Or AttributeConstant or attribute | – |
| yCount | Int Or AttributeConstant or attribute | – |
| xSpacing | Float Or AttributeConstant or attribute | – |
| ySpacing | Float Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
id position sourceRowIndex localIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.DistributePointsInGrid- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.DistributePointsInGrid
Writes per-element positions distributed along a line segment.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| start | Vector3 Or AttributeConstant or attribute | – |
| end | Vector3 Or AttributeConstant or attribute | – |
| count | Int Or AttributeConstant or attribute | – |
| includeEndpoints | Boolean | On |
OutputElement Set
- Writes
id position sourceRowIndex localIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.DistributePointsOnLine- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.DistributePointsOnLine
Offsets per-element positions by a deterministic random Vector3 range.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| minOffset | Vector3 Or AttributeConstant or attribute | – |
| maxOffset | Vector3 Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
| uniform | Boolean | Off |
OutputElement Set
- Writes
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.GameObjectNodes.JitterPositions- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.GameObjectNodes.JitterPositions- Attribute-name inputs
minOffset maxOffset
Applies a deterministic random Euler rotation range to each element.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| minEuler | Vector3 Or AttributeConstant or attribute | – |
| maxEuler | Vector3 Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
| uniform | Boolean | Off |
OutputElement Set
- Writes
rotation
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.GameObjectNodes.JitterRotation- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.GameObjectNodes.JitterRotation- Attribute-name inputs
minEuler maxEuler
Multiplies per-element scale by a deterministic random Vector3 range.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| minFactor | Vector3 Or AttributeConstant or attribute | – |
| maxFactor | Vector3 Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
| uniform | Boolean | Off |
OutputElement Set
- Writes
scale
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.GameObjectNodes.JitterScale- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.GameObjectNodes.JitterScale- Attribute-name inputs
minFactor maxFactor
Orients each element to face the specified direction. Uses the world up vector as the default up reference.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| direction | Vector3 Or AttributeConstant or attribute | – |
| up | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
- Writes
rotation
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.LookAtDirection- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.LookAtDirection- Attribute-name inputs
direction
Orients each element to face a target point by computing the direction from its position to the target.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| target | Vector3 Or AttributeConstant or attribute | – |
| up | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
- Requires
position- Writes
rotation
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.LookAtPoint- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.LookAtPoint
Generates a new ElementSet with positions sampled on the XZ plane using Poisson disc spacing.
| Input | Type | Default |
|---|
| WidthRectangle width (X) | Float | – |
| HeightRectangle depth (Z) | Float | – |
| RadiusMinimum distance between points | Float | – |
| AttemptsCandidates per active point | Integer | – |
| SeedRandom seed | Integer | – |
OutputElement Set
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Attributes.AttributeNodes.PoissonDisc- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.PoissonDisc
Expands each input element into a Poisson disc cluster on the XZ plane and writes source/local index attributes.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| WidthRectangle width (X) | Float Or AttributeConstant or attribute | – |
| HeightRectangle depth (Z) | Float Or AttributeConstant or attribute | – |
| RadiusMinimum distance between points | Float Or AttributeConstant or attribute | – |
| AttemptsCandidates per active point | Int Or AttributeConstant or attribute | – |
| SeedRandom seed | Integer | – |
OutputElement Set
- Writes
id position sourceRowIndex localIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.PoissonDiscPerElement- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.PoissonDiscPerElement
Writes random per-element rotations.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| randomizeX | Boolean | – |
| randomizeY | Boolean | – |
| randomizeZ | Boolean | – |
| seed | Integer | – |
OutputElement Set
- Writes
rotation
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.RandomRotations- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.RandomRotations
Rotates per-element rotations by Euler angles from a constant vector or a bound attribute.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| euler | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
- Requires
rotation- Writes
rotation
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.GameObjectNodes.Rotate- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.GameObjectNodes.Rotate
Generates points uniformly over an annulus on the XZ plane.
| Input | Type | Default |
|---|
| center | Vector3 | – |
| innerRadius | Float | – |
| outerRadius | Float | – |
| count | Integer | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInAnnulus- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInAnnulus
Expands each input element into a uniform annulus cluster on the XZ plane.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| innerRadius | Float Or AttributeConstant or attribute | – |
| outerRadius | Float Or AttributeConstant or attribute | – |
| count | Int Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position sourceRowIndex localIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInAnnulusPerElement- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInAnnulusPerElement
Generates points uniformly inside an axis-aligned box.
| Input | Type | Default |
|---|
| center | Vector3 | – |
| size | Vector3 | – |
| count | Integer | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInBox- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInBox
Generates points uniformly over a disc on the XZ plane.
| Input | Type | Default |
|---|
| center | Vector3 | – |
| radius | Float | – |
| count | Integer | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInDisc- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInDisc
Expands each input element into a uniform disc cluster on the XZ plane.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| radius | Float Or AttributeConstant or attribute | – |
| count | Int Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position sourceRowIndex localIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInDiscPerElement- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInDiscPerElement
Generates points uniformly inside a sphere volume.
| Input | Type | Default |
|---|
| center | Vector3 | – |
| radius | Float | – |
| count | Integer | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInSphere- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInSphere
Expands each input element into a uniform sphere volume cluster.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| radius | Float Or AttributeConstant or attribute | – |
| count | Int Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position sourceRowIndex localIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsInSpherePerElement- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsInSpherePerElement
Generates points uniformly on the surface of a sphere.
| Input | Type | Default |
|---|
| center | Vector3 | – |
| radius | Float | – |
| count | Integer | – |
| seed | Integer | 0 |
OutputElement Set
- Writes
id position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.SamplePointsOnSphere- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.SamplePointsOnSphere
Translates per-element positions by a vector.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| offset | Vector3 Or AttributeConstant or attribute | – |
OutputElement Set
- Requires
position- Writes
position
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.GameObjectNodes.Translate- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.GameObjectNodes.Translate
Builds a normalized UV coordinate from U and V.
| Input | Type | Default |
|---|
| u | Float | 0 |
| v | Float | 0 |
OutputVector2
Technical details
- Node ID
Texture.UV- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.UVNodes.Create
Builds a Vector2 attribute from U and V constants or float attributes.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| u | Float Or AttributeConstant or attribute | – |
| v | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Vector2 UV attribute to create or overwrite. | String | "uv0" |
OutputElement Set
Technical details
- Node ID
Texture.UVAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.UVNodes.CreateAttribute- Attribute-name inputs
resultAttributeName u v
Offsets positions by a sampled channel minus midlevel, times strength, along a normalized direction. Zero direction means local up. Operates on points before realization, or on instance positions after realization.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| textureTexture asset constant or named texture-reference attribute. | Texture Or AttributeConstant or attribute | – |
| uvNormalized UV constant or Vector2 attribute, such as uv0. | Vector2 Or AttributeConstant or attribute | – |
| directionDisplacement direction constant or Vector3 attribute; zero uses local up. | Vector3 Or AttributeConstant or attribute | – |
| strengthMultiplier applied to the sampled height. | Float Or AttributeConstant or attribute | – |
| midlevelSample value that produces zero height or displacement. | Float Or AttributeConstant or attribute | – |
| channel | ColorChannel | Red |
| filter | TextureSamplingFilter | Bilinear |
| wrap | TextureSamplingWrap | TextureSettings |
| mipLevel | Integer | 0 |
OutputElement Set
- Requires
position- Writes
position
Technical details
- Node ID
Texture.Displace- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.TextureNodes.Displace- Attribute-name inputs
texture uv direction strength midlevel
Projects position (or another Vector3 binding) onto XZ, XY or YZ. UV = projected position * scale + offset; one unit maps to one repeat by default.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| positionPosition constant or Vector3 attribute; select position for spatial projection. | Vector3 Or AttributeConstant or attribute | – |
| scale | Float Or AttributeConstant or attribute | – |
| offsetUV offset constant or Vector2 attribute. | Vector2 Or AttributeConstant or attribute | – |
| plane | UVProjectionPlane | XZ |
| resultAttributeNameName of the Vector2 UV attribute to create or overwrite. | String | "uv0" |
OutputElement Set
Technical details
- Node ID
Texture.ProjectUV- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.UVNodes.Project- Attribute-name inputs
resultAttributeName position scale offset
Samples a readable Texture2D at normalized UV coordinates. Raw channel values by default; enable decodeSRGB for color maps stored as sRGB.
| Input | Type | Default |
|---|
| texture | Texture | – |
| uv | Vector2 | – |
| filter | TextureSamplingFilter | Bilinear |
| wrap | TextureSamplingWrap | TextureSettings |
| mipLevel | Integer | 0 |
| decodeSRGB | Boolean | Off |
OutputColorColorSampled RGBA, including alpha.
Technical details
- Node ID
Texture.Sample- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.TextureNodes.Sample
Samples a readable Texture2D per element using UV and texture constants or attributes. Writes a color attribute. decodeSRGB explicitly converts RGB before filtering.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| textureTexture asset constant or named texture-reference attribute. | Texture Or AttributeConstant or attribute | – |
| uvNormalized UV constant or Vector2 attribute, such as uv0. | Vector2 Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Unity color attribute to create or overwrite; tint is recommended. | String | "tint" |
| filter | TextureSamplingFilter | Bilinear |
| wrap | TextureSamplingWrap | TextureSettings |
| mipLevel | Integer | 0 |
| decodeSRGB | Boolean | Off |
OutputElement Set
Technical details
- Node ID
Texture.SampleAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.TextureNodes.SampleAttribute- Attribute-name inputs
resultAttributeName texture uv
Samples a channel per element and writes (sample - midlevel) * strength as a float attribute. Height/data maps should use raw values with sRGB disabled on import.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| textureTexture asset constant or named texture-reference attribute. | Texture Or AttributeConstant or attribute | – |
| uvNormalized UV constant or Vector2 attribute, such as uv0. | Vector2 Or AttributeConstant or attribute | – |
| strengthMultiplier applied to the sampled height. | Float Or AttributeConstant or attribute | – |
| midlevelSample value that produces zero height or displacement. | Float Or AttributeConstant or attribute | – |
| resultAttributeNameName of the float attribute to create or overwrite. | String | "height" |
| channel | ColorChannel | Red |
| filter | TextureSamplingFilter | Bilinear |
| wrap | TextureSamplingWrap | TextureSettings |
| mipLevel | Integer | 0 |
OutputElement Set
Technical details
- Node ID
Texture.SampleHeight- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.TextureNodes.SampleHeight- Attribute-name inputs
resultAttributeName texture uv strength midlevel
Returns width and height in pixels.
| Input | Type | Default |
|---|
| texture | Texture | – |
OutputVector2
Technical details
- Node ID
Texture.Size- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.TextureNodes.Size
Scales UV, rotates around the origin in degrees, then adds offset. Inputs can vary per element.
| Input | Type | Default |
|---|
| elementsElements to process; results are written to attributes on these elements. | Element Set | – |
| uvNormalized UV constant or Vector2 attribute, such as uv0. | Vector2 Or AttributeConstant or attribute | – |
| scaleU | Float Or AttributeConstant or attribute | – |
| scaleV | Float Or AttributeConstant or attribute | – |
| rotation | Float Or AttributeConstant or attribute | – |
| offsetUV offset constant or Vector2 attribute. | Vector2 Or AttributeConstant or attribute | – |
| resultAttributeNameName of the Vector2 UV attribute to create or overwrite. | String | "uv0" |
OutputElement Set
Technical details
- Node ID
Texture.TransformUV- C# method
CuriousTrove.OctoShaper.Library.Nodes.Textures.UVNodes.Transform- Attribute-name inputs
resultAttributeName uv scaleU scaleV rotation offset
Ensures the per-element rotation attribute column exists.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
- Requires
rotation- Writes
rotation
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Expanders.Spatial.ApplyRotations- C# method
CuriousTrove.OctoShaper.Library.Nodes.Spatial.Spatial.ApplyRotations
Legacy single-parent helper. Use Assign Parents or Place Local Assembly for new graphs.
| Input | Type | Default |
|---|
| parentElement | Element Set | – |
| elements | Element Set | – |
OutputElement Set
- Writes
id parentRowIndex siblingIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Modifiers.GameObjectNodes.AssignParentElement- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.GameObjectNodes.AssignParentElement
Appends parent elements and attaches top-level children by sourceRowIndex, one-to-one row mapping, or a single-parent fallback.
| Input | Type | Default |
|---|
| ParentsParent elements to append | Element Set | – |
| ChildrenElements to attach | Element Set | – |
OutputHierarchyElement SetChildren followed by their parent elements
- Writes
id parentRowIndex siblingIndex
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Assemblies.AssemblyNodes.AssignParents- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.AssemblyNodes.AssignParents
Computes the bounds of the prefabs into the ElementSet.
| Input | Type | Default |
|---|
| elements | Element Set | – |
OutputElement Set
- Requires
prefab- Writes
prefab bounds
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Instancers.PrefabUtilities.ComputeBounds- C# method
CuriousTrove.OctoShaper.Library.Nodes.Prefabs.PrefabUtilities.ComputeBounds
Returns the number of elements in an array.
| Input | Type | Default |
|---|
| ValuesArray to count | ICollection | – |
OutputCountIntegerNumber of elements
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.CollectionUtilities.Count- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.CollectionUtilities.Count
Removes duplicate elements based on an identity attribute, preserving the first occurrence of each unique value.
| Input | Type | Default |
|---|
| ElementsInput ElementSet | Element Set | – |
| Identity AttributeAttribute name used to detect duplicates | String | – |
OutputResultElement SetElementSet with duplicates removed
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.DeduplicateElements- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.DeduplicateElements- Attribute-name inputs
Identity Attribute
Filters elements where a numeric attribute satisfies a comparison against a value.
| Input | Type | Default |
|---|
| ElementsInput ElementSet | Element Set | – |
| AttributeNumeric attribute to compare | String | – |
| OperatorComparison operator | CompareOp | – |
| ValueComparison threshold | Float | – |
OutputFilteredElement SetFiltered ElementSet
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.Filter- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.Filter- Attribute-name inputs
Attribute
Alternates rows from two ElementSets (A0, B0, A1, B1, ...), producing a new combined one.
| Input | Type | Default |
|---|
| AFirst ElementSet | Element Set | – |
| BSecond ElementSet | Element Set | – |
OutputResultElement SetInterleaved ElementSet
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.InterleaveElementSets- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.InterleaveElementSets
Legacy two-input merge. Use Merge for new graphs; it supports any number of inputs. Creates a new ElementSet containing all rows from A followed by all rows from B.
| Input | Type | Default |
|---|
| AFirst ElementSet | Element Set | – |
| BSecond ElementSet | Element Set | – |
OutputMergedElement SetMerged ElementSet
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.MergeElementSets- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.MergeElementSets
Picks a single boolean from a weighted list.
| Input | Type | Default |
|---|
| list | Weighted Boolean List | – |
| seed | Integer | 0 |
| index | Integer | 0 |
OutputBoolean
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Utilities.CollectionUtilities.PickWeightedBoolean- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.CollectionUtilities.PickWeightedBoolean
Picks a single float from a weighted list.
| Input | Type | Default |
|---|
| list | Weighted Float List | – |
| seed | Integer | 0 |
| index | Integer | 0 |
OutputFloat
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Utilities.CollectionUtilities.PickWeightedFloat- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.CollectionUtilities.PickWeightedFloat
Picks a single integer from a weighted list.
| Input | Type | Default |
|---|
| list | Weighted Integer List | – |
| seed | Integer | 0 |
| index | Integer | 0 |
OutputInteger
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Utilities.CollectionUtilities.PickWeightedInteger- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.CollectionUtilities.PickWeightedInteger
Picks a single string from a weighted list.
| Input | Type | Default |
|---|
| list | Weighted String List | – |
| seed | Integer | 0 |
| index | Integer | 0 |
OutputString
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Utilities.CollectionUtilities.PickWeightedString- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.CollectionUtilities.PickWeightedString
Picks a single Vector3 from a weighted list.
| Input | Type | Default |
|---|
| list | Weighted Vector3 List | – |
| seed | Integer | 0 |
| index | Integer | 0 |
OutputVector3
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Utilities.CollectionUtilities.PickWeightedVector3- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.CollectionUtilities.PickWeightedVector3
Keeps each row with a deterministic per-element probability.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| probability | Float Or AttributeConstant or attribute | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
OutputFilteredElement SetElementSet after deterministic random culling
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.ProbabilisticCull- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.ProbabilisticCull- Attribute-name inputs
probability
Removes elements that are too close to each other, keeping only those that are at least minDistance apart.
| Input | Type | Default |
|---|
| ElementsInput ElementSet | Element Set | – |
| minDistance | Float | – |
| mode | CullMode | KeepFirst |
OutputResultElement SetElementSet with elements spaced at least minDistance apart
- Requires
position- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.RarefyDistanceCull- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.RarefyDistanceCull
Returns all rows in a deterministic random order using id, falling back to row index.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
OutputShuffledElement SetElementSet with rows reordered deterministically
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.ShuffleElements- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.ShuffleElements
Skips the first N elements from the ElementSet, producing a new one with the remaining elements.
| Input | Type | Default |
|---|
| ElementsInput ElementSet | Element Set | – |
| count | Integer | – |
OutputResultElement SetElementSet with elements after skipping N
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SkipN- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SkipN
Returns elements where a boolean attribute matches Keep Value. Use two nodes (true/false) to split both branches.
| Input | Type | Default |
|---|
| ElementsInput ElementSet | Element Set | – |
| AttributeBoolean attribute name used as split mask | String | – |
| Keep ValueRows whose attribute equals this value are kept | Boolean | – |
OutputFilteredElement SetFiltered ElementSet branch
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.SplitByBoolAttribute- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.SplitByBoolAttribute- Attribute-name inputs
Attribute attribute
Takes the first N elements from the ElementSet, producing a new one.
| Input | Type | Default |
|---|
| ElementsInput ElementSet | Element Set | – |
| count | Integer | – |
OutputResultElement SetElementSet with the first N elements
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.TakeFirstN- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.TakeFirstN
Returns up to count rows chosen without replacement using deterministic random order.
| Input | Type | Default |
|---|
| elements | Element Set | – |
| count | Integer | – |
| seed | Integer | 0 |
| identityAttribute | String | None |
OutputSubsetElement SetDeterministically selected subset of rows
- Writes
id
Technical details
- Node ID
CuriousTrove.OctoShaper.Library.Reducers.ElementSetUtilities.TakeRandomSubset- C# method
CuriousTrove.OctoShaper.Library.Nodes.Utilities.ElementSetUtilities.TakeRandomSubset