I'm making a series of explainer animations in Blender Render with freestyle and in one of the scenes I'd like to show a pipe going from one location to another and simulating a liquid flowing through it - toon style - perhaps something like this:


The red and blue would move along the pipe just to give the impression that there is movement rather than using real fluids.

I've looked at things like getting cylinders to follow the path but that gets extremely fiddly for longer animations where this is part of the background. Is there a quick fix in blender for this?

  • $\begingroup$ Like this? $\endgroup$ – Leander Jul 1 '18 at 13:21
  • $\begingroup$ @Leander - exactly like that! $\endgroup$ – Doodled Jul 1 '18 at 13:25

Using a curve to animate something along a curved shape is most likely the easiest option.

  1. Create a (bezier) curve. ⇧ ShiftA. Shape it.
    Useful operations include, Grab G, Rotate R, Scale S, Subdivide W > S, Delete X and changing the vector mode V.
    enter image description here
    Note, that the bezier curve's object center is at the origin for convenience.
  2. Create a segment of the pipe object. I created if from a cylinder ⇧ ShiftA. It is exactly 2 units wide. Since the object is going to follow the path later, I added some subdivision along its width with the loopcut tool ⎈ CtrlR.
    enter image description here
  3. Create two keyframes I. The first at frame 0 in my case and the second at frame 10. The translation between the two keyframes should be exactly the width of the object.
    Select the keyframes assign the vector interpolation V > Vector. Then make the motion repeat, by pressing ⇧ ShiftE > Make Cyclic in the graph editor.
    enter image description here
  4. Make sure the curves resolution is sufficient. Add an array modifier to the object followed by a curve modifier with the curve selected.
    enter image description here

As you can see, the motion along the curved gets repeated the amount of a segment, creating the illusion of a continuously moving shape.

enter image description here

If the extra amount of pipe is problematic, it could be remove with a boolean modifier. Howevery, the curve could also just shape in a direction which hides the pipe from the camera's view.

| 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.