View & accessibility
Thumbnails
Motion
Bforartists
5.1
Editors

Utilities

Utilities nodes: Math, Text, Vector, Bundle, Closure, Field….

37
 min read
Up to date for 
5.1
draft

Add menu - Utilities

Add menu - Utilities
Add menu - Utilities

Utility nodes are mainly for mathematical operations with fields, values and elements.

For Each Element

For Each Element

The For Each Element Node enables iterative operations on individual elements of a geometry. This node is ideal for tasks requiring unique processing for each element, such as creating distinct objects or attributes for every element: a face, vertex, or curve or other domain.

Note: The For Each Element Node is best for creating detailed or complex geometry for every element of an input. For instance, you can use it to generate a unique tree for each curve or a distinct building on every face of a mesh.

However, it's less efficient for handling tiny elements, like individual strands of hair. Processing small parts separately can slow things down because Blender isn’t able to optimize the operation effectively. For projects with many elements, it's better to design your node setup to avoid working on very small pieces one at a time. In this case, it is best to run operations directly on field domains.

For Each Element Input

Inputs
EntryWhat it does
GeometryThe input geometry whose elements will be processed individually. This can include meshes, curves, or other geometry types.
SelectionSpecifies which subset of elements to process. This allows filtering based on boolean attributes or conditions per field – typically used as a true/false mask.
Properties
Properties
Element

Defines which element of which domain will be used.

The input geometry is divided into individual geometries, each corresponding to a single element. During each iteration, the node processes one of these single-element geometries.

Note: However, this functionality does not apply to the Face Corner domain, as face corners are inherently tied to their parent face and cannot exist independently.

Output
EntryWhat it does
IndexProvides the Index integer of the current elements of the selected domain to be processed.
ElementReturns a Geometry output with the list of elements for iteration.

For Each Element Output

For Each Element Output
For Each Element Output
Inputs
Main Geometry

The Main Geometry outputs create attributes on the "main" output geometry (the first output). Each value calculated within the zone becomes part of the attribute at the corresponding index of this output.

Note: Default is blank.

Generated
Generated

Result of joining generated geometries from each iteration.

The Generated inputs contain the individual geometry elements processed inside the zone. This includes any fields and attributes from different domains associated with these elements.

Note: Default is the result of joining generated geometries for each iteration.* *You can connect any new attribute or filed and output new generated elements and custom fields from the zone.

Properties
Properties
EntryWhat it does
Main GeometryThe main geometry sockets.
Generated GeometryThe generated geometry sockets from the zone.
Socket Type
Socket Type

What input input and output socket type to evaluate from each iteration in the zone.

Inspection Index

Iteration index that is used by inspection features like the viewer node or socket inspection

Output
EntryWhat it does
GeometryThe original input geometry with potentially new attributes that are output by the zone.
ElementResult of joining generated geometries or attributes from each iteration.

Index Switch

Index Switch

The Index Switch node is meant as a simpler version of the Menu Switch node. It doesn't allow naming items or displaying them in a dropdown, but still allows choosing between an arbitrary number of items, unlike the regular Switch node where you can just switch between two states.

Inputs

Index

Wich input to choose.

0 , 1 ...
0 , 1 ...
0 , 1 ...

The available input index types that you want to switch between. You can define more input sockets in the sidebar.

Properties

Data Type
Data Type

What input type to evaluate.

Outputs

Output

The output index.

Menu Switch

The Menu Switch node selects and computes one input based on a user-defined menu. Only the selected input is computed.

Menu entries can be added, removed, renamed, and reordered. Renaming keeps existing input links.

The menu can be used in node groups and the nodes modifier UI. Connecting the menu to a Group Input node exposes it as a group input. A menu needs to be connected to a Menu Switch node to work. An unconnected menu is empty.

Connecting multiple Menu Switch nodes to the same output creates a conflict. To avoid this, a menu switch can be grouped. Multiple groups of the same type can connect to the same menu.

Note: You cannot plug in the same value socket into the Menu selector. If you’d like to use the same value for various Menu Switches, group the Menu Switch into a Node Group and use the top-level switch override.

Menu Switch Menu Switch Top Level Grouped Menu Switches with same inputs:Conflict caused by Same Level menu Switch inputs:

Inputs

A / B

Becomes the output if the value is chosen.

Menu

Determines which of the input options will be selected and passed through as the default.

A , B ...

The available input index types that you want to switch between. You can define more input sockets in the sidebar Menu Switch panel.

Note: You can add more menu switch options to the empty socket.

Properties

Data Type
Data Type

Determines the type of the data that is handled by the node.

Outputs

Output

The output index.

Random Value

Random Value

Generates a random value.

Input

EntryWhat it does
MinThe minimum value of the range. This input is only available for Float, Integer, and Vector types.
MaxThe maximum value of the range. This input is only available for Float, Integer, and Vector types.
IDAn ID to drive the random number generator seed. By default, this input uses the same value as if the ID Node, which is the id attribute of the context geometry if it exists, and otherwise the index.
SeedThe random seed for the random number generation.

Properties

Data Type
Data Type

What kind of random value to create. The items should be self explaining.

Output

Value

The output value.

