Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions Combining Inertial bounce & wiggle expression on Z rotation

  • Combining Inertial bounce & wiggle expression on Z rotation

    Posted by Ryan Biercewicz on May 6, 2015 at 5:33 pm

    Hi all,

    I have a null object which is controlling the Z rotation of a freeform pro layer, and I’d like to see if there is an expression to combine inertial bounce and wiggle on the same parameter (z rotation).

    Basically, the object in question is an arm, which swings up onto camera, bounces back, and then continues to wiggle slightly from the null to simulate realistic movement.

    I have tried using Dan Ebberts’ expression here https://forums.creativecow.net/thread/227/14836 but to no avail – I can’t figure out how to apply this to just the value of the z rotation.

    Thanks
    Ryan

    Ryan Biercewicz replied 11 years ago 3 Members · 5 Replies
  • 5 Replies
  • Chris Bobotis

    May 6, 2015 at 5:40 pm

    Have you looked at MamoWorld’s iExpressions? I am a big fan. Reach out to Mathias at MamoWorld. He is a great guy and it just so happens that he is brilliant too 🙂

    HTH,

    Cheers,
    Chris
    mettle.com

  • Dan Ebberts

    May 6, 2015 at 5:58 pm

    Does z rotation already have an expression? If so, what is it?

    Dan

  • Ryan Biercewicz

    May 7, 2015 at 8:24 am

    Hi Dan,

    At the moment the Z rotation already has an inertial bounce expression;

    // Inertial Bounce (moves settle into place after bouncing around a little)
    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 && t < 1){
    v = velocityAtTime(key(n).time – thisComp.frameDuration/10);
    amp = .02;
    freq = 2.0;
    decay = 6.0;
    value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
    }else{
    value;
    }

    Also thanks Chris I just checked out iExpressions, I can’t tell whether it will work for this particular project but definitely looks like something worth investing in anyway. Thanks!

    Ryan

  • Dan Ebberts

    May 7, 2015 at 3:37 pm

    Play around with this:


    w = wiggle(2,10);
    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 && t < 1){
    v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
    amp = .02;
    freq = 2.0;
    decay = 6.0;
    w + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
    }else{
    w
    }

    Dan

  • Ryan Biercewicz

    May 7, 2015 at 4:12 pm

    Hi Dan,

    This works perfectly, and very easy to modify too.

    Thanks so much for your help – greatly appreciated!

    Cheers
    Ryan

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