Copy link to clipboard
Copied
This is the code
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 (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
amp = .1;
freq =3.1;
decay = 7;
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{
value;
}
Copy link to clipboard
Copied
How long does the comp run beyond the last keyframe? You might need to replace this line:
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
with this:
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(Math.min(decay*t,10));