Fluid dynamics in WebGL