I found, somewhere, a small tidbit of information I wish I had found years earlier on creating fake volumetric mist. The method was to use the difference of the Z-depth of a scene without an arbitrary height control plane, and a scene with the control plane. I was able to replicate this in the compositor using render layers, and it came out to be a 360 degree renderable effect for large water scenes (think, Riven in 1997).
Excuse the sky colors on the third image, its a result of bad linear workflow and an overlay node…
The refractive effect of the water is also compositor based (thanks to a displace node).
I’d upload the blend, but it’s fairly large so here’s the node setup which should suffice.
The first render layer is the scene sans water. The second render layer is the scene with the water (with a shadeless mat to increase render time). The mask is then used to mix an RGB color of choice onto the first render layer, and a third render layer, containing only the reflective water (it casts no shadows and is not transparent, which is important) is overlayed onto the scene.