Skip to main content
Participating Frequently
August 7, 2020
Answered

How to animate random property every x seconds with an interval(hold) duration?

  • August 7, 2020
  • 1 reply
  • 2941 views

Trying to animate y position at random, whereas the position change every second but the animation from the current y to the next takes half second. So the y stays put for 0.5 sec in between.

ex:
- animate y from 12 to 44 during 0.5 sec;
- stay at 44 for 0.5 sec;
- animate from 44 to x during 0.5 sec;
- etc

Similar to wiggle but adding an interval between each cycle.

Tried using seedRandom and posterizeTime but it will just snap from value to value, and I'd like it to ease in out and stop for a while. Does that make sense?

Thanks in advance.

This topic has been closed for replies.
Correct answer Dan Ebberts

Something like this maybe:

 

segDur = 1;
minVal = 0;
maxVal = 100;
seg = Math.floor(time/segDur);
seedRandom(seg,true);
curVal = random(minVal,maxVal)
seedRandom(seg-1,true);
prevVal = random(minVal,maxVal);
t = time%segDur;
ease(t,0,segDur/2,prevVal,curVal)

 

 

Dan

1 reply

Dan Ebberts
Community Expert
Dan EbbertsCommunity ExpertCorrect answer
Community Expert
August 7, 2020

Something like this maybe:

 

segDur = 1;
minVal = 0;
maxVal = 100;
seg = Math.floor(time/segDur);
seedRandom(seg,true);
curVal = random(minVal,maxVal)
seedRandom(seg-1,true);
prevVal = random(minVal,maxVal);
t = time%segDur;
ease(t,0,segDur/2,prevVal,curVal)

 

 

Dan

Participating Frequently
August 7, 2020

jeez! Mr Ebberts coming to rescue for the zillion time.

That's exactly what I needed. If you got a dollar for each answer all over the internet you'd be a billionaire.

Thank you very very much Sir.

Appreciated!

Participant
November 16, 2023

Zillionaire if my calculations are correct;P