Skip to content

Math and Curves

Picker entries from Jungle Core. Grouped by the category the picker shows them under.

Asset

Curve Value Asset

Shared asset editable in the Project window.

Asset that stores a shared curve, editable in the Project window.

Type: CurveValueAsset · Full page

Curve Value From Asset

Provided by a shared ScriptableObject.

Reads a curve from a shared Curve Value asset.

Type: CurveValueFromAsset

Curve / Basic

Animation Curve

Custom curve using Unity's AnimationCurve editor.

Evaluates a Unity AnimationCurve for full artist control over the shape.

Type: AnimationCurveCurveValue

Constant

Always returns a fixed value.

Always outputs the same constant value regardless of input t.

Type: ConstantCurveValue

Linear

Returns t unchanged (identity curve).

Returns the input t unchanged. Use as a pass-through or default curve.

Type: LinearCurveValue

Curve / Composite

Blended

Blends between two curves with a fixed weight.

Blends between two curves using a fixed mix weight.

Type: BlendedCurveValue

Chained

Composes two curves: outer(inner(t)).

Pipes the output of one curve into another. The first curve's result becomes the second curve's input.

Type: ChainedCurveValue

Inverted

Returns 1 - inner curve value.

Flips a curve vertically by returning 1 minus the inner curve's output.

Type: InvertedCurveValue

Reversed

Runs inner curve backwards: inner(1-t).

Plays a curve backwards from end to start.

Type: ReversedCurveValue

Scaled

Multiplies and shifts the inner result.

Multiplies a curve's output by a scale, then adds an offset. Handy for adjusting a curve's range without changing its shape.

Type: ScaledCurveValue

Curve / Easing

Easing

Quad, cubic, sine, elastic, bounce, etc.

Standard easing functions including quadratic, cubic, sine, exponential, elastic, back, and bounce variants.

Type: EasingCurveValue

Curve / Math

Arch

Rises to 1 then falls back to 0, like a hop.

Starts at 0, climbs to 1 at the peak, and returns to 0 at the end. Use it for hops, arcs and pulses. Move the peak earlier for a quick lift and a long landing.

Type: ArchCurveValue

Bezier

CSS-style cubic bezier with two control points.

Cubic bezier curve defined by two control points, similar to CSS timing functions.

Type: BezierCurveValue

Bouncing Arch

A hop that lands, then bounces lower each time.

Rises to 1 and comes back to 0 like an Arch, then bounces a few more times, lower and quicker each time, and ends at 0. Use it as the arc of a move so the object hops, lands and settles with small rebounds.

Type: BouncingArchCurveValue

Exponential Approach

Approaches 1 and never quite reaches it: 1 - e^(-rate*t).

Approaches 1 smoothly using exponential decay. Higher rate means it gets there faster.

Type: ExponentialApproachCurveValue

Exponential Growth

Starts slow and speeds up faster and faster.

Starts slow and keeps speeding up: reaches 1 at t = 1 and, with a Keep Going loop, carries on accelerating past it. Higher Rate makes the speed-up sharper.

Type: ExponentialGrowthCurveValue

Logarithmic

Fast start, gradually slowing down.

Logarithmic curve that always runs from 0 to 1. Fast initial rise that gradually levels off.

Type: LogarithmicCurveValue

Power

Adjustable acceleration (1=linear, 2=quad).

Raises t to a configurable exponent. Supports ease-in (t^n) and ease-out (1-(1-t)^n) shapes.

Type: PowerCurveValue

Sigmoid

S-shaped curve with adjustable steepness.

S-shaped curve with adjustable steepness and midpoint. Smooth transition from 0 to 1.

Type: SigmoidCurveValue

Smoothstep

Hermite smoothstep or Perlin smootherstep.

Hermite smoothstep (3t^2-2t^3) with optional Perlin smootherstep for even smoother start and end.

Type: SmoothStepCurveValue

Step

Hard threshold: 0 below, 1 above.

Hard step function that outputs 0 below a threshold and 1 at or above it.

Type: StepCurveValue

Wave

Goes up and down between 0 and 1 a set number of times.

Swings between 0 and 1 and back, as a smooth sine, a straight-edged triangle or an on/off square. Cycles sets how many swings fit in the trip. Use it in Float Over Time to make a value wobble between Start and End.

Type: WaveCurveValue

Curve / Physics

Bounce Settle

Overshoots then bounces to rest at 1.