Repeat

Repeat

When adding a repeat zone, two nodes are added with a “zone” set between them. The inputs connected to the Repeat Input node reads and gets data at the beginning of the loop before starting the looping - then the data is processed within the zone, here you can set any changes to the data to then repeat the execution again at the beginning of the chain for the next iteration of the loop. This chain of operations is repeated the specified number of times in the Repeat Input node.

In the example in the image above, we duplicate the cube, transform it with a rotation, then join it together again. We do this 8 times in a loop, creating a circular array.

Note: It is not possible to set data outside the Repeat Zone, you can only get data from outside the Repeat Zone. Any data connected from the outside of the zone are constant throughout every iteration based on their value at the current frame. The result of the looping can only be accessed via the Repeat Output node.

Repeat Zone Input

The beginning of the iteration or loop.

Input
Iterations

Number of repetitions or loops.

Geometry

Standard geometry input.

Output
Geometry

Standard geometry output.

Repeat Zone Output

The result and output of the iteration or loop. You can define custom attributes outputs here from the

EntryWhat it does
InputGeometry: Standard geometry output.
OutputGeometry: Standard geometry output.

Switch

Switch

Switch between two inputs values based on a boolean.

Inputs

EntryWhat it does
SwitchThe boolean switch.
AThe input value A. Used when the switch is off.
BThe input value B. Used when the switch is on.

Properties

Input Type
Input Type

What input type the values are, which defines what type to output then.

Outputs

Output

Numerical value output.

Math

Add menu - Utilities - Math

Add menu - Utilities - Math
Add menu - Utilities - Math

Utility nodes are mainly for mathematical operations.

Bit Math

Bit Math

Performs a bit math operation between its inputs.

Inputs

The inputs depends of the chosen method.

Properties
Operation
Operation
EntryWhat it does
AndReturns a value where the bits of A and B are both set.
OrReturns a value where the bits of either A or B are set.
Exclusive OrReturns a value where only one bit of A and B is set.
NotReturns the opposite bit value of A, in decimal it is equivalent of A = -A -1
ShiftShifts the bit values of A by the specified Shift amount. Positive values shift left, negative values shift right.
RotateRotates the bit values of A by the specified Shift amount. Positive values rotates left, negative values rotates right.
Output
Boolean

Standard Boolean output.

Boolean Math

Boolean Math

The Boolean Math node performs a basic logical operation between its inputs.

Inputs
Boolean

Two standard Boolean inputs.

Properties
Operation
Operation
EntryWhat it does
AndTrue if both inputs are true.
OrTrue if either or both inputs are true.
NotTrue if both inputs are false.
Not And (NAND)True when at least one input is false.
Nor (NOR)True when both inputs are false.
Equal (XNOR)True when both inputs are equal.
Not Equal (XOR)True when both inputs are different.
Imply (IMPLY)True unless the first input is true and the second is false.
Subtract (NIMPLY)True when the first input is true and the second is false.
Output
Boolean

Standard Boolean output.

Integer Math

Integer Math

The Boolean Math node provides mathematical operations with integers.

Inputs
Value

Two standard value inputs.

Properties
Functions
Functions

The available mathematical functions to manipulate the input integers.

Output
Value

The value output.

Clamp

Clamp

Clamps a value between a minimum and a maximum.

Inputs
EntryWhat it does
ValueThe input value to be clamped.
MinThe minimum value.
MaxThe maximum value.
Properties
Clamp Type
Clamp Type
EntryWhat it does
Min MaxClamp values using Min and Max values.
RangeClamp values between Min and Max range.
Outputs
Result

The input value after clamping.

Compare

Compare

The Compare node takes two inputs and does a math comparison between them.

Inputs
A, B

Standard float value input.

Properties
Input Type
Input Type

What kind of data to compare.

Operation
Operation
EntryWhat it does
A is less than BTrue if A is smaller than B.
A is lesser than or equal BTrue if A is smaller or equal than B.
A is greater than BTrue if A is bigger than B.
A is greater than or equal BTrue if A is bigger or equal than B.
A is equal BTrue if A and B are the same.
A is not equal BTrue if A and B are different.
Output
Result

Standard Boolean output.

Float Curve

Float Curve

The Float Curve node maps an input float to a curve and outputs a float value. This curve can then be used for profiles for example.

Inputs
EntryWhat it does
FactorHow strong the input influences the output value.
AttributeThe input value.
Properties
Curve Field
Channel buttons
Channel buttons

Clicking on one of the channels displays the curve for each.

C (Combined RGB), R (Red), G (Green), B (Blue).

Navigation elements

They are described from left to right.

Zoom in and out

The two buttons with the magnifying glass at it zooms in and out in the curve window.

Clipping Options

Clipping Options

Clipping options. Set up clipping for the stroke.

Tools

Tools

Tools is a menu where you can find some curve related tools.

EntryWhat it does
Reset ViewResets the curve windows zoom.
Extend horizontalExtends the curve before the first curve point and behind the last curve point horizontally.
Extend extrapolatedExtends the curve before the first curve point and behind the last curve point extrapolated.
Reset CurveResets the curve to the initial shape.
Curve edit field

