The bounce expression adds a lively bouncing effect to property keyframes. It’s useful for creating animations with a playful or dynamic feel, where elements appear to bounce in and out of view. Apply it to any animatable property to achieve this effect.
amp = 0.7;
freq = 0.5;
decay = 2.1;
freq = 0.5;
decay = 2.1;
n = 0;
if (numKeys > 0) {
n = nearestKey(time).index;
if (key(n).time > time) {
n–;
}
}
if (n == 0) {
t = 0;
} else {
t = time – key(n).time;
}
if (numKeys > 0) {
n = nearestKey(time).index;
if (key(n).time > time) {
n–;
}
}
if (n == 0) {
t = 0;
} else {
t = time – key(n).time;
}
if (n > 0) {
v = velocityAtTime(key(n).time – thisComp.frameDuration / 10);
M = Math.sin(freq * t * 2 * Math.PI) / Math.exp(decay * t);
value + v * amp * M;
} else {
value;
}
v = velocityAtTime(key(n).time – thisComp.frameDuration / 10);
M = Math.sin(freq * t * 2 * Math.PI) / Math.exp(decay * t);
value + v * amp * M;
} else {
value;
}