🔢

Math & Numeric

Blueprint nodes for math & numeric operations.

38 nodes

Smooth Step

Pure

Hermite interpolation between 0 and 1 when X is between Edge0 and Edge1. Smoother than a linear lerp.

SmoothStep

Smoother Step

Pure

Ken Perlin's improved smoothstep with zero 1st and 2nd derivatives at edges. Even smoother transitions.

SmootherStep

Clamp Angle

Pure

Clamps an angle in degrees, correctly handling the 360/0 wraparound boundary.

ClampAngle

Wrap Angle

Pure

Wraps an angle to the -180 to 180 range.

WrapAngle

Is Nearly Zero

Pure

Checks if a float is approximately zero within tolerance.

IsNearlyZero

Damped Oscillation

Pure

Generates a damped sine wave. Useful for hit reactions, screen shake decay, and spring effects.

DampedOscillation

Bezier Evaluate

Pure

Evaluates a cubic bezier curve at parameter T using four control points.

BezierEvaluate

Bezier Evaluate Vector

Pure

Evaluates a cubic bezier curve in 3D space at parameter T.

BezierEvaluateVector

Rolling Average

Callable

Maintains a rolling average over the last N values. Automatically manages the history buffer.

RollingAverage

Fibonacci

Pure

Returns the Nth Fibonacci number using an iterative approach.

Fibonacci

Golden Ratio

Pure

Returns the golden ratio constant phi.

GoldenRatio

Bounce

Pure

Simulates a bouncing ball trajectory over a 0-1 alpha range.

Bounce

Noise 1D

Pure

Generates 1D Perlin-style noise at position X with an optional seed.

Noise1D

Noise 2D

Pure

Generates 2D Perlin-style noise at position (X,Y).

Noise2D

Noise 3D

Pure

Generates 3D Perlin-style noise at position (X,Y,Z).

Noise3D

Fractal Noise 2D

Pure

Multi-octave fractal noise (fBm) for more natural-looking procedural generation.

FractalNoise2D

Percentage

Pure

Returns Value as a percentage of Total. Returns 0 if Total is zero.

Percentage

Lerp Angle

Pure

Linearly interpolates between two angles, taking the shortest path across the 360/0 boundary.

LerpAngle

Move Toward

Pure

Moves Current toward Target by at most MaxDelta. Will not overshoot.

MoveToward

Move Toward Angle

Pure

Like MoveToward but handles angle wrapping correctly.

MoveTowardAngle

Delta Angle

Pure

Returns the shortest signed difference between two angles in degrees.

DeltaAngle

Exponential Decay

Pure

Frame-rate-independent exponential interpolation. Faster than FInterpTo for many use cases.

ExponentialDecay

Ceil To Multiple

Pure

Rounds up to the nearest multiple.

CeilToMultiple

Floor To Multiple

Pure

Rounds down to the nearest multiple.

FloorToMultiple

Round To Multiple

Pure

Rounds to the nearest multiple.

RoundToMultiple

Is Even

Pure

Returns true if the integer is even.

IsEven

Is Odd

Pure

Returns true if the integer is odd.

IsOdd

Is Power Of Two

Pure

Returns true if the integer is a power of two.

IsPowerOfTwo

Next Power Of Two

Pure

Returns the smallest power of two >= Value.

NextPowerOfTwo

Weighted Average

Pure

Calculates the weighted average of an array of values with corresponding weights.

WeightedAverage

Standard Deviation

Pure

Calculates the standard deviation of an array of float values.

StandardDeviation

Cubic Interpolation

Pure

Cubic Hermite interpolation between P0 and P1 using tangents T0 and T1.

CubicInterp

Ease Float

Pure

Applies a named easing curve to a 0–1 alpha value. Supports Linear, Quadratic, Cubic, Sine, Expo, Elastic, Bounce, and B...

EaseFloat

Map Range With Easing

Pure

Remaps a value from one range to another, then applies an easing curve to the result in one node.

MapRangeWithEasing

Solve Quadratic

Callable

Solves Ax² + Bx + C = 0. Returns the number of real roots (0, 1, or 2) and the root values.

SolveQuadratic

Seeded Random Float

Pure

Returns a deterministic random float in [Min, Max] driven by a seed. The same seed always produces the same value.

SeededRandomFloat

Seeded Random Bool

Pure

Returns a deterministic bool with the given probability of being true, driven by a seed.

SeededRandomBool

Seeded Random Int

Pure

Returns a deterministic integer in [Min, Max] driven by a seed. The same seed always produces the same value.

SeededRandomInt