Overshoots then bounces a configurable number of times before settling at 1.

Type: BounceSettleCurveValue

Critically Damped

Fastest approach to target with no overshoot.

Critically damped response: the fastest possible approach to 1 without any overshoot.

Type: CriticallyDampedCurveValue

Damped Spring

Spring oscillation that overshoots and settles to 1.

Damped spring oscillation that overshoots and settles to 1. Configurable damping and frequency.

Type: DampedSpringCurveValue

Elastic Snap

Rubber band snap with elastic settle.

Snaps forward like a rubber band with elastic wobble that settles to 1.

Type: ElasticSnapCurveValue

Gravity Bounce

Gravity fall with dampened bounces at target.

Simulates gravity-driven fall with dampened bounces at the bottom, like a dropped ball.

Type: GravityBounceCurveValue

Data / Math

Increment Double

Adds a value to the asset's current number.

Adds or subtracts a number from the asset's current value. Use it to accumulate scores, adjust timers, or make any additive change.

Type: IncrementDoubleOperation

Increment Float

Adds a value to the asset's current number.

Adds or subtracts a number from the asset's current value. Use it to accumulate scores, adjust timers, or make any additive change.

Type: IncrementFloatOperation

Increment Int

Adds a value to the asset's current number.

Adds or subtracts a number from the asset's current value. Use it to accumulate scores, adjust counters, or make any additive change.

Type: IncrementIntOperation

Increment Long

Adds a value to the asset's current number.

Adds or subtracts a number from the asset's current value. Use it to accumulate scores, adjust counters, or make any additive change.

Type: IncrementLongOperation

Set Bool

Sets the asset to a specified bool value.

Writes a bool value to the target asset.

Type: SetBoolOperation

Set Double

Sets the asset to a specific number.

Writes a number to the asset. Use it to reset counters, apply computed values, or make any one-shot assignment.

Type: SetDoubleOperation

Set Double Over Time

Drives a number toward a target value over time.

Changes a high-precision number each frame using a Pipeline and optional Modifiers.

Type: WriteDoublePipelineOperation

Set Double Over Time

Drives the asset's number over time using a Pipeline.

Changes the asset's number each frame using a Pipeline and optional Modifiers. Use it for smooth transitions, oscillations, or anything that evolves over time.

Type: DoubleAssetPipelineOperation

Set Float

Sets the asset to a specific number.

Writes a number to the asset. Use it to reset counters, apply computed values, or make any one-shot assignment.

Type: SetFloatOperation

Set Float Over Time

Drives a number toward a target value over time.

Changes a number each frame using a Pipeline and optional Modifiers. Blend toward a value, follow a source through a modifier chain, ease, oscillate, or spring.

Type: WriteFloatPipelineOperation

Set Float Over Time

Drives the asset's number over time using a Pipeline.

Changes the asset's number each frame using a Pipeline and optional Modifiers. Use it for smooth transitions, oscillations, or anything that evolves over time.

Type: FloatAssetPipelineOperation

Set Int

Sets the asset to a specific number.

Writes a number to the asset. Use it to reset counters, apply computed values, or make any one-shot assignment.

Type: SetIntOperation

Set Int Over Time

Drives a number toward a target value over time.

Changes a whole number each frame using a Pipeline and optional Modifiers. Values round to the nearest whole number each step.

Type: WriteIntPipelineOperation

Set Int Over Time

Drives the asset's number over time using a Pipeline.

Changes the asset's number each frame using a Pipeline and optional Modifiers. Use it for smooth transitions, oscillations, or anything that evolves over time.

Type: IntAssetPipelineOperation

Set Long

Sets the asset to a specific number.

Writes a number to the asset.

Type: SetLongOperation

Set String

Sets the asset to a specified string value.

Writes a string value to the target asset.

Type: SetStringOperation

Write Bool

Reads a true/false value from one place and writes it to another.

Reads a true/false value from any source and writes it into any settable target.

Type: WriteBoolOperation

Write Float

Reads a decimal number from one place and writes it to another.

