method
Ease.elastic
Ease.elastic(t) -> fixed
Returns an ease-out that shoots past 1.0 and wobbles around it a few times with shrinking amplitude before settling — a spring released under tension. The overshoot comes from a decaying 2-10t envelope on a sine, all in Q16.16, so it is deterministic and bit-identical on every platform. Great for UI that snaps in with personality: a panel that springs open, a picked-up item that jiggles, a selection that bounces to place.
Example
program Demo {
handler Step phase Update {
let scale = Math.lerp(0.0, 1.0, Ease.elastic(progress))
}
}