Arrays are especially useful when passing in data to a shader as a uniform and this is currently the only way to create arrays unless you create your own node that outputs an array. See the how pass in an array of uniforms.

Using arrays


An array can be mapped into another array by providing a mapping function.

const doubledNumbers: ArrayNode<FloatNode> = FloatNode) => {
    return value.multiply(float(2))


An array can be reduced to a single value by providing a function that applies some transformation before summing the values. The return type of the mapping function must be numeric.

const doubledSum: FloatNode = numbers.sum((value: FloatNode) => {
    return value.multiply(float(2))

Get element by index

array.get(0) // Using a constant
array.get(int(0)) // Using an IntNode to pick an element programatically

Last updated