search
Start typing to search...

Math / Logical, Vector, Color Modules

Author: Aximmetry

Introduction

This document describes the built-in Flow Graph modules of the following categories for compounds:

  • Math / Logical - Modules that evaluate logical conditions and comparisons to control signal flow.
  • Math / Vector - Modules that compose, analyze, and transform vectors, rotations, and geometric relationships.
  • Math / Color - Modules that convert, decompose, compose, and blend color values across color models.

Math / Logical

This section describes the built-in Flow Graph modules that evaluate logical conditions and comparisons to control signal flow.

And

  • Category: Math / Logical
  • Access: All editions.
  • Function: Combines two logical inputs with logical AND.
  • Input pins:
    •   A (logical) - First logical operand.
    •   B (logical) - Second logical operand.
  • Output pins:
    •   Out (logical) - On when both inputs are on.

Array And

  • Category: Math / Logical
  • Access: All editions.
  • Function: Combines logical values from a span of array-compound instances with logical AND, starting from on when no instance contributes.
  • Input pins:
    •   In (logical) - Logical value for this instance; other instances are read from matching modules in the compound.
    •   Start Index (integer) - One-based index of the first instance in the range (clamped to the compound size).
    •   Count (integer) - How many consecutive instances to include from the start index (clamped to the compound size).
  • Output pins:
    •   Out (logical) - Logical AND across the selected instances (skips missing instances).

Array Or

  • Category: Math / Logical
  • Access: All editions.
  • Function: Combines logical values from a span of array-compound instances with logical OR, starting from off when no instance contributes.
  • Input pins:
    •   In (logical) - Logical value for this instance; other instances are read from matching modules in the compound.
    •   Start Index (integer) - One-based index of the first instance in the range (clamped to the compound size).
    •   Count (integer) - How many consecutive instances to include from the start index (clamped to the compound size).
  • Output pins:
    •   Out (logical) - Logical OR across the selected instances (skips missing instances).

Bit And

  • Category: Math / Logical
  • Access: All editions.
  • Function: Bitwise AND of two integer values.
  • Input pins:
    •   A (integer) - First integer operand.
    •   B (integer) - Second integer operand.
  • Output pins:
    •   Out (integer) - Integer with bits set where both operands have that bit set.

Bit Not

  • Category: Math / Logical
  • Access: All editions.
  • Function: Bitwise complement of an integer value.
  • Input pins:
    •   In (integer) - Integer whose bits are inverted.
  • Output pins:
    •   Out (integer) - Integer with every bit toggled.

Bit Or

  • Category: Math / Logical
  • Access: All editions.
  • Function: Bitwise OR of two integer values.
  • Input pins:
    •   A (integer) - First integer operand.
    •   B (integer) - Second integer operand.
  • Output pins:
    •   Out (integer) - Integer with bits set where either operand has that bit set.

Bit Shift

  • Category: Math / Logical
  • Access: All editions.
  • Function: Shifts an integer left for a non-negative amount, or right by the magnitude when the amount is negative.
  • Input pins:
    •   In (integer) - Integer value to shift.
    •   Amount (integer) - Shift distance in bits (left for zero or positive, right for negative).
  • Output pins:
    •   Out (integer) - Shifted integer.

Bit Test

  • Category: Math / Logical
  • Access: All editions.
  • Function: Reports whether a chosen bit is set in an integer.
  • Input pins:
    •   Bits (integer) - Integer bit pattern to inspect.
    •   Index (integer) - One-based bit index (1 = least significant bit).
  • Output pins:
    •   Out (logical) - On if the selected bit is 1.

Bit Xor

  • Category: Math / Logical
  • Access: All editions.
  • Function: Bitwise exclusive OR of two integer values.
  • Input pins:
    •   A (integer) - First integer operand.
    •   B (integer) - Second integer operand.
  • Output pins:
    •   Out (integer) - Integer with bits set where exactly one operand has that bit set.

Bits To Vector

  • Category: Math / Logical
  • Access: All editions.
  • Function: Unpacks a contiguous run of bits from an integer into vector components (1 or 0).
  • Input pins:
    •   Bits (integer) - Integer whose bits are read.
    •   Start Index (integer) - One-based index of the first bit to extract (least significant is 1).
    •   Count (integer) - How many bits to output, capped so reading stops at bit 31.
  • Output pins:
    •   Out (vector) - Vector with one component per bit, 1 when the bit is set and 0 when it is clear.

Equal

  • Category: Math / Logical
  • Access: All editions.
  • Function: Compares two values for exact equality.
  • Input pins:
    •   A (scalar) - Left-hand value in the comparison.
    •   B (scalar) - Right-hand value in the comparison.
  • Output pins:
    •   Out (logical) - On when the two values match exactly.

Greater

  • Category: Math / Logical
  • Access: All editions.
  • Function: Tests whether the first value is strictly greater than the second.
  • Input pins:
    •   A (scalar) - Left-hand value in the comparison.
    •   B (scalar) - Right-hand value in the comparison.
  • Output pins:
    •   Out (logical) - On when A is greater than B.

Greater Or Equal

  • Category: Math / Logical
  • Access: All editions.
  • Function: Tests whether the first value is greater than or equal to the second.
  • Input pins:
    •   A (scalar) - Left-hand value in the comparison.
    •   B (scalar) - Right-hand value in the comparison.
  • Output pins:
    •   Out (logical) - On when A is greater than or equal to B.

If

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two vectors using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then vector is used; when off, the Else vector is used.
    •   Then (vector) - Vector when the selector is on.
    •   Else (vector) - Vector when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (vector) - The selected vector.

If Collection

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects one of two collections with a logical selector and updates the output when the selector changes or the active branch’s collection changes.
  • Input pins:
    •   If (logical) - When on, the Then collection is passed through; when off, the Else collection is passed through.
    •   Then (collection) - Collection used when the selector is on.
    •   Else (collection) - Collection used when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (collection) - The active branch’s collection.

