Функция замедления позволяет вам интерполировать значения из одного значения в другое в течение заданного интервала, используя то, что называется «функцией замедления». Это функции, которые предназначены для получения значения и в любой заданной точке интервала выводят значение в определенный момент времени.
Это лучше всего объяснить, взглянув на фрагмент кода:
// simple linear tweening - no easing, no acceleration
Math.linearTween = function (t, b, c, d) {
return c*t/d + b;
};
@t - текущее время (или позиция) анимации. Это могут быть секунды или кадры, шаги, секунды, мс и т. Д. - если единица измерения такая же, как используется для общего времени
@b - начальное значение свойства.
@c - это изменение между начальным и конечным значением свойства.
@d - общее время анимации.
Спасибо, http://upshots.org/actionscript/jsas-understanding-easing
Это определение линейной функции ослабления. Отобразив это с течением времени в терминах «t», мы получим простой линейный график.
Хорошо. Для чего мы можем их использовать?
Каждый раз, когда вы начинаете и заканчиваете и хотите анимировать их, вы можете использовать «анимацию» или «функцию замедления».
Например, вот GIF, который я только что взял Angry Birds:
Заметьте, что меню выдвигается к точке на экране, но оно медленно останавливается? Это связано с функцией ослабления, которая облегчается на место. Вы можете увидеть их по всему Интернету. Если бы это было линейное облегчение, это было бы одинаково во всем.
Музыка?
Конечно! Если мы возьмем значение нашего текущего значения звукового сопровождения и интерполируем его между этим значением и 0 в течение общей t, скажем, 1 секунды, то наша громкость будет постепенно уменьшаться в течение одной секунды.
Ограничивающие объекты
Есть также функции, которые позволяют отскакивать (см .: http://easings.net/#easeOutBounce ), которые могут производить подобные эффекты на спрайте без каких-либо физических систем:
Вы можете найти больше информации в Интернете, выполнив поиск анимации.