How to make a generated texture follow a Bezier curve? I'm animating a representation of fluid flow by using a generated Wave texture, animating the mapping to make the rings travel. This works well for a cylindrical object; but for a bent tube, the rings get distorted, as I'm (simplistically) animating along the object's y value (which works fine for the cylinder).

Here's the textured tube and the material nodes:


The tube is a Bezier curve with a circle used as a bevel object. I can convert to a mesh if need be, but I'd prefer not to.

Is there a mapping that would cause the texture to propagate along the Bezier, with one animatable parameter that will cause the rings to travel along the tube?
Thanks for the pointer, Carlo. Yes, enabling "use UV for mapping" helped; but I also needed to change from Object to UV as the input to the mapping node:


Animating the Y parameter of the mapping node makes the rings travel along the tube as desired. Thanks!