Cool work

I like the scales and colors here, perhaps a bit too bright though. Looking forward to see your next version

Quote from: dandelO on January 29, 2010, 01:24:59 PM
You certainly can restrict water to only render where visible. Simply set the water shader to a default shader and use its opacity channel as a mask area.
I made an example file of this before, don't think it's uploaded here but it's at TG.org... http://www.terragen.org/index.php?topic=4043.msg36143#msg36143
That's the basic outline example .tgd. Greatly reduces render time. 
I'm afraid that during testing/designing this you missed something Martin.
I downloaded the latest two tgd's and took a look at the network...it simply cannot work this way, because:
You have a painted shader which is fed in the opacity channel of a default shader. Ok.
This default shader now produces 50% grey where the painted shader is drawn.
Now this 50% grey is fed into the surface layer's input.
This way, the default shader's color is not used in any way to blend/restrict/mask the water shader.
It's just not correctly connected to anything. The surface layer fully covers the color generated by the default shader.
The opacity generated does nothing this way.
The surface layer is put on top of the default shader's layer.
So the final layer on top of the water object is the surface layer with the water shader attached.
Result: the entire water-object is still being rendered.
I've tested both of your files by rendering it with your setup and by rendering it with bypassing your setup by attaching the water shader directly.
In both cases your setup took even a tiny bit longer because of the painted shader and default shader.
As far as I know making the object as small as possible is still the best optimization.
Cheers,
Martin