If Color

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two colors using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then color is used; when off, the Else color is used.
    •   Then (color) - Color when the selector is on.
    •   Else (color) - Color when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (color) - The selected color.

If Double

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two values using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then value is used; when off, the Else value is used.
    •   Then (double precision scalar) - Value when the selector is on.
    •   Else (double precision scalar) - Value when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (double precision scalar) - The selected value.

If Integer

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two integers using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then value is used; when off, the Else value is used.
    •   Then (integer) - Integer when the selector is on.
    •   Else (integer) - Integer when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (integer) - The selected integer.

If Scalar

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two values using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then value is used; when off, the Else value is used.
    •   Then (scalar) - Value when the selector is on.
    •   Else (scalar) - Value when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (scalar) - The selected value.

If Text

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two text values using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then text is used; when off, the Else text is used.
    •   Then (text) - Text when the selector is on.
    •   Else (text) - Text when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (text) - The selected text.

If Transformation

  • Category: Math / Logical
  • Access: All editions.
  • Function: Selects between two transformations using a logical selector.
  • Input pins:
    •   If (logical) - When on, the Then transformation is used; when off, the Else transformation is used.
    •   Then (transformation) - Transformation when the selector is on.
    •   Else (transformation) - Transformation when the selector is off.
    •   Force Both (logical) - When on, both inputs are pulled continuously; when off, only the selected input is pulled.
  • Output pins:
    •   Out (transformation) - The selected transformation.

Less

  • Category: Math / Logical
  • Access: All editions.
  • Function: Tests whether the first value is strictly less than the second.
  • Input pins:
    •   A (scalar) - Left-hand value in the comparison.
    •   B (scalar) - Right-hand value in the comparison.
  • Output pins:
    •   Out (logical) - On when A is less than B.

Less Or Equal

  • Category: Math / Logical
  • Access: All editions.
  • Function: Tests whether the first value is less than or equal to the second.
  • Input pins:
    •   A (scalar) - Left-hand value in the comparison.
    •   B (scalar) - Right-hand value in the comparison.
  • Output pins:
    •   Out (logical) - On when A is less than or equal to B.

Near Equal

  • Category: Math / Logical
  • Access: All editions.
  • Function: Tests whether two values are within epsilon, optionally using circular distance over a wrap range.
  • Input pins:
    •   A (scalar) - First value in the comparison.
    •   B (scalar) - Second value in the comparison.
    •   Epsilon (scalar) - Largest allowed absolute difference (or circular separation when circular mode is on).
    •   Circular (logical) - When on, uses shortest distance on a circle of the given range instead of linear difference.
    •   Circular Range (scalar) - Full circle length used when circular mode is on (for example 360 for degrees).
  • Output pins:
    •   Out (logical) - On when the two values are near within epsilon.

Not

  • Category: Math / Logical
  • Access: All editions.
  • Function: Logical inversion of a single logical input.
  • Input pins:
    •   In (logical) - The source value
  • Output pins:
    •   Out (logical) - On when the input is off, and off when the input is on.

Not Equal

  • Category: Math / Logical
  • Access: All editions.
  • Function: Tests whether two values differ.
  • Input pins:
    •   A (scalar) - Left-hand value in the comparison.
    •   B (scalar) - Right-hand value in the comparison.
  • Output pins:
    •   Out (logical) - On when the two values are not equal.

Or

  • Category: Math / Logical
  • Access: All editions.
  • Function: Combines two logical inputs with logical OR.
  • Input pins:
    •   A (logical) - First logical operand.
    •   B (logical) - Second logical operand.
  • Output pins:
    •   Out (logical) - On when at least one input is on.

Vector To Bits

  • Category: Math / Logical
  • Access: All editions.
  • Function: Packs a vector into an integer, setting each bit when the corresponding component is non-zero (first component is the least significant bit).
  • Input pins:
    •   Vector (vector) - Vector whose non-zero components turn on matching bits in the integer.
  • Output pins:
    •   Out (integer) - Integer bit pattern built from the vector.

Xor

  • Category: Math / Logical
  • Access: All editions.
  • Function: Combines two logical inputs with exclusive OR.
  • Input pins:
    •   A (logical) - First logical operand.
    •   B (logical) - Second logical operand.
  • Output pins:
    •   Out (logical) - On when exactly one input is on.

Math / Vector

This section describes the built-in Flow Graph modules that compose, analyze, and transform vectors, rotations, and geometric relationships.

Array Vector Concat

  • Category: Math / Vector
  • Access: All editions.
  • Function: Concatenates vectors along a chain of array-compound instances over a selectable index span.
  • Input pins:
    •   In (vector) - The source value
    •   Start Index (integer) - First array-instance index (1-based) included in the chain.
    •   Count (integer) - How many consecutive instances starting at StartIndex participate.
  • Output pins:
    •   Out (vector) - Carries the chained result across the selected instances.

Cross Product

  • Category: Math / Vector
  • Access: All editions.
  • Function: Computes the 3D cross product from the first three components of each operand.
  • Input pins:
    •   A (vector) - First operand as a 3-component vector.
    •   B (vector) - Second operand as a 3-component vector.
  • Output pins:
    •   Out (vector) - 3D cross product A × B.

Dir To Rotation

  • Category: Math / Vector
  • Access: All editions.
  • Function: Builds a rotation that aligns forward with the direction vector and applies an extra roll angle from the scalar input.
  • Input pins:
    •   Direction (vector) - 3D direction used to define the rotation’s facing.
    •   Z (scalar) - Roll angle in degrees combined with the direction (sign follows internal rotation conventions).
  • Output pins:
    •   Rotation (vector) - Resulting rotation as three angles in degrees.

