Activity › Forums › Adobe After Effects Expressions › “Inertial Bounce” expression in text layer
-
“Inertial Bounce” expression in text layer
Caitlin Mckenna replied 9 years, 7 months ago 8 Members · 23 Replies
-
Eduardo Oliveira
February 24, 2016 at 5:51 pmActually Guys, i jumped the gun there – the actual corrected expression from dan should look like this:
it stops the weird behaviour at keyframesdelay = .1;
tDelay = delay*textIndex;
n = 0;
if (numKeys > 0){
n = nearestKey(time-tDelay).index;
if (key(n).time > time) n--;
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time - tDelay;
}if (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .05;
freq = 2;
decay = 2.0;
valueAtTime(time-tDelay) + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
valueAtTime(time-tDelay);
}
-
Eduardo Oliveira
February 24, 2016 at 7:01 pmi really wish there was and EDIT button in this forum… hehehe.
anyways, probably very few people are even using these expressions, but after making a fool of myself twice, i realized that my fixes were false positives. anyways, i’ve spend a couple of hours, and i am almost sure that this time it works flawlessly. anyways, feel free to point out to me if it does not work for you.
as always, the expression goes in the “amount” field, not on the property used on the animator.here it is:
//Inertia Bounce for TEXT per CHARACTER ANIMATION!delay = .1;
tDelay = delay*textIndex;
n = 0;
if (numKeys > 0){
n = nearestKey(time-tDelay).index;
if (key(n).time > time-tDelay) n--;
}
if (n == 0){
t = 0;
}else{
t = time - key(n).time - tDelay;
}if (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .05;
freq = 2.0;
decay = 2.0;
valueAtTime(time-tDelay) + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
valueAtTime(time-tDelay);
}
-
Caitlin Mckenna
September 30, 2016 at 11:19 pmI know this thread is about 7 months old, but I had to make an account just to thank you for your work on it. Finding this now has been a life saver for me!
Reply to this Discussion! Login or Sign Up