Create and tweak a Bezier curve that varies the input levels (X axis) to produce an output level (Y axis).

Selecting Points

Selecting Points

You can select curve points. This reveals two edit boxes for the x and y coordinate of this point.

Selected points can be moved around. Left click at them, hold the mouse button down and move them to a new location.

Adding Points

Adding Points

You can add new curve points by simply left clicking at the curve. Move the mouse to position them where you need it.

Curve point settings

Curve point settings

When you have a point selected then you will reveal further settings at the bottom.

EntryWhat it does
Vector HandleSet handle type to Vector.
Auto HandleSet handle type to Auto.
Auto Clamped HandleSet handle type to Auto Clamped.
Output
Value

The output value.

Float to Integer

Float to Integer

Converts a floating point value into an integer value.

Inputs
Float

The input float value.

Properties
Rounding Mode
Rounding Mode

How the float value should be converted.

Outputs
Integer

The output integer value.

Hash Value

Hash Value

The hash value converts a value input into a hashed value.

Note that Hashes cannot be relied upon to be used as unique identifiers because they are not guaranteed to be unique. It can be used to generate somewhat stable randomness especially in cases where White Noise does not offer enough flexibility.

Input
EntryWhat it does
ValueThe input value.
SeedA seed to randomize the value.
Properties
Properties
Data Type

What data type to create.

Output
Hash

The hash value output.

Map Range

Map Range

This node converts (maps) an input value range into a destination range. By default, values outside the specified input range will be proportionally mapped as well. This node is similar to Map Value node but provides a more intuitive way to specify the desired output range.

Inputs
EntryWhat it does
ValueStandard value input.
From MinStart of the input value range.
From MaxEnd of the input value range.
To MinStartof the destination range.
To MaxEnd of the destination range.
Properties
Data Type
Data Type

The data type to calculate.

Interpolation Type
Interpolation Type

how to interpolate the values between min and max.

Clamp

Clamps values to Min/Max of the destination range.

Outputs
Value

Standard value output.

Math

Math

The Math Node performs math operations.

Inputs

The inputs of the node are dynamic. Some inputs are only available with certain operations. For example, the Addend input is only available in the Multiply Add operator.

EntryWhat it does
ValueInput Value. Trigonometric functions read this value as radians.
AddendInput Addend.
BaseInput Base.
ExponentInput Exponent.
EpsilonInput Epsilon.
DistanceInput Distance.
MinInput Minimum.
MaxInput Maximum.
IncrementInput Increment.
ScaleInput Scale.
DegreesInput Degrees.
RadiansInput Radians.
Properties
Operation
Operation

The mathematical operator to be applied to the input values:

EntryWhat it does
FunctionsAdd: The sum of the two values. · Subtract: The difference between the two values. · Multiply: The product of the two values. · Divide: The division of the first value by the second value. · Multiply Add: The sum of the product of the two values with Addend.
PowerThe Base raised to the power of Exponent. · Logarithm: The log of the value with a Base as its base. · Square Root: The square root of the value. · Inverse Square Root: One divided by the square root of the value. · Absolute: The input value is read with without regard to its sign. This turns negative values into positive values. · Exponent: Raises Euler’s number to the power of the value.
ComparisonMinimum: Outputs the smallest of the input values. · Maximum: Outputs the largest of two input values. · Less Than: Outputs 1.0 if the first value is smaller than the second value. Otherwise the output is 0.0. · Greater Than: Outputs 1.0 if the first value is larger than the second value. Otherwise the output is 0.0. · Sign: Extracts the sign of the input value. All positive numbers will output 1.0. All negative numbers will output -1.0. And 0.0 will output 0.0. · Compare: Outputs 1.0 if the difference between the two input values is less than or equal to Epsilon. · Smooth Minimum: Smooth Minimum. · Smooth Maximum: Smooth Maximum.
Rounding
EntryWhat it does
RoundRound the input value to the nearest integer.
FloorRounds the input value down to the nearest integer.
CeilRounds the input value up to the nearest integer.
TruncateOutputs the integer part of the value.
FractionFraction.
ModuloOutputs the remainder once the first value is divided by the second value.
WrapOutputs a value between Min and Max based on the absolute difference between the input value and the nearest integer multiple of Max less than the value.
SnapRound the input value to down to the nearest integer multiple of Increment.
Ping-pongThe output value is moved between 0.0 and the Scale based on the input value.
Trigonometric
EntryWhat it does
SineThe Sine of the input value.
CosineThe Cosine of the input value.
TangentThe Tangent of the input value.
ArcsineThe Arcsine of the input value.
ArccosineThe Arccosine of the input value.
ArctangentThe Arctangent of the input value.
Arctan2Outputs the Inverse Tangent of the first value divided by the second value measured in radians.
Hyperbolic SineThe Hyperbolic Sine of the input value.
Hyperbolic CosineThe Hyperbolic Cosine of the input value.
Hyperbolic TangentThe Hyperbolic Tangent of the input value.
Conversion
EntryWhat it does
To RadiansConverts the input from degrees to radians.
To DegreesConverts the input from radians to degrees.
ClampLimits the output to the range (0.0 to 1.0). See Clamp.
Outputs
Value

