How to create an underwater scene in cycles?
I use a plain cube for a water body since I do not animate these underwater scenes, only the camera movement above and underwater. The hardest thing was to get the water to look good underwater. I create technical presentations above and underwater and used these settings for the water material. This material is good for Fluid simulations as well. Underwater visibility is about 40m or ~44 yards in a clean water and tropical environment. For ocean floor you can use the terrain creator or a Mesh>Plane with surface and displacement modifiers and put it within your water cube.


At node with the mark 1 adjust the water colour.
At nodes with the mark 2 set the underwater visibility with the Value
node and colour with the RGB node. This setting will also determine
the colour of the water based on its depth when viewed from above.
See effects of these settings on the images further below
demonstrating this.
At nodes with the mark 3 set the roughness of the surface of the
water. Demo images further below.


Tweak the settings to your needs at those node sections.

Here is the water material broken into 2 sections, left and right, so you can see the nodes clearly




With the water node settings on the images, here is a sample image which is a small marina and on the top left you can see the entrance.


The image below is exactly the same camera position but underwater. Note that you cannot see the entrance very well because of the limited visibility underwater. If you SCUBA dive then you know what I am talking about. This is a sunny scene in tropical, high visibility water with rather clear shadows on the sea floor.
 

I use the same nodes in Blender V2.79b and V2.80.
I forgot to mention that this does not deal with sun rays penetrating the water. 

To demonstrate the volume or the underwater visibility control at nodes 2, that are connected to the Volume input of the Material Output node, here are the following images. In this scene the sea floor starts to come up at more than 300 meters or 330 yards from the camera. A shiny red sphere is placed under water nearly 300 meters away. Camera depth of field is not setup so the effects can be observed better.

Underwater with the camera about 30 m or 33 yards away from the catamaran hulls and the volume control nodes are connected. Note: you cannot see the red sphere in the distance between the hulls, which is located there with this camera view, and that is how it is supposed to be.


Below is the same camera view but the volume control nodes are disconnected from the Material Output node. The red sphere and all the rocks on the sea floor are not supposed to be visible at this distance, ~300m.


Below is the same cove viewed from above, but without the boat, volume control nodes are connected. Towards the left of the image the depth gets bigger, but gradually, hence it is getting a darker shade of water.


The same camera view but with the volume control nodes disconnected. The rocks on the sea floor are clearly visible. It makes it look as the water is really shallow when it is not, hence we use those volume control nodes.