Compute the next playback value for a dimension — pure, no state mutation.
Discrete dimensions step by ±step on the range-min-anchored grid;
continuous dimensions advance by
range / traverseTime × frameTime. Boundaries follow the loop mode:
once clamps and stops, loop wraps to the opposite end, bounce
clamps and flips the returned direction.
Compute the next playback value for a dimension — pure, no state mutation.
Discrete dimensions step by
±stepon the range-min-anchored grid; continuous dimensions advance byrange / traverseTime × frameTime. Boundaries follow the loop mode:onceclamps and stops,loopwraps to the opposite end,bounceclamps and flips the returned direction.