Math Patches Overview

Math patches can be used to perform a math operation on their input.

Add them to your graph by right-clicking in the Patch Editor and selecting from the menu. The menu will show a description for each port.

Name Description
Add Adds 2 values.
Multiply Multiplies 2 values.
Subtract Subtracts 2 values.
Divide Divides 2 values.
Negate Negates the value.
Floor Rounds down the value.
Ceiling Rounds up the value.
Delay Delays value by some time.
Exponential Smoothing Returns a smoothed signal based on the damping factor which is measured in milliseconds.
Sine Calculates the sine of the given argument.
Cosine Calculates the cosine of the given argument.
Tangent Calculates the tangent of the given argument.
Arcsine Calculates the arcsine of the given argument.
Arccosine Calculates the arccosine of the given argument.
Arctangent Calculates the arctangent of the given arguments.
Exponential Calculates the natural exponentiation of the given argument.
Logarithm Calculates the natural logarithm of the given argument.
Power Calculates the value of the first parameter raised to the power of the second.
Modulo Calculates division remainder for the given values.
Round Rounds the value according to the specified rounding mode.
Absolute Returns the absolute value of the argument.
Sign Extracts the sign of the value.
Minimum Returns the lesser of two values.
Maximum Returns the greater of two values.
Clamp Constrains a value to lie between two given bounds.
Mix Linearly interpolates between two values modulated by Alpha.
Step Generates a step function by comparing two values.
Smooth Step Performs Hermite interpolation between two values.
Square Root Calculates the square root of the value.
From Range Maps the given value from the specified range to the [0, 1] range.
To Range

Maps the given value from the [0, 1] range to the specified range.

The patches in the table above will apply the operation separately on each component of the input.

So, if the input is Vector2 with the values (3.1,4.7), and we used the Round patch, the outputs will be (3, 5).

This also applies if there are two inputs. If you have an input of (5,7) and (1,6) and we use the Add patch, the outputs will be (6,13).

The input types must be compatible, for example you can't have an input of Vector2 and input of Vector3 connected to the same Add patch. If you want to use a number and another input, for example Vector2, Spark AR Studio will automatically expand the number to the corresponding input. So, if you have an input of (5,7) and the number 2 in an Add patch, the output would be (7,9).

Name Description
Dot Product Calculates the dot product of two vectors.
Cross Product Calculates the cross product of two vectors.
Distance Calculates the distance between two points.
Length Calculates the length of a Vector.
Normalize Calculates the unit vector in the same direction as the original vector.
Reflect Calculates the reflection direction for an incident vector.