Dot Product

  • Category: Math / Vector
  • Access: All editions.
  • Function: Computes the dot product by summing pairwise products over the overlapping prefix of both inputs. When lengths differ, extra components are ignored.
  • Input pins:
    •   A (vector) - First operand vector.
    •   B (vector) - Second operand vector.
  • Output pins:
    •   Out (scalar) - Scalar sum of matched element products.

Find Delay

  • Category: Math / Vector
  • Access: All editions.
  • Function: Finds how many steps the delayed series must be shifted to best match the end of the original series inside a trailing window using normalized correlation, optionally refined with fractional delay, then reports delay, correlation, RMS energy ratio, and whether a search could run.
  • Input pins:
    •   Original (vector) - Series that is compared over the window; correlation uses its values at the shifted region.
    •   Delayed (vector) - Series whose last window is the fixed reference segment for matching.
    •   Window (integer) - Length of the compared segment in samples (at least two).
    •   Max Delay (integer) - Upper bound on the integer delay shift in samples (also limited by available data).
    •   Precision (integer) - Reciprocal step size for the fractional-delay refinement around the best integer delay.
  • Output pins:
    •   Valid (logical) - Outputs on when a correlation result is available from the search; otherwise off.
    •   Delay (scalar) - Best-match delay in samples, including fractional refinement when enabled.
    •   Correlation (scalar) - Normalized correlation coefficient for the best delay (roughly covariant energy scaled by RMS of both sides).
    •   Scale (scalar) - Ratio of RMS energy in the shifted original window to RMS energy in the reference window.

From Polar

  • Category: Math / Vector
  • Access: All editions.
  • Function: Turns polar angles and radius into a 3D Cartesian position by building a unit direction from pitch and yaw in degrees, then scaling by radius.
  • Input pins:
    •   Polar (vector) - Three values: pitch and yaw in degrees, then radius along the constructed direction.
  • Output pins:
    •   Position (vector) - Corresponding 3D position vector.

Length

  • Category: Math / Vector
  • Access: All editions.
  • Function: Outputs the Euclidean length of the vector (square root of the sum of squared components).
  • Input pins:
    •   In (vector) - The source value
  • Output pins:
    •   Out (scalar) - Non-negative length of the input vector.

Matrix Transpose

  • Category: Math / Vector
  • Access: All editions.
  • Function: Transposes a flat row-major matrix given as a vector and a column count, producing an empty output when the element count is not divisible by the column count.
  • Input pins:
    •   In (vector) - The source value
    •   Columns (integer) - Number of columns in the row-major layout before transposing.
  • Output pins:
    •   Out (vector) - Row-major layout of the transposed matrix with rows and columns swapped.

Normalize

  • Category: Math / Vector
  • Access: All editions.
  • Function: Scales the vector to unit length, or outputs all zeros when the length is zero.
  • Input pins:
    •   In (vector) - The source value
  • Output pins:
    •   Out (vector) - Same dimension as the input with length one when possible.

Quaternion Merge

  • Category: Math / Vector
  • Access: All editions.
  • Function: Packs four scalar quaternion components into one four-component quaternion vector.
  • Input pins:
    •   X (scalar) - Quaternion X component.
    •   Y (scalar) - Quaternion Y component.
    •   Z (scalar) - Quaternion Z component.
    •   W (scalar) - Quaternion W component.
  • Output pins:
    •   Quaternion (vector) - Combined quaternion as a four-component vector.

Quaternion Split

  • Category: Math / Vector
  • Access: All editions.
  • Function: Splits one four-component quaternion into separate scalar components.
  • Input pins:
    •   Quaternion (vector) - Input quaternion as a four-component vector.
  • Output pins:
    •   X (scalar) - X component of the quaternion.
    •   Y (scalar) - Y component of the quaternion.
    •   Z (scalar) - Z component of the quaternion.
    •   W (scalar) - W component of the quaternion.

Rotation Average

  • Category: Math / Vector
  • Access: All editions.
  • Function: Averages a flat list of rotation triples by summing wrapped degree deltas from the first triple, then normalizing each channel to canonical degrees.
  • Input pins:
    •   Rotations (vector) - Concatenated X, Y, Z rotation angles in degrees, three components per rotation in order.
  • Output pins:
    •   Out (vector) - One normalized rotation triple (degrees) averaged across all inputs.

Rotation Merge

  • Category: Math / Vector
  • Access: All editions.
  • Function: Packs three scalar rotation angles in degrees into one three-component rotation vector.
  • Input pins:
    •   X (scalar) - Rotation about the X axis in degrees.
    •   Y (scalar) - Rotation about the Y axis in degrees.
    •   Z (scalar) - Rotation about the Z axis in degrees.
  • Output pins:
    •   Rotation (vector) - Combined rotation triple.

Rotation Normalize

  • Category: Math / Vector
  • Access: All editions.
  • Function: Maps each rotation component to a canonical degree range using either signed wrapping or unsigned 0–360 mapping.
  • Input pins:
    •   Rotation (vector) - Input rotation as three angles in degrees (X, Y, Z).
    •   Signed (logical) - When on, maps each channel with signed angle normalization; when off, maps with unsigned normalization.
  • Output pins:
    •   Out (vector) - Rotation triple with each channel rewritten into the chosen canonical range.

Rotation Split

  • Category: Math / Vector
  • Access: All editions.
  • Function: Splits one three-component rotation vector into separate angle components in degrees.
  • Input pins:
    •   Rotation (vector) - Rotation as three angles in degrees.
  • Output pins:
    •   X (scalar) - Rotation about the X axis in degrees.
    •   Y (scalar) - Rotation about the Y axis in degrees.
    •   Z (scalar) - Rotation about the Z axis in degrees.

