this is done with a shader which takes 16 points as control points and does a cubic interpolation inbetween. guess it was about 25 ribbons here. each ribbon is continuous.
it’ll take a while before publishing. the code isn’t clean yet
-strange, i thought, i already posted a reply 4 hours ago-
this pic is just ribbons with random points and curvature. so you can achieve similar results using line and bspline - but without shading.
or try with connecting more instances of curve phong shader to generate one longer ribbon with different curvature.
in case you don’t need to control the line exactly desaxis tentacle noise shader can do it as well.