[csswg-drafts] [css-easing] "smooth" (C1-continuous) easing between keyframes (#6696)

tabatkins has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-easing] "smooth" (C1-continuous) easing between keyframes ==
In today's CSSWG meeting, @svgeesus brought up the problem that interpolation between keyframes today is exclusively pair-wise. At the transition point from one pair to another, the animation curve will often be discontinuous, causing a potentially jarring velocity change. Authors can manually adjust for this to a degree by writing cubic-bezier() curves, but it's non-trivial and they have to readjust them every time they tweak the animation.

Based on the discussion between Chris, myself, and @flackr, I suggest we add an easing keyword `smooth`, which automatically computes an interpolation that is C1-continuous with neighboring pairs. It's been a while since I've been in the literature for this, but I *think* this can be done with a single bezier segment, so long as the neighboring segments are also bezier (and they are, or can be pretended to be in the case of step). Others will probably know the details better than me.

SVG tried to add a curve type that does this via Catmull-Rom curves, see [Shepers' blog post](http://schepers.cc/getting-to-the-point).

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/6696 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 29 September 2021 17:12:36 UTC