Rotation To Dir

  • Category: Math / Vector
  • Access: All editions.
  • Function: Derives the forward direction from a rotation triple and exposes roll as a separate scalar in degrees.
  • Input pins:
    •   Rotation (vector) - Rotation as three angles in degrees (X, Y, Z).
  • Output pins:
    •   Direction (vector) - 3D forward direction implied by the rotation.
    •   Z (scalar) - Roll angle in degrees matching the rotation roll channel (sign follows internal conventions).

To Polar

  • Category: Math / Vector
  • Access: All editions.
  • Function: Converts a 3D position to pitch, yaw in degrees, and radial length; when the length is zero, outputs the null-rotation pair instead of angles derived from direction.
  • Input pins:
    •   Position (vector) - 3D point to express in polar form.
    •   Null Rotation (vector) - Pitch and yaw in degrees substituted when the position length is zero.
  • Output pins:
    •   Polar (vector) - Pitch, yaw (degrees), and radial length from the origin.

Vector Average

  • Category: Math / Vector
  • Access: All editions.
  • Function: Splits the input into consecutive items of a fixed width and outputs the arithmetic mean per component across all complete items.
  • Input pins:
    •   Vector (vector) - Flat list of floats interpreted as consecutive items.
    •   Item Size (integer) - Number of elements per item (at least one); only full items at the start are averaged.
  • Output pins:
    •   Out (vector) - One item whose components are the means over every complete input item.

Vector Bit Fill

  • Category: Math / Vector
  • Access: All editions.
  • Function: Creates a zero vector of fixed length and sets elements to one at positions listed by the index vector (valid indices are one-based within that length).
  • Input pins:
    •   In (vector) - Values interpreted as integer indices; each valid index selects one output element to set to one.
    •   Size (integer) - Output length in elements.
  • Output pins:
    •   Out (vector) - Filled vector with ones at listed indices and zeros elsewhere.

Vector Concat

  • Category: Math / Vector
  • Access: All editions.
  • Function: Appends the second vector after the first, returning one longer vector in one step.
  • Input pins:
    •   A (vector) - Leading segment of the combined vector.
    •   B (vector) - Trailing segment appended after A.
  • Output pins:
    •   Out (vector) - Concatenation of A followed by B.

Vector Concat Multi

  • Category: Math / Vector
  • Access: All editions.
  • Function: Clears the output and appends sixteen vector inputs in fixed order into one combined vector.
  • Input pins:
    •   Vector 1 (vector) - First segment appended (may be empty).
    •   Vector 2 (vector) - Second segment appended (may be empty).
    •   Vector 3 (vector) - Third segment appended (may be empty).
    •   Vector 4 (vector) - Fourth segment appended (may be empty).
    •   Vector 5 (vector) - Fifth segment appended (may be empty).
    •   Vector 6 (vector) - Sixth segment appended (may be empty).
    •   Vector 7 (vector) - Seventh segment appended (may be empty).
    •   Vector 8 (vector) - Eighth segment appended (may be empty).
    •   Vector 9 (vector) - Ninth segment appended (may be empty).
    •   Vector 10 (vector) - Tenth segment appended (may be empty).
    •   Vector 11 (vector) - Eleventh segment appended (may be empty).
    •   Vector 12 (vector) - Twelfth segment appended (may be empty).
    •   Vector 13 (vector) - Thirteenth segment appended (may be empty).
    •   Vector 14 (vector) - Fourteenth segment appended (may be empty).
    •   Vector 15 (vector) - Fifteenth segment appended (may be empty).
    •   Vector 16 (vector) - Sixteenth segment appended (may be empty).
  • Output pins:
    •   Out (vector) - Concatenation of Vector1 through Vector16 in ascending pin order.

Vector Contains

  • Category: Math / Vector
  • Access: All editions.
  • Function: Outputs on when any element equals the search value; otherwise off.
  • Input pins:
    •   Vector (vector) - Vector searched for a matching component.
    •   Item (scalar) - Value compared to each element using array membership rules.
  • Output pins:
    •   Out (logical) - Logical result of the containment test.

Vector Coord System

  • Category: Math / Vector
  • Access: All editions.
  • Function: Applies model coordinate-system metadata (unit scale, up axis, handedness) to a 3D vector as position, direction, axis scales, or per-axis distances.
  • Input pins:
    •   In (vector) - Three-component vector interpreted according to the selected conversion type.
    •   Type (integer, Coord Sys Vector Type) - Selects whether the vector is treated as position, direction, scale factors, or per-axis distances.
    •   Unit (scalar) - Linear scale factor applied by the coordinate-system conversion.
    •   Up Axis (integer, Model Coord Sys Up) - Which world axis is treated as up for the coordinate-system definition.
    •   Right Handed (logical) - When on, uses a right-handed axis convention; when off, left-handed.
  • Output pins:
    •   Out (vector) - Transformed 3D vector after applying the coordinate-system rules.

Vector Equal

  • Category: Math / Vector
  • Access: All editions.
  • Function: Outputs on when both vectors match element for element with the same length; otherwise off.
  • Input pins:
    •   A (vector) - First vector operand.
    •   B (vector) - Second vector operand.
  • Output pins:
    •   Out (logical) - Logical equality of the two vectors.

Vector Fill

  • Category: Math / Vector
  • Access: All editions.
  • Function: Builds a vector with a fixed length where every component equals one scalar.
  • Input pins:
    •   Value (scalar) - Number repeated for every output element.
    •   Count (integer) - Requested output length (at least one).
  • Output pins:
    •   Out (vector) - Vector filled with the scalar value.

Vector Index

  • Category: Math / Vector
  • Access: All editions.
  • Function: Returns the one-based index of the first element equal to the search value, or zero when no match exists.
  • Input pins:
    •   Vector (vector) - Vector scanned in order from the first element.
    •   Item (scalar) - Value to locate by equality.
  • Output pins:
    •   Out (integer) - 1-based index of the first match, or zero if none.

