Copy link to clipboard
Copied
Hi!
I would like to create something but I don't know how to do that. Hopefully someone can help me out.
I am animating a kind of northern light effect with particles and a wiggle expression. At a certain point in time, I want to pause the wiggle effect and make some manual position changes (like a path that the light follows). After a couple of seconds I want to resume the wiggle effect again.
I found some posts about starting and stopping the wiggle effect, but not much on pausing and resuming. Any ideas?
With kind regards,
Koen
Copy link to clipboard
Copied
What is the difference between starting and stopping vs. starting, stopping and resuming again? It is just starting and stopping it several times.
You can link the wiggle amplitude to a slider and keyframe this slider to 0 wherever the wiggle should not wiggle.
You can do the same with iExpressions, as shown in this tutorial.
Getting started with iExpressions Part 1 - Wiggles | mamoworld
One convenient and generic way of doing it is using Expression Timeline.
PS: If you want to stop the wiggle abruptly and want to continue the motion path exactly where the wiggle stopped, it is probably best to simply do this with an extra keyframe (i.e. make the position keyframe "jump" from its original position to the position where the wiggle ended)
Copy link to clipboard
Copied
Well, I suppose that's pretty much the effect I am trying to get, but I don't know if it's possible to apply the same start/stop code multiple times in one layer. It hasn't worked for me so far.
Thanks for the other suggestion tho, I'm gonna try them later!
Regards,
Koen
Copy link to clipboard
Copied
Sometimes the trick with pausing and resuming a wiggle is to get it to hold the last value during the pause and resume from that value. If that's what you're after, this example is controlled by a checkbox, and it may do what you want:
ctrl = effect("Checkbox Control")("Checkbox");
n = ctrl.numKeys;
if (n > 0 && ctrl.key(1).time < time){
accum = ctrl.key(1).value*(ctrl.key(1).time - inPoint);
for (i = 2; i <= n; i++){
if (ctrl.key(i).time > time) break;
k1 = ctrl.key(i-1);
k2 = ctrl.key(i);
v2 = ctrl.valueAtTime(k2.time-.001);
accum += (k1.value + v2)*(k2.time - k1.time)/2;
}
accum += (ctrl.value + ctrl.key(i-1).value)*(time - ctrl.key(i-1).time)/2;
}else{
accum = ctrl.value*(time - inPoint);
}
wiggle(1,100,1,.5,accum)
Dan
Copy link to clipboard
Copied
https://drive.google.com/open?id=0B8GDTmMJgYovVWpGWGVkRDRHQXM
Just apply Above Animation Preset to your wiggle layer and animate Amplitude and frequency in Effects section.
Get ready! An upgraded Adobe Community experience is coming in January.
Learn more