Numerical value output.

Mix

Mix

Allows to mix values and vectors in various ways. The node has three different modes. Float, Vector and Color. This node covers the Float mode

Input
Input
Float
EntryWhat it does
FactorThe mix factor.
AFloat value A input.
BFloat value B input.
Properties
Properties
Data Type

The data type to calculate.

Output
Result

The output value or vector.

Text

Add menu - Utilities - Text

Add menu - Utilities - Text
Add menu - Utilities - Text

Text object related nodes.

Format String

Format String

Insert Values into a string using a Python and path template compatible formatting syntax.

The syntax can be found here: https://docs.python.org/3/library/string.html#format-string-syntax

EntryWhat it does
InputsStrings: The strings that you want to modify.
PropertiesString: The python syntax to modify the string.
OutputString: The output string.

Join Strings

Join Strings

Allows you to join several string into a text string.

EntryWhat it does
InputsDelimiter: Add a delimiter character. · Strings: The strings that you want to join into one text string.
OutputString: The output string.

Match Strings

Match Strings

Allows you to compare strings to match conditions

Inputs
EntryWhat it does
StringThe input string.
KeyAn input key.
Properties
Properties
Operation

What string condition to match.

Output
Result

The output strings that matches the condition.

Replace Strings

Replace Strings

Find and replace strings inside of the input string.

EntryWhat it does
InputsString: The input string. · Find: The string part that you want to replace. · Replace: The string part that you use to replace the selected string part.
OutputString: The strings that you want to join into one text string.

Slice String

Slice String

Allows you to extract a string from a substring at given position with given length.

EntryWhat it does
InputsString: The source string. · Position: The start position of the sub string. · Length: The length of the substring.
OutputsString: The output substring.

Find in String

Find in String

Returns an integer of the total count of matching strings or the first integer position of a matching string

EntryWhat it does
InputsString: The string that you want to search in. · Search: The string that would be matched in the string search.
OutputsFirst Found: Returns the integer position of the first character of the found string. · Count: Returns an integer position of the first character of the found string.

String length

String length

Gives back the number of characters in this string.

EntryWhat it does
InputsString: The string that you want to calculate.
OutputsLength: How many characters the string has.

String to Curves

String to Curves

Converts the letters of a text into curve objects.

Inputs
EntryWhat it does
StringThe text string to convert.
SizeSize of the string.
Character SpacingThe character spacing of the string.
Word SpacingThe word spacing of the string.
Line SpacingThe line spacing of the string.
Max WidthThe maximum width of the string.
Properties
Font property
Font property
Font browser
Font browser

A list of the loaded fonts.

EntryWhat it does
Font Edit BoxThe active font.
Number of UsersThe number of users for this font.
Fake UserKeep this font in the .blend file even when it has no users. The default font is special in this regards. It will not vanish when you close the file, even when it has no fake user assigned.
Open FontLoad a system font.
RemoveRemoves the active font. The default font is special in this regards. You cannot delete it.
Overflow
Overflow

The overflow method for the text.

Overflow
Align X

How to align the text horizontally

Align Y
Align Y

How to align the text vertically.

Pivot Point
Pivot Point

What point of the string to use as the pivot point.

Output
EntryWhat it does
Curve InstancesThe curves output.
LineOutputs the line number of the character.
Pivot PointOutputs the selected pivot point position per character.

String to Value

String to Value

Converts a string input (e.g. "3.14" or "42") into a numeric value that can be used in fields, modifiers, or procedural logic. It also outputs the length of the string for additional control or validation.

Inputs
String

The input string.

Properties
Properties
EntryWhat it does
Data TypeSpecifies the target data type for conversion
OutputsValue: The output value. · Length: The number of characters in the input string as an Integer.

Value to String

Value to String

Converts a value to a string.

Inputs
EntryWhat it does
ValueThe input value.
DecimalsHow many decimals the value has.
Properties
Properties
EntryWhat it does
Data TypeSpecifies the target data type for conversion
OutputsString: The output string.

Special Character

Special Character

Adds special characters to the text string.

Outputs
EntryWhat it does
Line BreakAdds a Line Break to the text string.
TabAdds a tab to the text string.

Vector

Add menu - Vector

Add menu - Vector
Add menu - Vector

Vector nodes are for calculating vector operations.

Combine XYZ

Combine XYZ

The Combine XYZ Node combines a vector from its individual components.

EntryWhat it does
InputX Y and Z: X, Y and Z values.
OutputColor: Color output.

Map Range

Map Range

Remap a value from a range to a target range.

Input
EntryWhat it does
From MinVector 3 from the minimum input.
From MaxVector 3 from the maximum input.
To MinVector 3 to the minimum input.
To MinVector 3 to the maximum input.
Properties
Data Type
Data Type

What data to calculate.

Interpolation Type
Interpolation Type

The interpolation method for the operation.

Clamp

Clamp the result to the target range of To Min - To Max.

Outputs
Vector

The output vector.

Mix Vector

Mix Vector

Allows to mix values and vectors in various ways. The node has three different modes. Float, Vector and Color. This here is the node in Vector mode.

Input
Factor
Factor
Factor

