Best non-simulation method for a seamless thin bamboo water stream loop?

Hello,

I am creating a fixed-camera meditation scene in Blender 5.2 and need a thin, continuous stream of water flowing from a bamboo spout into a stone bowl.

The final animation should be a seamless 10-second loop at 30 fps, rendered from frames 1–300, with frame 301 matching frame 1.

My current setup uses a narrow transparent water mesh with a Principled BSDF and animated Wave/Noise textures.

Current problems:

  • The stream looks like two bright edge lines
  • The center of the water is almost invisible
  • The stream does not look like a solid continuous flow
  • The apparent thickness changes during animation
  • The transition from the final frame back to the first frame is visible

My priority is a calm and stable stream for a meditation video, rather than a physically perfect fluid simulation.

I would prefer to avoid a full Mantaflow or FLIP simulation because this water effect needs to become a reusable master asset for multiple scenes.

Which approach would be most suitable?

  1. A camera-facing tapered plane with a looping shader
  2. A curve with animated UV coordinates
  3. Two scrolling procedural textures crossfaded into an exact loop
  4. A real-water video overlay mapped onto a plane
  5. Another shader or Geometry Nodes method

Ideally, the geometry would remain fixed while only subtle internal highlights or distortion move.

I have attached:

  • A screenshot of the current result
  • A screenshot of the complete material node setup
  • A short video showing the loop problem
  • A visual reference for the desired water stream

Any suggested node structure, material settings, or example .blend file would be greatly appreciated.

Thank you.

If you have a few bucks to spend, the Aquatique addon would be the easiest solution IMO.

Toplogically, this can be just one cylinder. I’d try drawing a curve for the stream itself and ending in a widened radius. Mesh it (curve to mesh). This last segment would make the water surface. Single it out and use it to handle the stream part and the surface part differently. For irregularities in the stream, vary radius with some noise and slide it around the curve length (spline parameter ->radius). For ripples, move points vertically instead (spline parameter ->positionZ).

Thank you, this curve-based approach sounds very suitable for my project.

To make sure I understand the setup correctly, would it be possible to share a simple Geometry Nodes layout, node screenshot, or minimal .blend example?

I am especially interested in:

  • converting the curve into a stable thin stream with Curve to Mesh
  • widening the final curve section into the water surface
  • moving Noise along the Spline Parameter to animate the radius
  • creating an exact 10-second seamless loop
  • separating the stream material from the ripple surface material

I am using Blender 5.2 with a fixed camera.

The goal is a very subtle and stable stream for a meditation scene, so only small surface irregularities are needed.

Thank you again for the helpful direction.

I am away from home without a laptop, unfortunately this is all I can do. You’d have to investigate further

For looping, you can use two noise textures, and blend between them on start and end of frame range. W value must be the same also to make the looping seamless