Vector Insert

  • Category: Math / Vector
  • Access: All editions.
  • Function: Inserts another vector at a one-based index, extending the base with zeros if the index lies past the former end.
  • Input pins:
    •   A (vector) - Original vector before insertion.
    •   Index (integer) - 1-based position where the inserted segment begins (elements before it are retained in order).
    •   B (vector) - Segment spliced in at the index.
  • Output pins:
    •   Out (vector) - Combined vector after insertion.

Vector Interleave

  • Category: Math / Vector
  • Access: All editions.
  • Function: Builds one vector by repeating a multi-input round: take one fixed-width chunk from each slot in order per step, with shortest, longest, or longest-with-cycle length rules and zero fill when a source runs out in longest modes.
  • Input pins:
    •   Count Mode (integer, Vector Interleave Count Mode) - Sets whether the run count follows the shortest input, the longest, or the longest with cycling.
    •   Vector 1 (vector) - First source vector for interleaved chunks.
    •   Item Size 1 (integer) - Chunk size in elements taken from Vector1 each round (zero skips this slot).
    •   Vector 2 (vector) - Second source vector for interleaved chunks.
    •   Item Size 2 (integer) - Chunk size in elements taken from Vector2 each round (zero skips this slot).
    •   Vector 3 (vector) - Third source vector for interleaved chunks.
    •   Item Size 3 (integer) - Chunk size in elements taken from Vector3 each round (zero skips this slot).
    •   Vector 4 (vector) - Fourth source vector for interleaved chunks.
    •   Item Size 4 (integer) - Chunk size in elements taken from Vector4 each round (zero skips this slot).
    •   Vector 5 (vector) - Fifth source vector for interleaved chunks.
    •   Item Size 5 (integer) - Chunk size in elements taken from Vector5 each round (zero skips this slot).
    •   Vector 6 (vector) - Sixth source vector for interleaved chunks.
    •   Item Size 6 (integer) - Chunk size in elements taken from Vector6 each round (zero skips this slot).
    •   Vector 7 (vector) - Seventh source vector for interleaved chunks.
    •   Item Size 7 (integer) - Chunk size in elements taken from Vector7 each round (zero skips this slot).
    •   Vector 8 (vector) - Eighth source vector for interleaved chunks.
    •   Item Size 8 (integer) - Chunk size in elements taken from Vector8 each round (zero skips this slot).
    •   Vector 9 (vector) - Ninth source vector for interleaved chunks.
    •   Item Size 9 (integer) - Chunk size in elements taken from Vector9 each round (zero skips this slot).
    •   Vector 10 (vector) - Tenth source vector for interleaved chunks.
    •   Item Size 10 (integer) - Chunk size in elements taken from Vector10 each round (zero skips this slot).
    •   Vector 11 (vector) - Eleventh source vector for interleaved chunks.
    •   Item Size 11 (integer) - Chunk size in elements taken from Vector11 each round (zero skips this slot).
    •   Vector 12 (vector) - Twelfth source vector for interleaved chunks.
    •   Item Size 12 (integer) - Chunk size in elements taken from Vector12 each round (zero skips this slot).
    •   Vector 13 (vector) - Thirteenth source vector for interleaved chunks.
    •   Item Size 13 (integer) - Chunk size in elements taken from Vector13 each round (zero skips this slot).
    •   Vector 14 (vector) - Fourteenth source vector for interleaved chunks.
    •   Item Size 14 (integer) - Chunk size in elements taken from Vector14 each round (zero skips this slot).
    •   Vector 15 (vector) - Fifteenth source vector for interleaved chunks.
    •   Item Size 15 (integer) - Chunk size in elements taken from Vector15 each round (zero skips this slot).
    •   Vector 16 (vector) - Sixteenth source vector for interleaved chunks.
    •   Item Size 16 (integer) - Chunk size in elements taken from Vector16 each round (zero skips this slot).
  • Output pins:
    •   Out (vector) - Interleaved concatenation of chunks across rounds.

Vector Item

  • Category: Math / Vector
  • Access: All editions.
  • Function: Copies one fixed-width item by 1-based item index, or leaves the output empty when the item is out of range or the item width is invalid.
  • Input pins:
    •   Vector (vector) - Source data interpreted as consecutive items.
    •   Item Size (integer) - Number of elements per item; must be positive to extract a slice.
    •   Index (integer) - 1-based item index to extract.
  • Output pins:
    •   Out (vector) - Elements of the selected item, or empty when unusable.

Vector Maximum

  • Category: Math / Vector
  • Access: All editions.
  • Function: Interprets the input as consecutive fixed-width items and outputs the component-wise maximum across all complete items.
  • Input pins:
    •   Vector (vector) - Flat list of floats interpreted as consecutive items.
    •   Item Size (integer) - Number of elements per item (at least one); only full items are considered.
  • Output pins:
    •   Out (vector) - One item whose components are the maxima over each slot across items.

Vector Merge

  • Category: Math / Vector
  • Access: All editions.
  • Function: Packs three scalars into one three-component vector.
  • Input pins:
    •   X (scalar) - First component of the output vector.
    •   Y (scalar) - Second component of the output vector.
    •   Z (scalar) - Third component of the output vector.
  • Output pins:
    •   Vector (vector) - Merged 3D vector.

Vector Minimum

  • Category: Math / Vector
  • Access: All editions.
  • Function: Interprets the input as consecutive fixed-width items and outputs the component-wise minimum across all complete items.
  • Input pins:
    •   Vector (vector) - Flat list of floats interpreted as consecutive items.
    •   Item Size (integer) - Number of elements per item (at least one); only full items are considered.
  • Output pins:
    •   Out (vector) - One item whose components are the minima over each slot across items.