The mix factor. With mode Uniform it is a single value. With mode Non Uniform it is a vector.

A
A

Vector A input.

B

Vector B input.

Properties
Data Type
Data Type

Which mode to use. We cover here the Vector mode.

Factor Mode
Factor Mode

Use a single value or a vector for the factor.

Output
Result

The output value or vector.

Separate XYZ

Separate XYZ

The Separate XYZ Node splits a vector into its individual components.

EntryWhat it does
InputVector: The Input vector.
OutputX, Y and Z: The output vectors for X, Y and Z.

Radial Tiling

Radial Tiling

The Separate XYZ Node splits a vector into its individual components.

EntryWhat it does
InputVector: The Input vector. · Sides: Number of angluar segments for tiling. · Roundness: Roundness of the segments coordinate systems.
PropertiesNormalize: Stretch the textures to fit into each angular segment.
OutputSegment Coordinates: The segment coordinates for texture mapping. · Segment ID: Unique ID for every segment. · Segment Width: The width of every segment. · Segment Rotation: The rotation of every segment.

Vector Curves

Vector Curves

The Vector Curves node maps an input vector components to a curve.

Inputs
EntryWhat it does
FactorStandard vector input.
VectorStandard vector input.
Properties
Channel
X Y Z
X Y Z

X, Y, Z Channel buttons. Clicking on one of the channels displays the curve for each.

Curve edit field

Create and tweak a Bezier curve that varies the input levels (X axis) to produce an output level (Y axis).

Selecting Points
Selecting Points

You can select curve points. This reveals two edit boxes for the x and y coordinate of this point.

Selected points can be moved around. Left click at them, hold the mouse button down and move them to a new location.

Selecting Points
Adding Points

This setting uses the curve widget: click to add points, drag to move them. See Curve Widget in the Interface chapter.

Navigation elements

The navigation elements at the top are described from left to right.

Zoom in and out

The two buttons with the magnifying glass at it zooms in and out in the curve window.

Clipping
Clipping

Clipping options. Set up clipping for the stroke.

Tools
Tools

Tools is a menu where you can find some curve related tools.

EntryWhat it does
Reset ViewResets the curve windows zoom.
Extend horizontalExtends the curve before the first curve point and behind the last curve point horizontally.
Extend extrapolatedExtends the curve before the first curve point and behind the last curve point extrapolated.
Reset CurveResets the curve to the initial shape.

Vector Handle

Vector Handle

Set handle type to Vector.

EntryWhat it does
Auto HandleSet handle type to Auto.
Auto Clamped HandleSet handle type to Auto Clamped.
EntryWhat it does
X Y valuesThe x and y values of the selected curve point.
Delete PointsDeletes selected curve points.
Outputs
Vector

Standard vector output.

Vector Math

Vector Math

The Vector Math node performs the selected math operation on the input vectors.

Inputs

The inputs of the node are dynamic. Some inputs are only available in certain operations. For instance, the Scale input is only available in the Scale operator.

EntryWhat it does
VectorInput vector A.
VectorInput vector B.
ScaleInput Scale.
Properties
Operation
Operation

The vector math operator to be applied on the input vectors.

Outputs

The output of the node is dynamic. It is either a vector or a scalar depending on the operator. For instance, the Length operator have a scalar output while the Add operator have a vector output.

EntryWhat it does
VectorOutput vector.
ValueOutput value.

Vector Rotate

Vector Rotate

The Vector Rotate node allows rotations by a vector.

Inputs

The inputs of the node are dynamic. Some inputs are only available in certain operations. For instance, the Angle input is just available with the Axis Angle type.

EntryWhat it does
VectorInput vector.
CenterInput Center
AxisInput Axis.
AngleInput Angle
Properties
Type
Type

The rotation type.

Outputs
Vector

The Output vector.

Bundle

Add menu - Bundle

Add menu - Bundle
Add menu - Bundle

Bundles are like packed containers—they let you group multiple values (like vectors, floats, booleans) into a single wire. Think of them as a way to package data together and pass it around cleanly.

Combine Bundle

Combine Bundle

This node takes multiple inputs and wraps them into a single bundle.

Inputs
Sockets
Sockets

This is a dynamic socket that will populate with whatever you want to plug into it for later use. Accepts one or more bundle-compatible data streams.

These could represent attributes, geometry sets, vales, vectors, or grouped attributes depending on context.

Outputs
Bundle Socket

Standard bundle socket with a unified bundle containing all input elements. Use this to pass the packaged sockets to a Separate Bundle node for later user down the node tree lines.

Separate Bundle

Separate Bundle

This node unpacks a bundle back into its individual components.

Separate Bundle
EntryWhat it does
InputsThe inputs of the node are dynamic. Some inputs are only available in certain operations. For instance, the Scale input is only available in the Scale operator. · Bundle: Standard bundle socket with a unified bundle containing all input elements from a Combine Bundle node.
OutputsSockets: This is a dynamic series of socket that will populate with whatever is available from the incoming bundle line. Ouptuts one or more bundle-compatible data streams. These could represent attributes, geometry sets, vales, vectors, or grouped attributes depending on context.

Join Bundle

Join Bundle

