Advanced water rendering

In 2017 I was asked to make a dirt water shader. I put together all the ideas that came to my mind in order to make it realistic. The list of features are:

  1. – Underwater pixels blurred according to depth
  2. – Moss creating volumetric shadows
  3. – Surface lighting using Subsurface scattering
  4. – Optical dispersion (aka chromatic aberration) depending on depth
  5. – Underwater volumetric shadows (used Fog Volume 3 for that)
  6. – Consistency of every effect at variable resolutions, distances and FOV values.
  7. – Surface normals animation using the flow map technique
  8. – Moss patches with variable height. Some percentage of them are on the surface and the other under surface