target_chan->master_vol = vol;
target_chan->entnum = entnum;
target_chan->entchannel = entchannel;
- SND_Spatialize(target_chan);
+ SND_Spatialize(target_chan, false);
if (!target_chan->leftvol && !target_chan->rightvol)
return; // not audible at all
ss->dist_mult = (attenuation/64) / sound_nominal_clip_dist;
ss->end = paintedtime + sc->length;
- SND_Spatialize (ss);
+ SND_Spatialize (ss, true);
}
{
if (!ch->sfx)
continue;
- SND_Spatialize(ch, i > MAX_DYNAMIC_CHANNELS + NUM_AMBIENTS); // respatialize channel
+ SND_Spatialize(ch, i >= MAX_DYNAMIC_CHANNELS + NUM_AMBIENTS); // respatialize channel
if (!ch->leftvol && !ch->rightvol)
continue;
cvar_t bgmvolume = {CVAR_SAVE, "bgmvolume", "1"};
cvar_t volume = {CVAR_SAVE, "volume", "0.7"};
+cvar_t snd_staticvolume = {CVAR_SAVE, "snd_staticvolume", "1"};
qboolean snd_initialized = false;
{
Cvar_RegisterVariable(&bgmvolume);
Cvar_RegisterVariable(&volume);
+ Cvar_RegisterVariable(&snd_staticvolume);
}
void S_AmbientOff (void)
channel_t *SND_PickChannel(int entnum, int entchannel);
// spatializes a channel
-void SND_Spatialize(channel_t *ch);
+void SND_Spatialize(channel_t *ch, int isstatic);
// initializes cycling through a DMA buffer and returns information on it
qboolean SNDDMA_Init(void);