Skip to main content
Documentation

Data Types

Understanding the data types used in Spectralite nodes

Data Types

Nodes in Spectralite work with different types of data. Understanding these types helps you build effective effects.

Core types

Number

The most common type. A single numeric value.

Range: Any real number (typically 0-1 for normalized values)

Uses:

  • Intensity/brightness
  • Animation progress
  • Mathematical calculations
  • Single channel control

Color on ports: Gray

Color

An RGBWAUV color value, matching the emitter set common on professional lighting fixtures.

Format: six components: Red, Green, Blue, White, Amber, UV.

Range: Each component 0-255.

Uses:

  • Fixture color output
  • Color mixing
  • Gradients

Fixtures that only expose RGB or RGBW ignore the extra channels. Fixtures with amber or UV emitters receive them directly without any extra setup.

Color on ports: Blue.

Vector

A multi-component value, typically 2D or 3D coordinates.

Format:

  • Vec2: (X, Y)
  • Vec3: (X, Y, Z)
  • Vec4: (X, Y, Z, W)

Uses:

  • Position in position maps
  • UV coordinates
  • Direction vectors

Color on ports: Purple

Boolean

True or false value.

Values: true (1) or false (0)

Uses:

  • Conditions
  • Toggles
  • On/off states

Color on ports: Green

Special types

ColorMap

A gradient or lookup table of colors.

Uses:

  • Map values to color ranges
  • Create palettes
  • Gradient effects

Curve

An easing curve or bezier path.

Uses:

  • Animation timing
  • Value remapping
  • Custom response curves

Type conversion

Automatic conversion

Some conversions happen automatically:

  • Number → Boolean (0 = false, non-zero = true)
  • Boolean → Number (false = 0, true = 1)

Explicit conversion

Use conversion nodes for:

  • Color ↔ Vector (RGB components as XYZ; W/A/UV are not part of the vector)
  • Number → Vector (same value for all components)
  • Vector → Number (extract a component)

Type compatibility

Connection rules

Ports can only connect when types match or convert:

FromToAllowed
NumberNumberYes
NumberColorNo (use conversion)
VectorNumberNo (extract component)
ColorVectorYes (RGB as XYZ)
BooleanNumberYes (automatic)

Invalid connections

When you try to connect incompatible types:

  • Connection won't complete
  • Tooltip shows the issue
  • Use a conversion node

Working with types

Inspecting types

To see a port's type:

  • Hover over the port
  • Check the port color
  • Look at the tooltip

Type errors

If a node shows an error:

  1. Check input types
  2. Add conversion nodes if needed
  3. Verify connections are valid

Normalized values

Many effects work best with normalized values (0-1 range) so they blend predictably with any output.

How to normalize

Use these nodes:

  • Remap - Scale any range to 0-1
  • Clamp - Limit to 0-1
  • Fract - Keep decimal part only