Creating a Looping Wiggle Effect in After Effects - Tutorial
Vložit
- čas přidán 21. 07. 2024
- Creating a Looping Wiggle Effect in After Effects - Tutorial
When you create a wiggle effect - really easy with (wiggle 1,10) for example - and you want to make your animation loop, you can't because it randomly jumps around so the starting position isn't the same as the end position. Well fear no more! I've got the solution for you. You'll have to watch the video though. Cheers!
Looping Wiggle Expression:
freq = 1;
amp = 110;
loopTime = 3;
t = time % loopTime;
wiggle1 = wiggle(freq, amp, 1, 0.5, t);
wiggle2 = wiggle(freq, amp, 1, 0.5, t - loopTime);
linear(t, 0, loopTime, wiggle1, wiggle2)
If you would like to download the project files, you can do that by supporting us on Patreon. You can also get a lot more perks with our different tiers so head on over there and support us!
Our Patreon page:
/ campkeyframe
Follow us on Instagram to get the latest updates:
/ campkeyframe
Join the community on Discord (more perks with Patreon):
/ discord
____________________________________
Don't hesitate to ask any questions you have in the comments! I will do my best to answer as many questions as possible.
If you liked the video, please consider hitting that like button! Subscribe to the channel to get even more tutorials (uploaded on a regular basis) and get your After Effects skills to the next level!
Thanks and enjoy :)
Bas
____________________________________
My most used plugins:
Flow:
aescripts.com/flow/
Rift:
aescripts.com/rift/
Motion:
www.mtmograph.com/motion
Overlord:
www.battleaxe.co/overlord
Check out my tutorial as well: www.youtube.com/watch?v=IwZUm...
Textevo:
aescripts.com/textevo/
Buttcapper:
www.battleaxe.co/buttcapper - Krátké a kreslené filmy
People that post the expressions in the desc deserve nobel peace prizes
thanks you so much
you have no idea how useful tutorials are as direct and easy to apply as this one
fantastic. i used to spend so much time working around my wiggle expressions not looping... this is so great!
Great short tutorial! I knew about the wiggle expression, but I didn't know you could make them loop perfectly with looptime!
Yeah great right? Thanks for watching :)
Thanks a lot for this, i have not worked with expressions in awhile, and this video just made my day!!!
Thank you so much! Exactly what I was looking for and thanks for including the expression.
Great video.
Red about this sort of technique a while ago but forgot about it. Thanks for reminding me!
Thank you! You are a legend! Saved me so much time :)
Short, concise, perfectly effective, script linked in the bio.. A perfect tutorial.
Just what i needed. Thank you very much.
Very Very Very Thank you very much! I'm going to save this expression, it will be very useful.
excellent tutorial, thank you so much.
your channel is gold mate! Keep these amazing tutorials coming ")
Thank you so much! :)
awesome! thank you for the expression
Thanks a ton. wish you great health and happiness.God bless you
To Bas!!!! Top notch as always 👌Quick and insightful
Thanks Sanni! :)
This is gold!, thanks so much!
I’d like to see more short tutorials like this. A mix of short and long. Thanks.
Thanks for your comment. I will definitely keep this in mind and make a nice mix of longer and shorter tutorials in the future :)
thank you so much! you saved my time)
This helps me a lot ,Thank you
thank you very much, you saved my life!!
literally magic love it! Thank you!
Thank you! :)
Great man!!! Thanx a lot!
I was having issues with the loop timing, I had a comp that was 4s long, but when I changed the expression to reflect 4 as the time, I was still getting an extra frame or two that weren't working, even when I tried making it 1 frame longer/shorter than 4s. I found this expression to eliminate the issue of the timing:
freq = 1;
amp = 510;
loopTime = thisComp.duration;
t = time % loopTime;
wiggle1 = wiggle(freq, amp, 1, 0.5, t);
wiggle2 = wiggle(freq, amp, 1, 0.5, t - loopTime);
linear(t, 0, loopTime, wiggle1, wiggle2)
Thank you for this video!
This is beautiful, elegant and the way to do it.
Another way is, to leave the expression as it was originally, so if your comp is 4s, the timeline has to end in 00:3,29 (in 30fps) this is due to the next frame is 00:00,00 which is the same as 00:04,00 so thats why you get the same frame twice
Thank you so much, this was driving me bonkers.
Haha cool! Glad I could help :)
Thanks a lottt it was awesome
Thanks my friend!
thank you, I used this on a project today!
Awesome to hear! :)
I LOVE YOU MAN!
Thnaks...! it works.
Love you!
Thank you!
no one making this "tutorial" explains the meaning of lines:
t = time % loopTime;
wiggle1 = wiggle(freq, amp, 1, 0.5, t);
wiggle2 = wiggle(freq, amp, 1, 0.5, t - loopTime);
linear(t, 0, loopTime, wiggle1, wiggle2)
THANKS :)
GENIUS
Thank you very much for this!
You're welcome! And thanks for watching :)
When I animate it going from a slow wiggle to a faster wiggle, it goes faster during the animation than it is after the last keyframe. Like if I animate it going from 1 to 2, it's faster than 2 during the animation but is 2 after it. Is there anyway to fix that?
thanks bro
Very helpful Thanks
Beautiful
Thanks For sharing MAN.
You're welcome Ahmad! Thanks for watching :)
amazing!!!
Thanks! :)
great tutorial! If my 'loopTime' is 01,19seg. How do i express it?
i love you!
Hi! What if my composition is not 3 seconds long on the dot? Like, what do I do if it’s 3:20 seconds long or so?
Does someone know how to slow down the animation with this expression, while still preserving the loop?
thanks
thnks legend
LEGEND
Bedankt!
thanks boss !!
Thanks for watching! :)
What if I want to loop it using only "y" wiggle?
scale??
many many thanks, very useful expression.
Is there any way to make it frame based? Instead of 0:00:03:00, what if it's 0:00:03:17, or just 00071?
got any idea? having the same issue
You can just divide the number of frames by the frame rate for example I have 215 frames and my animation is 24 fps. Instead of putting 3 in the loopTime, I've put loopTime=215/24 and it worked perfectly. You don't even have to do the math in case it has too many decimals or whatever.
@@Cristina-hp2yg smart, thanx*10 Cristina
Much thanks - quick question: I currently have the following expression to keep the wiggle only on the y-axis:
[ value[0], wiggle(1,5)[1] ]
How would I add this to the expression you shared to make the above expression an exact loop?
freq = 1;
amp = 5;
loopTime = 3;
t = time % loopTime;
wiggle1 = wiggle(freq, amp, 1, 0.5, t);
wiggle2 = wiggle(freq, amp, 1, 0.5, t - loopTime);
linear(t, 0, loopTime, wiggle1, wiggle2)
i know im late but if you are using simple positon keyframing, you can right click and press separate dimensions, isolating the x and y axises
Doesn't work.
real