3
$\begingroup$

I've got a plane which is displaced by a voronoi texture like this.enter image description here

And know I want to give each vertex a looping animation where the vertex slides up and down on his Z-axis (looping). I want each vertex to have a random animation offset. What's my approach? Python scripting?

Thanks in advance!

$\endgroup$

4 Answers 4

4
$\begingroup$

There are multiple ways to do it, the simplest I can come up is to set an empty as object in the displace modifier, animate the empty and make the first and last frame the same, then make "cyclic" extrapolation of the animation If you need add randomness, you can consider the noise f-curve modifier

First example with 3 keyframes and the noise modifier

The second example use Make Cyclic f-modifier and only two keyframe

Not sure why in the second example the loop works only twice if someone knows please advice, either it's a bug or it's a matter of mapping (I'm to tired now to debug) example cyclic noise using keyframe

$\endgroup$
4
  • $\begingroup$ discard the double frame in the animated gif it is cyclic! $\endgroup$ Mar 16, 2016 at 0:26
  • $\begingroup$ If you wish to add more of a random effect, animate your empty in a circular motion, and rotate/scale it about it own axis during that loop to add more variation. The only thing lacking in this example is that it looks like a fast-forward/rewind loop where the circular animation would solve the rewind effect. just make sure that it starts and stops in the same Location/Rotation/Scale and Cyclic works very well. I will post a supporting answer w/ a supporting Blend. $\endgroup$
    – Rick Riggs
    Mar 16, 2016 at 1:17
  • $\begingroup$ I'm using a voronoi texture instead of a noise texture but when I animate my empty the interpolation of the vertices is very jagged and not smooth like yours. $\endgroup$ Mar 16, 2016 at 21:44
  • $\begingroup$ note that I've use a subdivision surface after the displacement. Play also with the strength and ramp color values $\endgroup$ Mar 17, 2016 at 15:32
2
$\begingroup$

Please don't mark this as the answer - If this helped you, please give diramazioni the credit, and please see my comment as to what is going on here as a response to his post.

This is just to support his initial concept.

enter image description here

$\endgroup$
1
  • $\begingroup$ @RickRIggs instead of creating a new answer consider editing existing ones. It's OK to edit if you feel you can enhance someone else's post. $\endgroup$
    – user1853
    Mar 16, 2016 at 18:24
0
$\begingroup$

The way I would do it is apply the displace modifier, then hook each vertex to an empty and use a Noise f-curve modifier to displace each empty by a random amount. With a lot of vertices that would take a lot of setting up so maybe someone has a more automatic approach as a solution.

enter image description here

$\endgroup$
3
  • $\begingroup$ that's what the object option it's for in the displace modifier, no need to use a hook for each vertex, one empty will do the trick $\endgroup$ Mar 16, 2016 at 0:00
  • 1
    $\begingroup$ I think OP wants each vertex to have its own random movement. How would that work with your method? $\endgroup$
    – Xtremity
    Mar 16, 2016 at 0:02
  • $\begingroup$ see the example provided below $\endgroup$ Mar 16, 2016 at 0:26
0
$\begingroup$

The best way is to use Animation Nodes. You have to copy that mesh to a new object, and iterate trought the different vertex adding the result of a vector wiggle, with a different seed according to the index of each vertex.

$\endgroup$
1
  • $\begingroup$ Can you provide a working example? $\endgroup$ May 17, 2019 at 17:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .