I’m trying to manage my 3D sound volume, and I guess the right way of doing this is by using FSOUND_Sample_SetMinMaxDistance(). In my case I’m using both sound samples that I’m playing via FSOUND_PlaySoundEx(), as well as streams via FSOUND_Stream_PlayEx().

I don’t see an equivalent thing to set the ‘min/max’ distance for streams.

So then I though I could manage the source volume myself via FSOUND_SetVolume(), but when I use it it doesn’t seem to be controlling the volume of the sound. Typically the sound is too quiet, and fades out too fast — even if I peg the FSOUND_SetVolume to 255.

So I’m guessing that the FSOUND_SetVolume is applied to the sound volume ontop of the 3D sound attenuation calculations… meaning I can make the sound less loud if I wanted to, but that’s not really what I’m trying to do here.

The bottom line is, I’d like there to be a global way of dealing with samples and streams in the regard of 3D volume management (such as min/max distance).

More often than not, my notions have been completely wrong when it comes to fmod. So I’m sure someone will tell me how wrong I am, and how to make it all better.