Vector Nonzero Indices

  • Category: Math / Vector
  • Access: All editions.
  • Function: Collects one-based indices of every element that is not zero and outputs them as a vector in increasing order.
  • Input pins:
    •   In (vector) - The source value
  • Output pins:
    •   Out (vector) - Vector of 1-based indices where the input is non-zero.

Vector Not Equal

  • Category: Math / Vector
  • Access: All editions.
  • Function: Outputs on when the vectors differ in length or any element; otherwise off.
  • Input pins:
    •   A (vector) - First vector operand.
    •   B (vector) - Second vector operand.
  • Output pins:
    •   Out (logical) - Logical inequality of the two vectors.

Vector Set Item

  • Category: Math / Vector
  • Access: All editions.
  • Function: Copies the base vector and overwrites one 1-based item with the value vector, extending with zeros if the item lies past the former end within engine limits.
  • Input pins:
    •   Vector (vector) - Starting vector whose data is copied before the item overwrite.
    •   Item Size (integer) - Width in elements of each logical item (at least one).
    •   Index (integer) - 1-based item index to replace.
    •   Value (vector) - Replacement contents for that item, truncated or zero-padded to the item width.
  • Output pins:
    •   Out (vector) - Updated vector after replacing the selected item.

Vector Set Slice

  • Category: Math / Vector
  • Access: All editions.
  • Function: Copies the base vector and overwrites a contiguous element span with a slice, extending with zeros before the slice when the start lands past the old end and shifting the slice start when the requested start is negative.
  • Input pins:
    •   Vector (vector) - Starting vector whose data is copied before the slice overwrite.
    •   Item Size (integer) - Stride in elements per logical item used to map start index to element position (at least one).
    •   Start Index (integer) - 1-based item index where the replacement slice begins in element space.
    •   Slice (vector) - Replacement values written over the mapped element range.
  • Output pins:
    •   Out (vector) - Vector after applying the slice with any required growth or prefix fill.

Vector Size

  • Category: Math / Vector
  • Access: All editions.
  • Function: Outputs the number of numeric elements stored in the vector.
  • Input pins:
    •   Vector (vector) - Vector whose component count is reported.
  • Output pins:
    •   Out (integer) - Element count.

Vector Slice

  • Category: Math / Vector
  • Access: All editions.
  • Function: Extracts a contiguous run of items starting at a 1-based item index for a given item width and item count, clamped to available data.
  • Input pins:
    •   Vector (vector) - Source vector interpreted as consecutive items.
    •   Item Size (integer) - Elements per item (at least one).
    •   Start Index (integer) - 1-based index of the first item included in the slice.
    •   Count (integer) - Number of consecutive items to include.
  • Output pins:
    •   Out (vector) - Flattened elements from the selected item span.

Vector Slice Multi

  • Category: Math / Vector
  • Access: All editions.
  • Function: Cuts consecutive fixed-width segments along the source vector and sends each segment to successive outputs until data or outputs are exhausted.
  • Input pins:
    •   Vector (vector) - Source data interpreted as consecutive items.
    •   Item Size (integer) - Elements per item (at least one).
    •   Start Index (integer) - 1-based index of the first item in the first output segment.
    •   Count (integer) - Number of items per segment for every output.
  • Output pins:
    •   Out 1 (vector) - Flattened elements of the first segment.
    •   Out 2 (vector) - Flattened elements of the second segment.
    •   Out 3 (vector) - Flattened elements of the third segment.
    •   Out 4 (vector) - Flattened elements of the fourth segment.
    •   Out 5 (vector) - Flattened elements of the fifth segment.
    •   Out 6 (vector) - Flattened elements of the sixth segment.
    •   Out 7 (vector) - Flattened elements of the seventh segment.
    •   Out 8 (vector) - Flattened elements of the eighth segment.
    •   Out 9 (vector) - Flattened elements of the ninth segment.
    •   Out 10 (vector) - Flattened elements of the tenth segment.
    •   Out 11 (vector) - Flattened elements of the eleventh segment.
    •   Out 12 (vector) - Flattened elements of the twelfth segment.
    •   Out 13 (vector) - Flattened elements of the thirteenth segment.
    •   Out 14 (vector) - Flattened elements of the fourteenth segment.
    •   Out 15 (vector) - Flattened elements of the fifteenth segment.
    •   Out 16 (vector) - Flattened elements of the sixteenth segment.

Vector Split

  • Category: Math / Vector
  • Access: All editions.
  • Function: Splits one three-component vector into separate scalar components.
  • Input pins:
    •   Vector (vector) - Three-component vector input.
  • Output pins:
    •   X (scalar) - First component.
    •   Y (scalar) - Second component.
    •   Z (scalar) - Third component.

Vector Sum

  • Category: Math / Vector
  • Access: All editions.
  • Function: Splits the input into consecutive items of a fixed width and sums each component across all complete items.
  • Input pins:
    •   Vector (vector) - Flat list of floats interpreted as consecutive items.
    •   Item Size (integer) - Number of elements per item (at least one); only full items at the start are summed.
  • Output pins:
    •   Out (vector) - One item whose components are the sums over every complete input item.

Math / Color

This section describes the built-in Flow Graph modules that convert, decompose, compose, and blend color values across color models.

Alpha Merge

  • Category: Math / Color
  • Access: All editions.
  • Function: Builds one RGBA color from RGB channels on the color input and a separate alpha scalar.
  • Input pins:
    •   RGB (color) - Color supplying the red, green, and blue components; its previous alpha is replaced.
    •   Alpha (scalar) - Alpha value combined with the RGB channels.
  • Output pins:
    •   Color (color) - Merged RGBA result.

Alpha Split

  • Category: Math / Color
  • Access: All editions.
  • Function: Copies alpha to a scalar output and returns the color with alpha set to fully opaque.
  • Input pins:
    •   Color (color) - RGBA color whose alpha is read and removed from the color output.
  • Output pins:
    •   RGB (color) - Same red, green, and blue with alpha forced to one.
    •   Alpha (scalar) - Alpha taken from the input.

