For a while now I’ve been using water in my Light Years Coast work. Initially, this was using simple reflective water. I then developed a technique that used a reflective plane (daylight water), with a refractive plane on top, the mesh of which was animated with sine waves.
Since early in this year, I have been following and mildly adapting the Tessendorf water simulation that has been created by the Unity3D community. This has enabled real-time believable rendering of ocean water, at varying scales. Recent additions to this have also included underwater rendering.