Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions Need to loop wiggle to create seamless animation

  • Need to loop wiggle to create seamless animation

    Posted by Erikk Lee on October 24, 2017 at 5:56 pm

    I have a simple 15 sec animation where I am using wiggle to make grass and flowers sway.

    I’m using…

    wiggle(.5,15)

    …and that’s it.

    How do I get it to loop seamlessly?

    wiggle(.5,15)

    Yoran Ramselaar replied 8 years, 10 months ago 4 Members · 3 Replies
  • 3 Replies
  • Dan Ebberts

    October 24, 2017 at 7:27 pm

    Here’s a 5-second loop:

    loopTime = 5;
    t = time % loopTime;
    wiggle1 = wiggle(.5, 15, 1, 0.5, t);
    wiggle2 = wiggle(.5, 15, 1, 0.5, t – loopTime);
    linear(t, 0, loopTime, wiggle1, wiggle2)

    Dan

  • Andrei Popa

    October 24, 2017 at 7:39 pm

    You put your layers in a precomp. Add time-remap to that precomp. Add this expression to the time-remap.
    cycleDuration = 2;
    cycleDuration-Math.abs((time-inPoint)%cycleDuration *2-cycleDuration )

    You can modify the duration of the loop by changing the 15 in the first line. This is basically a “pingpong” loopOut with the duration of 15. As an alternative, you can set a keyframe at 0 and one at 15 seconds of the timeremap propriety of your precomp, and add this expression:
    loopOut("pingpong")

    Andrei
    My Envato portfolio.

  • Yoran Ramselaar

    October 25, 2017 at 3:12 pm

    Dear Dan,

    I was wondering if there is a way of making the typewriter effect follow audio levels.

    example:

    After effects needs to say: When the audio levels are 0 , the typewriter shouldn’t go on. If higher the animation should go on.

    What I mean by this is, that the animation stops when there are breaks in like a voice over.
    This is how far I got, I’m very new to this and I am trying to learn it.

    Please help, it would save me so much time !

    Yours Sincerely,

    Yoran

    slider = thisComp.layer("Audio Amplitude").effect("Both Channels")("Slider") if (Both Channels < 0,1 ) 0 else 100

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