The most optimal would be to use solution 4. The reason for this is if you aren’t using the reverb (eg. you’re not in an area that requires reverb) you can mute the return bus. Muted buses will cause their effects to go idle. In the case of 1, 2, and 3, even if you have the effect set to 100% dry it will still be active as there is signal going into it.
You can use snapshots to control the mixer return’s fader.
It would be better to set the bus to -oodB in the normal mixer view, and use snapshots to increase volume. This way it’s muted without the need of a snapshot playing.
In a common game audio setting solution 4 works best also, because then multiple sound events can use and share the same reverb as a send effect. This is usually the most common case when multiple sounds are playing in the same space. And then you’ll only need one DSP instance for all the sound events.
Does muting a return track make any performance difference compared to just sending no audio to it? In our reverb system we have maybe 10 different reverbs on busses. As far as I understand effects are bypassed when they are silent. Is that correct, or would it help if we set the faders on inactive reverbs to to -∞ dbfs?