Merges two or more Bundle inputs into a single output bundle.

Join Bundle

This enables modular data structuring, reuse, and override logic in procedural workflows—similar to combining structs in programming.

EntryWhat it does
InputsBundle: Bundle 1, Bundle 2, … Accepts multiple bundles created via the Combine Bundle node. Each bundle may contain different types of data (e.g. Float, Vector, String, Color)
OutputsBundle Socket: Standard bundle socket with a unified bundle containing all input elements. Use this to pass the packaged sockets to a Separate Bundle node for later user down the node tree lines.

Closure

Add menu - Closure

Add menu - Closure
Add menu - Closure

Vector nodes are for calculating vector operations.

Closures allow you to pass custom logic into node groups—like injecting a mini-function or behavior block. They’re ideal for creating reusable, pluggable systems where the user can define part of the logic externally.

Closure Zone

Closure Zone

The closure function to be executed.

Purpose

Defines logic that will be injected into a node group or node tree. Think of it as a sandbox where the user builds a mini-node tree that gets executed when the closure is evaluated during the execution of another node tree.

A Closure encapsulates the logic defined in the Closure Zone. This output is typically connected to an Evaluate Closure node inside a node group or injected into another node tree.

Use Cases:

  • Custom deformation logic injected into a reusable node group.
  • Procedural scattering patterns defined externally.
  • Field-based attribute manipulation with user-defined formulas.
  • Behavior overrides for geometry processing pipelines.
Behavior
Behavior

The Closure Node creates a Closure Zone—a subgraph where the logic is built using the declared inputs. This zone behaves like a function.

  • Closure Inputs appear as sockets at the top of the zone. Data from outside the zone can also be referenced.
  • Outputs are defined using Closure output nodes.

<!-- -->

  • The logic inside is encapsulated and only runs when evaluated externally.

How It Works (Conceptually)

  1. Authoring: You define a Closure Zone with custom logic (e.g., a tree scattering pattern).
  2. Packaging: The Closure node wraps that logic into a closure line.
  3. Injection: Inside a node group or elsewhere in a node tree, the Evaluate Closure node pulls in that logic and runs it with the provided inputs.
  4. Modularity: You can swap closures to change behavior without modifying the node tree or nodegroup itself.

When the node group containing an Evaluate Closure node runs, it pulls in the logic from the Closure Zone and executes it in place. The zone is not executed immediately—it’s stored as a callable block.

Requirements

Input and output names in the Closure Zone must match those expected by the Evaluate Closure node.

Can include any Geometry Nodes logic, including fields, math, distribution patterns, etc.

Properties
Properties

These panel defines the parameters that the closure will pass when evaluated. Each item becomes a socket in the Closure Zone.

You can access these properties in the sidebar to the right in the Node tab.

EntryWhat it does
Sync ButtonUpdates the sockets to what is actually used from a Closure Zone, meaning the input/output sockets update to what is evaluated in the logic of the closure automatically. Useful to not do this manually.
Input ItemsParametersofvalues passed into the Closure logic (e.g., geometry, fields, values) for user customizability.
Output ItemsWhatever parameters the Closure logic returns—could be geometry, fields, instances, values, etc
Common PropertiesAdd / Remove / Reorder Controls: + (Add): Creates a new input socket. – (Remove): Deletes the selected input. ↑ / ↓ (Reorder): Adjusts the order of inputs for visual clarity and UX consistency. · Name: Identifier for the input. Must match the name used in Evaluate Closure. · Socket Type: Data type of the input (e.g., Float, Vector, Boolean, Geometry, Field). · Structure Type: Defines how the input is treated: Auto, Dynamic, Field, Grid, List, or Single.

Evaluate Closure

Evaluate Closure

This node calls the logic stored in the Closure object.

It passes in the provided parameters and returns the result of the closure’s internal node tree. Execution is deferred—the logic only runs when this node is evaluated in the context of the node group.

EntryWhat it does
Closure InputA Closure socket input created by a Closure zone. This contains the logic to be executed from that Closure zone.
Interface Inputs / OutputsNamed inputs/outputs from the Closure properties that match the Closure Zone’s expected parameters for the enclosed logic to be evaluated.
Properties
Properties

This panel defines the parameters that the closure will accept when evaluated. Each item becomes a socket in the Closure Zone.

You can access these properties in the sidebar to the right in the Node tab.

EntryWhat it does
Sync ButtonUpdates the sockets to what is actually used from a Closure Zone, meaning the input/output sockets update to what is evaluated in the logic of the closure automatically. Useful to not do this manually.
Add / Remove / Reorder Controls+ (Add): Creates a new input socket. – (Remove): Deletes the selected input. ↑ / ↓ (Reorder): Adjusts the order of inputs for visual clarity and UX consistency.
NameIdentifier for the input. Must match the name used in Evaluate Closure.
Socket TypeData type of the input (e.g., Float, Vector, Boolean, Geometry, Field).
Structure TypeDefines how the input is treated: Auto, Dynamic, Field, Grid, List, or Single.

Field

Add menu - Utilities - Field

Add menu - Utilities - Field
Add menu - Utilities - Field

Field nodes.

Accumulate Field

