I have 11 layers. For my biggest landscape with tess enabled i have around 20K shader compiling. On 4 components (much landscape comps deleted) without tess enabled I have around 350, when I enabled tess, i have around 1000.
Well, it is a bit advanced here.
For example, I use one layer to heightblend stones into sand. The painted area is where rocks go inside sand and popup nicely.
Another one is mixing variation of rocks.
Another one for storing local heights (from World Machine) and use that info to select either top mountains or footer mountains.
I have around 4 a 5 layer that really paint areas cover with either rocks, pebbles, soil etc. (so called nature layers)
I also have a layer that controls how much displaced areas are. Some rocks are popping out more then the others.
Obviously, there is room for optimalisation, but I am married here with the current look and feel of the landscape. It all looks very organic and nature like now. x-)
btw: currently i have put al sample nodes into one material function. If I replace all sample nodes with a constant node ZERO, so basically no layer is used anymore I stil get a huge compile times.
Feels like the layers don’t really contribute to compiling times. But not sure here. Worth mentioning that I also use triplaner setup and quite a few textures.