When you look into a body of dirty water objects fade into the murky depth. As objects get deeper and deeper down they appear to become darker and take on the colour of the murk. In this photograph the water is very murky from the clay, reducing the visibility to less than a foot depth. The water, fallen branches, sticks and fish take on the dull colour of the clay.
To create this effect inside Carrara we have Absorption and in-scattering in the Transparency shader channel. Within the set Attenuation distance the transparency is gradually ‘turned off’ to return only a black colour from that depth – that is when the Absorption channel is a Value set to 100%. Anything deeper in the water than the Attenuation distance returns black – thus adding nothing to the final shading result. I’ve used a shader for the water following the old rule that color, transparency and reflection should have their total value add up to 100%. The Fresnel effect will switch over between using more reflection at the shallow angle and more transparency when looking directly down.
This close up shows the same scene with the Absorption turned ON in the LEFT side and turned OFF on the RIGHT side. Without the absorption the objects in the murk become clearly visible – including the shadows on the bottom of the lake.
So next what if we want to put the camera under the water ? We still get the ray-traced colour effect on the objects seen through the surface above the water but without using Distance Fog or changing the whole Scene Atmosphere it doesn’t look like we are under the murky water at all.
If we change the Scene Atmosphere from the Realistic Sky to use Distance Fog then we’ll get something like the desired effect but in doing so loose the view of the sky and anything out of the water. The effect of the underwater murk needs to stop at the surface of the water and interact with it for a better result. Here is the same scene using Distance Fog but with a radius of 10ft rather than 1ft so we can still see what is going on.
Problems will arise If we want to use the same scene in smooth animation. We can key frame switch some of the effects but we can’t switch the between Distance Fog and Realistic Sky dynamically. Layering effects, multi-layer rendering would offer some solutions with existing technology.
To achieve this and other effects I’ve been making the Murky Volume plugin. This is a render of the same scene underwater using the plugin. The effect is similar to the Distance Fog but it interacts with the surface. Again the visibility has been extended to 10ft in order to see something. Where the view is looking directly up through the water we can now see the sky and foliage clearly.