Accumulate Field

Creates a running total of a given Vector, Float, or Int field.

Inputs
EntryWhat it does
ValueThe field to be accumulated.
Group IndexThe values of this input are used to aggregate the input into separate 'bins', creating multiple accumulations.
Properties
Data Type
Data Type

What data type to work with.

Data Type

Domain

From which domain to use the data.

Outputs
EntryWhat it does
Leading and TrailingReturns the running totals starting at either the first value of each accumulations or 0 if there is no data
TotalReturns the total accumulation at all positions of the field.

Evaluate at Index

Evaluate at Index

This node allows accessing data of other elements in the context geometry.
It is similar to the Transfer Attribute node in Index mode. The main difference
is that this node does not require a geometry input, because the context
is used.

Inputs
EntryWhat it does
IndexInput Index.
ValueInput Value.
Properties
Properties
Data Type

What data type to calculate.

Domain
Domain

What geometry to calculate.

Output
Value

The output value.

Evaluate on Domain

Evaluate on Domain

This node evaluates an existing field on a separate domain in a larger field context - an alternative to the Capture Attribute node. This nodes gets the field type of an existing field from the input socket and interpolates the field type as an array in the output socket.

Inputs
Value

The input value to get the field.

Properties
Properties
Data Type

Select the Data Type - which can be float, integer, vector, color and boolean.

Domain
Domain

The domain the Field evaluates. This gets and filters the field type. The domain can be point, edge, face, face corner, spline or instance.

Outputs
Value

The output value.

Field Average

Field Average

Calculate the mean and median of a given field.

Inputs
EntryWhat it does
ValueThe input value to get the field.
Group IDThe input Group ID to get the field.
Properties
Properties
Data Type

Select the Data Type - which can be float, integer, vector, color and boolean.

Domain
Domain

The domain the Field evaluates. This gets and filters the field type. The domain can be point, edge, face, face corner, spline or instance.

Outputs
EntryWhat it does
MeanThe Mean output value.
MedianThe Median output value.

Field Min & Max

Field Min & Max
Field Min & Max

Calculate the minimum and maximum of a given field.

Inputs
EntryWhat it does
ValueThe input value to get the field.
Group IDThe input Group ID to get the field.
Properties
Properties
Data Type

Select the Data Type - which can be float, integer, vector, color and boolean.

Domain
Domain

The domain the Field evaluates. This gets and filters the field type. The domain can be point, edge, face, face corner, spline or instance.

Outputs
EntryWhat it does
MinThe Min output value.
MaxThe Max output value.

Field Variance

Field Variance

Calculate the standard derivation and variance of a given field.

Inputs
EntryWhat it does
ValueThe input value to get the field.
Group IDThe input Group ID to get the field.
Properties
Properties
Data Type

Select the Data Type - which can be float, integer, vector, color and boolean.

Domain
Domain

The domain the Field evaluates. This gets and filters the field type. The domain can be point, edge, face, face corner, spline or instance.

Outputs
EntryWhat it does
Standard derivationThe Min output value.
VarianceThe Max output value.

Matrix

Add menu - Utilities - Matrix

Add menu - Utilities - Matrix
Add menu - Utilities - Matrix

Matrix nodes.

Combine Matrix

Combine Matrix

Combines values into a matrix. A matrix is something like a transform cage. A vector 4 in 4 dimensions.

Inputs
Inputs
Column 1 , 2, 3, 4

Allows you to combine values into the matrix. A matrix is made of four vector 4 in 4 dimensions. So 16 values.

Output
Matrix

The output matrix.

Combine Transform

Combine Transform

Combines transforms.

EntryWhat it does
InputsTranslation: The translation input vector. · Rotation: The rotation input vector. · Scale: The scale input vector.
OutputTransform: The output transform.

Matrix Determinant

Matrix Determinant

The Matrix Determinant Node is used for calculating the determinant of a given matrix. Use this node to evaluate whether a matrix has properties for invertibility, scaling, and orientation.

EntryWhat it does
InputsMatgrix: Accepts a matrix input.
OutputDeterminant: Returns a single numerical value representing the determinant of the input matrix. If the determinant is zero, the matrix is non-invertible.

Invert Matrix

Invert Matrix

Inverts the matrix values.

EntryWhat it does
InputsMatrix: The input matrix.
OutputMatrix: The output matrix. · Invertible: The inverted values.

Multiply Matrix

Multiply Matrix

Multiplies the values of two matrices.

EntryWhat it does
InputsMatrix, Matrix: The input matrices
OutputMatrix: The output matrix.

Project Point

Project Point

Projects a transform point by a vector.

EntryWhat it does
InputsVector: The input vector · Transform: The input transform point
OutputVector: The output vector.

Separate Matrix

Separate Matrix

Extract single values from a matrix. A matrix is something like a transform cage. A vector 4 in 4 dimensions.

Inputs
Matrix

The input matrix.

Output
Output
Column 1 , 2, 3, 4

Extract the values from a row in a column. A matrix is made of four vector 4 in 4 dimensions. So 16 values.

Separate Transform

Separate Transform

Extracts the translation, rotation or scale values from a transform.

