Is it possible to shift faces using a square loop? Is there a better way to accomplish the animation that is below, using Blender

I made an animation in Octave of what I'm trying to accomplish in blender (since blender has much better graphical options I would like to convert it over)

animation of square loops

Example: of a 5 by 6 array

First "square" loop (which follows the green dot 18 shift increments are needed to complete 1 "square" loop cycle) 1 2 3 4 5 6 12 18 24 30 29 28 27 26 25 19 13 7

Second "square" loop (which follows the yellow dot 10 shift increments are needed to complete 1 "square" loop cycle) 8 9 10 11 17 23 22 21 20 14

Third "square" loop (which follows the orange dot 2 shift increments are needed to complete 1 "square" loop cycle) 15 16

Static image and start of loop

Static image

Ps: I'm using Blender 2.79b on Ubuntu 18.04 64bit

  • $\begingroup$ Is that supposed to be specific to 5x6? Which kind of rendering do you expect (numbers, other)? $\endgroup$ – lemon Jul 15 '19 at 20:35
  • $\begingroup$ @lemon Yes that is specific to a 5x6. The rendering of the numbers and grid lines along with some sort of way to show the direction the loops are travelling . I used color dots to show the direction in the animation above because that's really all I knew how to use in Octave. $\endgroup$ – Rick T Jul 16 '19 at 0:23
  • $\begingroup$ Not sure I fully understand what you are trying to do, but sounds like the job for Animation Nodes addon, but you might get away with particle systems or duplis $\endgroup$ – Duarte Farrajota Ramos Jul 16 '19 at 12:35
  • $\begingroup$ @DuarteFarrajotaRamos I'm trying to create the same animation that is above using Blender. $\endgroup$ – Rick T Jul 16 '19 at 12:54
  • 1
    $\begingroup$ OK, I finally think I got what is happening in the image, sort of like a "snake game" from old Nokia phones. There is one number sequence moving on the outside loop of squares, then another on the inner one, and one more in the center right? Well worst case scenario you can do this in Blender manually animating the squares, the challenge is finding a smarter way to do it more automatically $\endgroup$ – Duarte Farrajota Ramos Jul 16 '19 at 14:49

enter image description here

You could probably do this easily with a Follow Curve constraint on a bunch of plane objects.

Create a simple square mesh with desired dimensions (example $2$ x $2$)

Create a rectangular Bezier Curve object that has an exact $5$ x $4$ squares in dimensions (for squares of $2$ units you get $10$ x $8$), minus one square length in each direction than your 6 x 5 grid so the line axis fits the squares exactly by their center points.

enter image description here

Under Object Data properties Activate Path Animation and set it for $18$ frames (its length in number of squares).

Now add a Follow Curve constraint to you plane, an pick the previously created curve.

Duplicate the plane without moving it, then under Follow Curve increase the Offset value to $-1$. Keep making copies of it until you fill the whole curve, progressively increasing the offset value by one unit.

Repeat the same process for a smaller curve inside the outer one, adjusting frame count for its length (in this case $10$).

You can then use your planes directly with whatever visuals you like, use dupligroups on said planes, or just model the shape after what you desire for each square directly in the plane mesh.

enter image description here

If you have precision troubles at the corners, increase curve resolution to improve accuracy.

| improve this answer | |

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.