Chroma Compose

  • Category: Math / Color
  • Access: All editions.
  • Function: Adds one luma offset to all three chroma channels, sets alpha, and outputs the reconstructed RGBA color.
  • Input pins:
    •   Chroma (color) - Chroma residue on R, G, and B before the luma offset is applied.
    •   Luma (scalar) - Uniform value added to red, green, and blue.
    •   Alpha (scalar) - Alpha written to the output color.
  • Output pins:
    •   Color (color) - Reconstructed RGBA after adding luma and setting alpha.

Chroma Decompose

  • Category: Math / Color
  • Access: All editions.
  • Function: Uses the smallest RGB channel as luma, subtracts that floor to form chroma, passes alpha separately, and leaves the chroma color fully opaque on its own output.
  • Input pins:
    •   Color (color) - RGBA color to separate into luma, chroma, and alpha.
  • Output pins:
    •   Chroma (color) - RGB with the luma floor subtracted from each channel and alpha set to one.
    •   Luma (scalar) - Minimum of the input red, green, and blue channels.
    •   Alpha (scalar) - Alpha copied from the input unchanged.

CMYK Compose

  • Category: Math / Color
  • Access: All editions.
  • Function: Converts CMYK inks and alpha to RGBA, applying full-range scaling to the inks and alpha when the Norm control is off.
  • Input pins:
    •   Cyan (scalar) - Cyan ink component supplied to the conversion.
    •   Magenta (scalar) - Magenta ink component supplied to the conversion.
    •   Yellow (scalar) - Yellow ink component supplied to the conversion.
    •   Key (scalar) - Black (key) ink component supplied to the conversion.
    •   Alpha (scalar) - Alpha combined with the converted RGB.
    •   Norm (logical) - When on, expects normalized ink and alpha ranges; when off, applies the engine CMYK and alpha range factors before converting.
  • Output pins:
    •   Color (color) - RGBA result of the CMYK composition.

CMYK Decompose

  • Category: Math / Color
  • Access: All editions.
  • Function: Splits an RGBA color into cyan, magenta, yellow, key, and alpha, scaling inks and alpha to full range when the Norm control is off.
  • Input pins:
    •   Color (color) - RGBA color to express in CMYK.
    •   Norm (logical) - When on, outputs normalized ink and alpha ranges; when off, scales inks and alpha by the engine CMYK and alpha range factors.
  • Output pins:
    •   Cyan (scalar) - Cyan ink component after conversion.
    •   Magenta (scalar) - Magenta ink component after conversion.
    •   Yellow (scalar) - Yellow ink component after conversion.
    •   Key (scalar) - Black (key) ink component after conversion.
    •   Alpha (scalar) - Alpha taken from the input with the same scaling as the ink outputs.

Color Add

  • Category: Math / Color
  • Access: All editions.
  • Function: Adds two colors per channel; optionally adds alpha, otherwise the result keeps the first input alpha.
  • Input pins:
    •   A (color) - First operand color.
    •   B (color) - Second operand color whose channels are added to A.
    •   Alpha (logical) - When on, adds alpha channels; when off, keeps the alpha of A.
  • Output pins:
    •   Color (color) - Channel-wise sum with alpha rules chosen by the Alpha control.

Color Compose

  • Category: Math / Color
  • Access: All editions.
  • Function: Builds RGBA from three model coordinates for the chosen space (RGB, CMY, HSB, HSL, Lab, Hunter Lab, Luv, LCH, YUV, or XYZ), with optional full-range rescaling when Norm is off.
  • Input pins:
    •   C 1 (scalar) - First coordinate for the selected color model (for example red, hue, or luminance depending on Space).
    •   C 2 (scalar) - Second coordinate for the selected color model.
    •   C 3 (scalar) - Third coordinate for the selected color model.
    •   Alpha (scalar) - Alpha merged into the composed color.
    •   Space (integer, Color Space HSX) - Which three-coordinate color model drives the conversion to RGBA.
    •   Norm (logical) - When on, expects normalized coordinate and alpha ranges; when off, applies model-specific range factors before converting.
  • Output pins:
    •   Color (color) - RGBA result in working RGB form.

Color Convert

  • Category: Math / Color
  • Access: All editions.
  • Function: Moves a color between chosen RGB spaces and gamma settings: undoes the source transfer, converts primaries through XYZ when needed, then applies the destination transfer.
  • Input pins:
    •   Color (color) - Input color to transform.
    •   In Color Space (integer, Color Space) - RGB space used to interpret the input before conversion.
    •   In Gamma Curve (integer, Gamma Usage) - Transfer curve paired with the input RGB space.
    •   Out Color Space (integer, Color Space) - RGB space written to the output.
    •   Out Gamma Curve (integer, Gamma Usage) - Transfer curve paired with the output RGB space.
  • Output pins:
    •   Out (color) - Color after space and gamma conversion when inputs differ; otherwise unchanged.

Color Decompose

  • Category: Math / Color
  • Access: All editions.
  • Function: Expresses RGBA as three coordinates in the chosen model (same set as Color Compose), with optional full-range rescaling when Norm is off.
  • Input pins:
    •   Color (color) - RGBA color to break into model coordinates.
    •   Space (integer, Color Space HSX) - Which three-coordinate color model is used for the outputs.
    •   Norm (logical) - When on, emits normalized coordinate and alpha ranges; when off, scales coordinates and alpha into the model full ranges.
  • Output pins:
    •   C 1 (scalar) - First coordinate for the selected model.
    •   C 2 (scalar) - Second coordinate for the selected model.
    •   C 3 (scalar) - Third coordinate for the selected model.
    •   Alpha (scalar) - Alpha extracted with the same scaling rule as the coordinates.

