Renderpasses question

In a rich scene with lots of elements (water, buildings, peoples, nature, ecc…) there is the possibility to have te need for some renderpasses.

Normally we have shadows, with a standard sea or ocean we have te waterRenderPass.

Well, If need some other things such as lakes, or simpy fountains, then mirrors and some other objects that might need shaders, how can I avoind to add a render pass for each one ?

since correct water rendering is dependant on the water positioning in conjunction with the camera position, you would have to make a reflection(and refraction etc) texture for every water instance. but you could probably make a class that could take several water instances and do the appropriate things now done in the waterrenderpass for each of them, for ease of use…