I'm working on a system in OpenAL that manages multiple audio sources, each with its own unique level of reverb. I want to reuse the same reverb effect preset per scene (for example, inside a cave, I would use the same reverb effect with the EFX_REVERB_PRESET_CAVE preset), but I want to update the reverb gain for each individual source differently. (For example, music and menu sounds should not have any reverb at all, whereas 3d sounds in the environment should have reverb, and be updated every tick).
How would I do that? The problem is that if I just keep a single reverb effect in an auxiliary slot as recommended by the AL FX documentation and apply it to all sources, then they will all get the same level of reverb. Is there a way to adjust the level of reverb effect (AL_REVERB_GAIN for example) per source?
It looks like there is a way to do this in XAudio, by using a single submix voice w/ a reverb effect applied to it, but adjusting the output matrix per voice that you send to that submix voice. But I can't figure out how to do it in OpenAL. Any help would be much appreciated, thanks.