In video below, I first had created stills of stripes in Inkscape, 5 separate files with different thickness in stripes. Afterwards, I compiled them in Blender. Below is what I created, but this labour was very time-consuming. How do I simulate this transition with Animation Nodes?

enter image description here


We start by transforming a grid based on the transformation matrices resulted from a Linear Distribute Matrix node to get the bars. Then we evaluate the height of the bars at a sine interpolation to get the variable height pattern.

Node Tree

To create multiple families of bars that move at different times and have different widths. We loop over a float list, this float list is added to the height of bars and then the maximum with zero is taken so that negative results will become zero. The width of the bars is computed such that it increases linearly for each family of bars to reach the maximum width. The maximum width is the length of the distribution divided by the number of bars minus one. The input float list should be a decreasing float range that its starting point is a function of time.

Node Tree

This gives this result:


You can of course evaluate the time offset list at an interpolation to get some snappy movement. You can also bevel the output mesh to get the round edges you have in the reference.

| improve this answer | |
  • $\begingroup$ You are a genius and thank you for your answer plus the blend file. Btw, I bought your procedural normal map generator file at Blender Market yesterday. Great stuff. $\endgroup$ – Rita Geraghty stands by Monica Feb 8 '19 at 21:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.