home/ atoms/ parabola-animation-signal

A normalized parabola 4t(1−t) is a clean parametric signal for bounce, squash, and stretch animations

The function f(t) = 4t(1-t) is a parabola that passes through (0,0) and (1,0) with a peak of 1 at t=0.5. Combined with fract(time) to make it periodic, it produces a repeating bounce curve where t advances from 0 to 1 each cycle. In character animation this drives vertical position (jump height), ellipsoid scale (squash at t=0, stretch at t=0.5), and secondary motion (ears, arms with a time offset). Raising the parabola to a power of (2-f) sharpens the contact at t=0 and t=1, simulating muscle compression before a jump.

Examples

float ft = fract(time); float h = 4.0*ft*(1.0-ft); — h goes 0→1→0 each second. For a squashed contact: float p = pow(h, 2.0-h);

Assessment

Sketch or describe the shape of 4t(1-t) versus pow(4t(1-t), 2-4t(1-t)) and explain which physical behaviour each captures in a jumping animation.

“bouncing like a parabola. You know, when you're learning physics at school and you have the ballistic physics, is it cool?”
corpus · inigo-quilez-live-coding-happy-jumping-video · chunk 6