Not a bad idea. The rain effect is already a clientsided box centered on the player's POV.
I cant remember the specific nature of the lag from rain blockers. But I do remember about the lag from static shapes and how I dealt with that. I believe it is likely a similar problem.
Static Shapes do not lag a server. They lag a client. You could throw 10000 static shapes on a dedicated server and it would not care. But the moment you send information on the existence of those shapes to a client, the client is going to have some serious problems. Even if the static shapes have basically no information attached to them.
So to fix this I used a SelectiveGhosting DLL to just- not send far away shapes to the client.
It used a system that arranged shapes in different areas into different groups, then trigger ghosting on/off on the different groups depending on the position of the player.
The shapes were grouped based on their position. In a kind of big set of 3D zones. The client would only recieve shapes from the nearest 18 zones.
I specifically didn't use container searches or raycasts, as Im told those kinds of searches lag when used en masse. Just positional data and big groups that could be updated when shapes are created or destroyed.
Anyway, a system like that would require a DLL on the server, but might fix the performance issues related to lots of physics zones used as rain blockers.
Because Im talking about ghosting, that reminds me of a glitch you can use without a DLL to prevent an object from being sent to new clients who join a server. Intangible walls and surprise hidden vehicles and such uwu.