Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions Overshoot Bounce Out Expression Needed!

  • Overshoot Bounce Out Expression Needed!

    Posted by Brayden Blythe on May 17, 2025 at 3:36 pm

    I’ve discovered a lot of great expressions on the internet for a realistic bounce overshoot animation. The best one, and the one I’m going with is from Dan: https://www.motionscript.com/articles/bounce-and-overshoot.html

    However, I’m looking for a “bounce out” overshoot expression- essentially just the reverse of the bounce in, where it bounces very little at the beginning and gradually gets larger before flying out to it’s final position. Simply reversing the inputs of the expression does not work.

    I need this in expression form so that I can link certain values to sliders. Anyone have any resources or ideas on how to accomplish this?

    Here is the bounce in animation from Dan that I am using:

    freq = 3;
    decay = 5;
    
    t = time - inPoint;
    startVal = [0,0];
    endVal = [200,200];
    dur = 0.1;
    if (t < dur){
      linear(t,0,dur,startVal,endVal);
    }else{
      amp = (endVal - startVal)/dur;
      w = freq*Math.PI*2;
      endVal + amp*(Math.sin((t-dur)*w)/Math.exp(decay*(t-dur))/w);
    }
    Brie Clayton replied 1 month ago 3 Members · 3 Replies
  • 3 Replies
  • Dan Ebberts

    May 17, 2025 at 4:00 pm

    To run it in reverse, you need to define an end point, so you could introduce a new variable, totalDur, for that purpose, and modify one line of the expression to reverse it, like this:

    freq = 3;
    decay = 5;
    totalDur = 3;
    t = (inPoint +totalDur) - time;
    startVal = [0,0];
    endVal = [200,200];
    dur = 0.1;
    if (t < dur){
    linear(t,0,dur,startVal,endVal);
    }else{
    amp = (endVal - startVal)/dur;
    w = freq*Math.PI*2;
    endVal + amp*(Math.sin((t-dur)*w)/Math.exp(decay*(t-dur))/w);
    }

    You could tie any of the variables (first 3 lines) to sliders.

  • Brayden Blythe

    May 17, 2025 at 4:07 pm

    This works! Thanks again, Dan!

  • Brie Clayton

    May 18, 2025 at 3:21 pm

    Thanks for solving this, Dan!

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy