I’ve tied a torus in a knot, and made it breath a rhythmic pulse. The surface of the knot is a fluid. Particles float around in the fluid and leak coloured ink, which swirls around delightfully in the liquid.
It runs in real time as my fluid simulation is very fast even at high resolution. The trick is to use the Perlin noise to generate a flow field that shifts the fluid around. The flow field itself is also used as a bump map to texture the surface.
Made with openFrameworks and GLSL.