Color Dim

  • Category: Math / Color
  • Access: All editions.
  • Function: Scales red, green, and blue by one factor; leaves alpha unchanged.
  • Input pins:
    •   Color (color) - Input color whose RGB channels are scaled.
    •   Intensity (scalar) - Factor applied equally to red, green, and blue.
  • Output pins:
    •   Color (color) - Dimmed or brightened color with original alpha.

Color Fade

  • Category: Math / Color
  • Access: All editions.
  • Function: Multiplies only the alpha channel by an opacity factor; RGB is unchanged.
  • Input pins:
    •   Color (color) - RGBA color whose alpha is scaled.
    •   Opacity (scalar) - Factor multiplied into alpha.
  • Output pins:
    •   Color (color) - Same RGB with scaled alpha.

Color From Linear

  • Category: Math / Color
  • Access: All editions.
  • Function: Applies the selected RGB transfer curve so the output matches display-style encoding.
  • Input pins:
    •   Color (color) - Scene-referred or linear RGBA color to encode.
    •   Gamma Function (integer, RGB Gamma) - Transfer curve applied to the RGB channels.
  • Output pins:
    •   Out (color) - Color after transfer on red, green, and blue; alpha is unchanged.

Color Gray Level

  • Category: Math / Color
  • Access: All editions.
  • Function: Outputs a single gray level as the dot product of RGB with the engine luma weights.
  • Input pins:
    •   Color (color) - Color whose red, green, and blue contribute to luma.
  • Output pins:
    •   Out (scalar) - Scalar luma value.

Color Merge

  • Category: Math / Color
  • Access: All editions.
  • Function: Packs separate red, green, blue, and alpha scalars into one RGBA color.
  • Input pins:
    •   Red (scalar) - Red channel.
    •   Green (scalar) - Green channel.
    •   Blue (scalar) - Blue channel.
    •   Alpha (scalar) - Alpha channel.
  • Output pins:
    •   Color (color) - Combined RGBA color.

Color Multiply

  • Category: Math / Color
  • Access: All editions.
  • Function: Multiplies two colors per channel; optionally multiplies alpha, otherwise the result keeps the first input alpha.
  • Input pins:
    •   A (color) - First operand color.
    •   B (color) - Second operand color multiplied into A per channel.
    •   Alpha (logical) - When on, multiplies alpha channels; when off, keeps the alpha of A.
  • Output pins:
    •   Color (color) - Channel-wise product with alpha rules chosen by the Alpha control.

Color Space Params

  • Category: Math / Color
  • Access: All editions.
  • Function: Resolves RGB and YCbCr interpretation from the chosen space, gamma, and optional YCbCr range and bit depth, then supplies IDs, matrices, names (when outputs are wired), and luma coefficients.
  • Input pins:
    •   Color Space (integer, Color Space) - Primary selector for RGB and related YCbCr interpretation; auto follows project defaults where applicable.
    •   Gamma Curve (integer, Gamma Usage) - Gamma or transfer handling paired with the color space selection.
    •   YCbCr Range (integer, YUV Range) - Nominal encoding range for YCbCr when not using auto resolution.
    •   YCbCr Bits (integer, Channel Bits) - Channel bit depth assumption for YCbCr matrix selection when not using auto resolution.
  • Output pins:
    •   RGB Space (integer) - Resolved RGB space identifier.
    •   RGB Space Name (text) - Display name of the resolved RGB space when this output is connected.
    •   RGB To XYZ (transformation) - Transformation from RGB to XYZ for the resolved space.
    •   XYZ To RGB (transformation) - Transformation from XYZ to RGB for the resolved space.
    •   Gamma Function (integer) - Resolved transfer curve identifier used with the RGB space.
    •   Gamma Function Name (text) - Display name of the resolved transfer when this output is connected.
    •   YCbCr Space (integer) - Resolved YCbCr space identifier.
    •   YCbCr Space Name (text) - Display name of the resolved YCbCr space when this output is connected.
    •   R'G'B' To YCbCr (transformation) - Matrix from RGB to YCbCr for the resolved YCbCr space, range, and bit depth.
    •   YCbCr To R'G'B' (transformation) - Matrix from YCbCr to RGB for the resolved YCbCr space, range, and bit depth.
    •   R'G'B' To Luminance (vector) - Three luma coefficients from the RGB-to-Y row of the full-range YCbCr mapping for the resolved space and bit depth.

Color Split

  • Category: Math / Color
  • Access: All editions.
  • Function: Reads an RGBA color and exposes red, green, blue, and alpha as separate scalars.
  • Input pins:
    •   Color (color) - RGBA color to split.
  • Output pins:
    •   Red (scalar) - Red channel.
    •   Green (scalar) - Green channel.
    •   Blue (scalar) - Blue channel.
    •   Alpha (scalar) - Alpha channel.

Color Subtract

  • Category: Math / Color
  • Access: All editions.
  • Function: Subtracts the second color from the first per channel; optionally subtracts alpha, otherwise the result keeps the first input alpha.
  • Input pins:
    •   A (color) - Minuend color.
    •   B (color) - Subtrahend color whose channels are subtracted from A.
    •   Alpha (logical) - When on, subtracts alpha channels; when off, keeps the alpha of A.
  • Output pins:
    •   Color (color) - Channel-wise difference with alpha rules chosen by the Alpha control.

Color To Linear

  • Category: Math / Color
  • Access: All editions.
  • Function: Applies the inverse of the selected RGB transfer curve so the output is suitable for scene-referred processing.
  • Input pins:
    •   Color (color) - Non-linear RGBA color to decode.
    •   Gamma Function (integer, RGB Gamma) - Transfer curve taken as the encoding of the input.
  • Output pins:
    •   Out (color) - Color after inverse transfer on red, green, and blue; alpha is unchanged.
Article Content

Loading
Close
Loading spinner icon
1/10