Very cool to see what you can do inside a browser. Check out Evan Wallace’s WebGL Water.

This project was an experiment in realtime water rendering with WebGL. The focus was on the rendering aspect, not on the simulation, so the behavior of the water isn’t that realistic. The water heightfield is simulated using a floating-point texture and the caustics are rendered using the GLSL derivative functions. ~ WebGL Water