Reads a decimal number from any source and writes it into any settable target. Use inside a Value Command (in a Process Component or a reaction's process) to copy a value from one place to another.

Type: WriteFloatOperation

Write Int

Reads a whole number from one place and writes it to another.

Reads a whole number from any source and writes it into any settable target. Use inside a Value Command (in a Process Component or a reaction's process) to copy a value from one place to another.

Type: WriteIntOperation

Write Long

Reads a large whole number from one place and writes it to another.

Reads a large whole number from any source and writes it into any target you can set.

Type: WriteLongOperation

Write String

Reads text from one place and writes it to another.

Reads text from any source and writes it into any settable target.

Type: WriteStringOperation

Data / Value Asset

Bool Value Asset Command

Set or toggle the stored value.

Runs a list of operations on one bool value asset, such as setting or toggling it.

Type: BoolValueAssetCommand

Double Value Asset Command

Set, increment, or pipeline the value.

Runs a list of operations, such as set, increment, or pipeline, on one double value asset. Instant and timed operations can be mixed freely.

Type: DoubleValueAssetCommand

Float Value Asset Command

Set, increment, or pipeline the value.

Runs a list of operations, such as set, increment, or pipeline, on one float value asset. Instant and timed operations can be mixed freely.

Type: FloatValueAssetCommand

Int Value Asset Command

Set, increment, or pipeline the value.

Runs a list of operations, such as set, increment, or pipeline, on one int value asset. Instant and timed operations can be mixed freely.

Type: IntValueAssetCommand

Long Value Asset Command

Set, increment, or pipeline the value.

Runs a list of operations, such as set or increment, on one long value asset.

Type: LongValueAssetCommand

String Value Asset Command

Set or modify the stored text.

Runs a list of operations on one string value asset, such as setting or modifying the text.

Type: StringValueAssetCommand

Easing

Easing

Applies easing functions to the value.

Applies standard easing functions (quad, cubic, elastic, bounce, etc.) to a 0-1 input value.

Type: DoubleEasingModifier

Easing

Applies easing functions to the value.

Applies standard easing functions (quad, cubic, elastic, bounce, etc.) to a 0-1 input value.

Type: FloatEasingModifier

Lookup

Float At Condition

Picks a number based on which condition is true.

Evaluates conditions in order and returns the matching entry's number; falls back to a default when none pass.

Type: FloatAtCondition

Float At Index

Picks one number from a list by index.

Returns a number from an array by index.

Type: FloatAtIndex

Math

Absolute Modifier

Returns the absolute value.

Returns the absolute (non-negative) value of the integer input.

Type: IntAbsoluteModifier

Absolute Modifier

Returns the absolute value.

Returns the absolute (non-negative) value of the input.

Type: DoubleAbsoluteModifier

Absolute Modifier

Returns the absolute value.

Returns the absolute (non-negative) value of the input.

Type: FloatAbsoluteModifier

Add Modifier

Adds a value to the input.

Adds a constant or dynamic integer value to the input.

Type: IntAddModifier

Add Modifier

Adds a value to the input.

Adds a constant or dynamic value to the input.

Type: DoubleAddModifier

Add Modifier

Adds a value to the input.

Adds a constant or dynamic value to the input.

Type: FloatAddModifier

Ceiling Modifier

Ceiling (rounds up).

Rounds the value up to the nearest integer.

Type: DoubleCeilingModifier

Ceiling Modifier

Ceiling (rounds up).

Rounds the value up to the nearest integer.

Type: FloatCeilingModifier

Clamp Modifier

Clamps the value between min and max.

Constrains the integer value to stay within configurable min and max bounds.

Type: IntClampModifier

Clamp Modifier

Clamps the value between min and max.

Constrains the value to stay within configurable min and max bounds.

Type: DoubleClampModifier

Clamp Modifier

Clamps the value between min and max.

Constrains the value to stay within configurable min and max bounds.

Type: FloatClampModifier

Curve Modifier

Remaps the value using an animation curve.

Remaps the value through a curve for non-linear shaping (eases, custom shapes, etc.).

Type: DoubleCurveModifier

Curve Modifier

Remaps the value using an animation curve.

Remaps the value through a Unity Animation Curve for custom non-linear shaping.

Type: FloatCurveModifier

Double Over Time

Moves a high-precision number between two values over time.

Moves a high-precision number from Start to End over time along a curve. Loop repeats it, ping-pongs it, or keeps it going past End. Used as a pipeline's destination it starts when the pipeline begins. Picked as a value anywhere else, its Clock decides when it starts, and it starts again by itself each time that comes round.

Type: DoubleLerpedTarget

Exponential Modifier

Applies exponential function to the value.

Raises a base value to the input, with optional input and output scaling. Output grows fast as the input rises.

Type: FloatExponentialModifier

Exponential Modifier

Applies exponential function to the value.

Raises a base value to the input (with optional input and output scaling). Output grows fast as the input rises.

Type: DoubleExponentialModifier

Float Over Time

Moves a number between two values over time.

Moves a number from Start to End over time along a curve. Loop repeats it, ping-pongs it, or keeps it going past End. Used as a pipeline's destination it starts when the pipeline begins. Picked as a value anywhere else, its Clock decides when it starts, and it starts again by itself each time that comes round.

Type: FloatLerpedTarget

Floor Modifier

Floor (rounds down).

Rounds the value down to the nearest integer.

Type: DoubleFloorModifier

Floor Modifier

Floor (rounds down).

Rounds the value down to the nearest integer.

Type: FloatFloorModifier

Int Over Time

Moves a whole number between two values over time.

Moves a whole number from Start to End over time along a curve. Loop repeats it, ping-pongs it, or keeps it going past End. Used as a pipeline's destination it starts when the pipeline begins. Picked as a value anywhere else, its Clock decides when it starts, and it starts again by itself each time that comes round.

Type: IntLerpedTarget

Invert

Inverts the value around a center point.

Mirrors the integer value around a center point: result = 2*center - input.

Type: IntInvertModifier

Lerp Modifier

Maps 0-1 input to a custom range.

Blends between min and max based on the input value (0 returns min, 1 returns max).

Type: FloatLerpModifier

Lerp Modifier

Maps 0-1 input to a custom range.

Blends between min and max based on the input value (0 returns min, 1 returns max).

Type: DoubleLerpModifier

Logarithmic Scale

Applies logarithmic scaling to the value.

Compresses large value ranges using a logarithm. Useful when you want big numbers to stay manageable.

Type: DoubleLogarithmicModifier

Maximum Modifier

Larger of the value and a limit (holds it up from below).

Keeps the value at or above the limit, with no ceiling. A one-sided Clamp.

Type: FloatMaxModifier

Minimum Modifier

Smaller of the value and a limit (caps it from above).

Keeps the value at or below the limit, with no floor. A one-sided Clamp.

Type: FloatMinModifier

Modulo Modifier

Applies modulo operation to the value.

Returns the remainder after dividing by a configurable divisor.

Type: IntModuloModifier

Multiply Modifier

Multiplies the input by a value.

Multiplies the input by a constant or dynamic integer factor.

Type: IntMultiplyModifier

Multiply Modifier

Multiplies the input by a value.

Multiplies the input by a constant or dynamic factor.

Type: DoubleMultiplyModifier

Multiply Modifier

Multiplies the input by a value.

Multiplies the input by a constant or dynamic factor.

Type: FloatMultiplyModifier

Negate Modifier

Negates the value (multiplies by -1).

Flips the sign of the integer value by multiplying by -1.

Type: IntNegateModifier

Negate Modifier

Negates the value (multiplies by -1).

Flips the sign of the value by multiplying by -1.

Type: DoubleNegateModifier

Negate Modifier

Negates the value (multiplies by -1).

Flips the sign of the value by multiplying by -1.

Type: FloatNegateModifier

Ping-Pong

Oscillates value between min and max.

Bounces the integer value back and forth between min and max boundaries.

Type: IntPingPongModifier

Power

Raises the value to a power.

Raises the integer to a configurable non-negative exponent.

Type: IntPowerModifier

Power Modifier

Raises the value to a power.

Raises the input value to a configurable exponent.

Type: FloatPowerModifier

Power Modifier

Raises the value to a power.

Raises the input value to a configurable exponent.

Type: DoublePowerModifier

Quantize

Snaps value to discrete steps.

Snaps the integer to the nearest multiple of a configurable step size.

Type: IntQuantizeModifier

Quantize

Snaps value to discrete steps.

Snaps the value to the nearest multiple of a configurable step size.

Type: DoubleQuantizeModifier

Random Noise Modifier

Adds random integer noise to the value.

Adds a random integer offset within a configurable min/max noise range each frame.

Type: IntRandomNoiseModifier

Remap

Remaps value from one range to another.

Linearly remaps an integer from one input range to a different output range.

Type: IntRemapModifier

Remap Modifier

Remaps the value from one range to another.

Remaps a value from one range to another. For example, take an input from 0–100 and turn it into 0–1.

Type: DoubleRemapModifier

Remap Modifier

Remaps value from one range to another.

Remaps a value from one range to another. For example, take an input from 0–100 and turn it into 0–1. Bend the curve to ease in, ease out, or overshoot along the way.

Type: FloatRemapModifier

Round Modifier

Rounds to specified decimal places.

Rounds the value to a configurable number of decimal places.

Type: DoubleRoundModifier

Round Modifier

Rounds the value to the nearest integer.

Rounds the value to a configurable number of decimal places.

Type: FloatRoundModifier

Sign Modifier

-1 when negative, 0 at zero, 1 when positive.

Reduces the value to its direction: -1 below zero, 0 at zero, 1 above. Unlike Mathf.Sign, zero stays 0, so a released stick reads as no direction.

Type: FloatSignModifier

Smoothstep Modifier

Smoothly blends between two edges.

Smoothly eases between two edges with a curve that accelerates in and decelerates out.

Type: FloatSmoothstepModifier

Smoothstep Modifier

Smoothly blends between two edges.

Smoothly eases between two edges with a curve that accelerates in and decelerates out.

Type: DoubleSmoothstepModifier

Threshold

Returns one of two values based on threshold.

Step function that outputs one integer above a threshold and another below it.

Type: IntThresholdModifier

Wrap

Wraps value between min and max (repeating).

Wraps the integer to repeat within a min-max range using modulo arithmetic.

Type: IntWrapModifier

Math / Double

Processed Double

A number with Modifiers applied.

A number that passes through a chain of Modifiers before returning the result.

Type: ProcessedDoubleValue

Random Double

Picks a random value with probability bias.

Returns a random double within a configurable min/max range each time it is read. Set Same Roll For to give each object its own fixed roll instead, such as one per tentacle.

Type: RandomDoubleValue

Math / Float

Eased Bool

Off value to on value over time as a bool turns on, back as it turns off.

Reads a true/false value and returns a number that glides from Off Value (0 by default) to On Value (1 by default) when it turns on and back when it turns off, over Duration seconds and along the curve. Plug it into a blend factor to slide a panel between two poses from a single toggle key, or set Off/On to drive a speed, angle or distance directly.

Type: EasedBoolValue

Float Math

Adds, subtracts, multiplies, divides, or takes the min or max of two numbers.

Returns A combined with B by the chosen operation. Both sides can be fixed numbers or live values, so it can scale a speed by a multiplier, or keep the larger of two distances. Divide returns 0 when B is 0.

Type: FloatMathValue

Processed Float

A number value with modifiers applied.

A number value that passes through a chain of modifiers before returning the result.

Type: ProcessedFloatValue

Random Float

Random in range; optional probability bias.

Returns a random number within a configurable min/max range each time it is read. Set Same Roll For to give each object its own fixed roll instead, such as one per tentacle.

Type: RandomFloatValue

Remap Float

Maps a number from one range to another, shaped by a curve.

Reads a number, finds where it sits between Input Min and Input Max, runs that 0 to 1 position through the curve, and returns the matching point between Output Min and Output Max. Turns a distance into a 0 to 1 falloff, or a size into an angle, without a Processed Float. Swap Output Min and Max to invert.

Type: RemapFloatValue

Math / Int

Processed Int

A number value with modifiers applied.

A number value that passes through a chain of modifiers before returning the result.

Type: ProcessedIntValue

Random Int

Random in range; optional probability bias.

Returns a random int within a configurable min/max range each time it is read. Set Same Roll For to give each object its own fixed roll instead, such as one per tentacle.

Type: RandomIntValue

Orchestration / Targets

Staggered Over Time

Targets start one after another, spread over a duration along a curve.

When the target is several objects, they start one after another in list order, spread over the duration below. The curve places each start: a straight line spaces them evenly, an ease-in curve bunches them early and spreads them out late. The last object always starts at the end of the duration, however many objects there are. The command finishes once the last one is done.

Type: StaggeredOverTime

Signal

Deadzone

Returns zero within threshold range.

Returns zero for inputs within a threshold, with optional remapping of the remaining range.

Type: FloatDeadzoneModifier

Deadzone

Returns zero within threshold range.

Returns zero for inputs within a threshold, with optional remapping of the remaining range.

Type: DoubleDeadzoneModifier

Quantize

Snaps value to discrete steps.

Snaps the value to the nearest multiple of a configurable step size.

Type: FloatQuantizeModifier

Quantize (Signal)

Snaps value to discrete steps.

Snaps the value to the nearest multiple of a configurable step size.

Type: DoubleSignalQuantizeModifier

Smoothing

Anti-Jitter

Ignores small value changes below a threshold to reduce jitter.

Ignores tiny changes below a threshold to remove jitter from a noisy value.

Type: DoubleAntiJitterModifier

Anti-Jitter

Ignores small value changes below a threshold to reduce jitter.

Ignores tiny changes below a threshold to remove jitter from a noisy value.

Type: FloatAntiJitterModifier

Exponential Smooth

Smooths the value toward its target, staying consistent across frame rates.

Smoothing that softens jumpy values. The half-life controls how quickly it settles: smaller is snappier, larger is smoother. Stays consistent across frame rates.

Type: DoubleExponentialSmoothModifier

Exponential Smooth

Smooths the value toward the target, staying consistent across frame rates.

Softens jumpy values. The half-life controls how quickly it settles, smaller is snappier, larger is smoother. Stays consistent across frame rates.

Type: FloatExponentialSmoothModifier

Pipeline Slew Rate Limiter

Limits how fast the value can change per second, with separate rise and fall rates.

Caps how fast the value can change each second, with separate limits for going up and going down.

Type: DoublePipelineSlewRateLimiterModifier

Pipeline Slew Rate Limiter

Limits how fast the value can change per second, with separate rise and fall rates. Uses pipeline current value.

Caps how fast the value can change each second, with separate limits for going up and going down.

Type: FloatPipelineSlewRateLimiterModifier

Smooth Follow

Smoothly follows the target value, moving faster when far and slower when close.

Smoothly follows the target. Speed scales with distance, faster when far, slower as it gets close. Snaps to the target once within a tiny range, if you want.

Type: DoubleSmoothFollowModifier

Smooth Follow

Smoothly follows the target value, moving faster when far away and slower as it gets close.

Smoothly follows the target, faster when far away and slower as it gets close, with an optional snap when very close.

Type: FloatSmoothFollowModifier

Utility

Invert

Inverts the value around a center point.

Mirrors the value around a center point: result = 2*center - input.

Type: FloatInvertModifier

Invert

Inverts the value around a center point.

Mirrors the value around a center point: result = 2*center - input.

Type: DoubleInvertModifier

Logarithmic Scale

Applies logarithmic scaling to the value.

Applies logarithmic scaling with a configurable base to compress large value ranges.

Type: FloatLogarithmicModifier

Threshold

Returns 0 or 1 based on threshold.

Step function that outputs one value above a threshold and another below it.

Type: FloatThresholdModifier

Threshold

Returns 0 or 1 based on threshold.

Step function that outputs one value above a threshold and another below it.

Type: DoubleThresholdModifier

Wave

Ping-Pong

Oscillates value between min and max.

Bounces the value back and forth between min and max boundaries.

Type: FloatPingPongModifier

Ping-Pong

Oscillates value between min and max.

Bounces the value back and forth between min and max boundaries.

Type: DoublePingPongModifier

Wrap

Wraps value between min and max (repeating).

Wraps the value to repeat within a min-max range, like modulo for arbitrary bounds.

Type: FloatWrapModifier

Wrap

Wraps value between min and max (repeating).

Wraps the value to repeat within a min-max range: once it passes one edge, it continues from the other.

Type: DoubleWrapModifier

General

Curve Value

Stores a curve value locally on the owner.

Holds a curve directly on the owner, so it can be authored and used right where it is.

Type: CurveValue

Forever

Loops indefinitely, restarting when the end is reached.

Plays the blend forever, restarting from the beginning each time it reaches the end.

Type: ForeverLoopStrategy

Keep Going

Carries on past the end instead of stopping or looping.

Never stops: after Duration the curve keeps going the way it was heading, so a straight line keeps climbing and an Exponential Growth curve keeps speeding up. End is where it is at one Duration.

Type: KeepGoingLoopStrategy

Loop Count

Loops a specified number of times before stopping.

Plays the blend a fixed number of times, then stops.

Type: LoopCountSrategy

Once

Plays once and stops at the end without looping.

Plays the blend once from start to end, then stops on the end value.

Type: OnceLoopStrategy

Ping Pong

Alternates direction at each end.

Alternates direction at each end, playing forward then backward continuously.

Type: PingPongLoopStrategy