EntryWhat it does
InputsTransform: The input transform.
OutputTranslation: The translation output vector. · Rotation: The rotation output vector. · Scale: The scale output vector.

Transform Direction

Transform Direction

Set the direction of a transform.

EntryWhat it does
InputsDirection: The input vector 3. · Transform: The input transform.
OutputDirection: The output direction.

Transform Point

Transform Point

Transform a transform point.

EntryWhat it does
InputsVector: The input vector 3. · Transform: The input transform.
OutputDirection: The output vector.

Transpose Matrix

Transpose Matrix

Retreive the transpose matrix from a matrix.

EntryWhat it does
InputsMatrix: The input matrix.
OutputMatrix: The output transpose matrix.

Rotation

Add menu - Utilities - Rotation

Add menu - Utilities - Rotation
Add menu - Utilities - Rotation

Utility nodes are mainly for mathematical operations.

Align Rotation to Vector

Align Rotation to Vector
Align Rotation to Vector

Aligns a rotation to a vector.

Inputs
EntryWhat it does
RotationThe input euler rotation vector.
FactorThe factor to align the euler value to the vector.
VectorThe vector to align to.
Properties
Align Axis

To which axis to align the vector.

Pivot
Pivot

The pivot axis.

Output
Rotation

The output rotation euler angle.

Axes to rotation

Axes to rotation

Creates a rotation from a primary and a secondary axis. The axis should be ideally orthogonal.

EntryWhat it does
InputsPrimary Axis: The axis to rotate around. · Secondary Axis: The secondary axis that gives the alignment.
PropertiesPrimary axis: Which axis to rotate around. · Secondary Axis: Which axis to align to.
OutputRotation: The output rotation euler angle.

Axis Angle to Rotation

Axis Angle to Rotation
Axis Angle to Rotation

Converts an axis angle to a rotation.

EntryWhat it does
InputsAxis: The input axis. · Angle: The input angle.
OutputRotation: The output rotation value.

Euler to Rotation

Euler to Rotation

Converts an euler angle to a rotation.

EntryWhat it does
InputsEuler: The input euler angle vector.
OutputRotation: The output rotation value.

Invert Rotation

Invert Rotation

Inverts a rotation

EntryWhat it does
InputsRotation: The input rotation vector.
OutputRotation: The output rotation value.

Mix Rotation

Mix Rotation

Rotates an euler rotation by another euler rotation.

Inputs
EntryWhat it does
Factoramount of mixing between a and b inputs.
A, BThe input.
Properties
Properties
Data Type

What data to calculate.

Outputs
Rotation

The euler angle output.

Rotate Rotation

Rotate Rotation

Rotates an euler rotation by another euler rotation.

Inputs
EntryWhat it does
RotationUse the rotation of an existing geometry.
Rotate ByThe input rotation.
Properties
Rotate Space
EntryWhat it does
GlobalRotate by the global orientation
LocalRotate by the local orientation
Outputs
Rotation

The euler angle output.

Rotate Vector

Rotate Vector

Rotates a vector.

EntryWhat it does
InputsVector: The input vector. · Rotation: The input rotation.
OutputRotation: The output rotation value.

Rotation to Axis Angle

Rotation to Axis Angle
Rotation to Axis Angle

Converts a rotation vector to axis angle.

EntryWhat it does
InputsRotation: The input vector.
OutputAxis: The axis output. · Angle: The angle output.

Rotation Euler

Rotation Euler

Converts a rotation vector to an euler angle.

EntryWhat it does
InputsRotation: The input vector.
OutputEuler: The euler angle.

Rotation to Quaternion

Rotation to Quaternion

Converts a quaternion to a rotation vector.

EntryWhat it does
InputsRotation: The input vector.
OutputW, X, Y, Z: The single output values of the quaternion.

Quaternion to Rotation

Quaternion to Rotation

Converts a rotation vector to a quaternion.

EntryWhat it does
InputsW, X, Y, Z: The single input values of the quaternion.
OutputRotation: The output rotation.

Deprecated

Add menu - Deprecated

Add menu - Deprecated
Add menu - Deprecated

These deprecated nodes are kept for compatibility reasons.

Align Euler to Vector (Deprecated)

Align Euler to Vector (Deprecated)
Align Euler to Vector (Deprecated)

Aligns a euler value to a vector.

Inputs
EntryWhat it does
RotationThe input euler rotation vector.
FactorThe factor to align the euler value to the vector.
VectorThe vector to align to.
Properties
Align Axis

To which axis to align the vector.

Pivot
Pivot

The pivot axis.

Output
Rotation

The output rotation euler angle.

Rotate Euler (Deprecated)

Rotate Euler (Deprecated)

Rotates an euler rotation. This node will be removed in the near future. Alternatively use the Rotate Rotation node.

Inputs
EntryWhat it does
RotationUse the rotation of an existing geometry.
Rotate ByThe input rotation.
Properties
EntryWhat it does
Rotate TypeAxis Angle: Rotate around an axis by an angle. · Euler: Rotate around the x, y and z axis.
Rotate SpaceObject: Rotate points in the local space of the object. · Point: Rotate every point in its local space.
Outputs
Rotation

The euler angle output.