Skip to main content
Documentation
Node Editor

Vector Nodes

Dot and cross products, length, distance, angle, reflect and refract, and building, splitting, and fading vectors.

This category contains 12 nodes.

Nodes

Absolute Vector

Takes the absolute value of X, Y, and Z separately, so every component becomes positive.

Inputs: A 3D vector.

NameTypeRangeDefault
VectorVectorvec[0, 0, 0]

Outputs: The vector with all values positive.

NameTypeRange
VectorVector≥0

Angle Between Vectors

Finds the angle between two directions: 0° when they are parallel, 90° when perpendicular, and 180° when opposite.

Inputs: The two direction vectors.

NameTypeRangeDefault
Vector AVectorvec[0, 0, 0]
Vector BVectorvec[0, 0, 0]

Outputs: The angle in degrees.

NameTypeRange
NumberNumberany

Combine Vector

Builds a position from separate X, Y, and Z values. Use it to build a position or change one coordinate.

Inputs: The X, Y, and Z values.

NameTypeRangeDefault
XNumberany0
YNumberany0
ZNumberany0

Outputs: The combined 3D position.

NameTypeRange
VectorVectorvec

Cross Product

Returns a direction perpendicular to two input directions. Use it for rotation and orientation math.

Inputs: The two directions.

NameTypeRangeDefault
Vector AVectorvec[0, 0, 0]
Vector BVectorvec[0, 0, 0]

Outputs: A direction perpendicular to both inputs.

NameTypeRange
VectorVectorvec

Distance Between Vectors

Measures how far apart two positions are across all three axes. Use it for proximity effects such as glows or falloffs from a center point. Because Z counts, a shape at a fixed depth is near only the fixtures at that depth. On a rig with depth, project onto XY first.

Inputs: The two positions to measure between. The node reads all three components of each.

NameTypeRangeDefault
Vector AVectorvec[0, 0, 0]
Vector BVectorvec[0, 0, 0]

Outputs: The distance, never negative.

NameTypeRange
NumberNumberany

Dot Product

Measures how aligned two directions are. It returns a positive value when they point the same way, a negative value when they point in opposite directions, and zero when they are perpendicular.

Inputs: Two directions or positions.

NameTypeRangeDefault
Vector AVectorvec[1, 0, 0]
Vector BVectorvec[0, 1, 0]

Outputs: The alignment, positive for the same direction and negative for opposite directions.

NameTypeRange
NumberNumberany

Length

Returns the length of a vector, also called its magnitude. The length is the distance from the origin (0,0,0) to the point. Use it for radial effects.

Inputs: A position or direction.

NameTypeRangeDefault
VectorVectorvec[1, 0, 0]

Outputs: The distance from the origin, never negative.

NameTypeRange
NumberNumber≥0

Reflect

Bounces a direction off a surface like a mirror, for reflection effects.

Inputs: The incoming direction and the surface orientation.

NameTypeRangeDefault
IncidentVectorvec[1, 0, 0]
NormalVectorvec[0, 1, 0]

Outputs: The bounced direction.

NameTypeRange
VectorVectorvec

Refract

Bends a direction as it passes through a surface, like light through glass or water.

Inputs: The incoming direction, the surface orientation, and the bending strength.

NameTypeRangeDefault
IncidentVectorvec[1, 0, 0]
NormalVectorvec[0, 1, 0]
EtaNumberany1.5

Outputs: The bent direction.

NameTypeRange
VectorVectorvec

Smooth Step Vector

Fades smoothly between two edges on each axis, for soft transitions.

Inputs: The vector to fade and the Min and Max edges of the transition on each axis. The ports have the same names and meaning as on Smoothstep.

NameTypeRangeDefault
VectorVectorvec[0.5, 0.5, 0.5]
MinVectorvec[0, 0, 0]
MaxVectorvec[1, 1, 1]

Outputs: The vector with each component faded smoothly from 0 to 1.

NameTypeRange
VectorVectorvec

Split Vector

Separates a position into its X, Y, and Z parts so you can work with each coordinate.

Inputs: A 3D position.

NameTypeRangeDefault
VectorVectorvec[0.5, 0.5, 0.5]

Outputs: The separate X, Y, and Z values.

NameTypeRange
XNumberany
YNumberany
ZNumberany

Uniform Vector

Copies one number into all three axes. Use it when a vector port needs the same value on every axis. It replaces the wiring of one number into Combine Vector three times.

Inputs: One number.

NameTypeRangeDefault
ScalarNumberany1

Outputs: A vector with that number on X, Y, and Z.

NameTypeRange
VectorVectorvec