aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Alc/ALu.c6
-rw-r--r--Alc/mixer.c6
-rw-r--r--OpenAL32/Include/alSource.h10
3 files changed, 11 insertions, 11 deletions
diff --git a/Alc/ALu.c b/Alc/ALu.c
index 79c18254..f3482ade 100644
--- a/Alc/ALu.c
+++ b/Alc/ALu.c
@@ -230,7 +230,7 @@ ALvoid CalcNonAttnSourceParams(ALsource *ALSource, const ALCcontext *ALContext)
break;
}
- ALSource->Params.WetGains[i] = WetGain[i] * ListenerGain;
+ ALSource->Params.Send[i].WetGain = WetGain[i] * ListenerGain;
}
/* Update filter coefficients. Calculations based on the I3DL2
@@ -494,7 +494,7 @@ ALvoid CalcSourceParams(ALsource *ALSource, const ALCcontext *ALContext)
if(!Slot || Slot->effect.type == AL_EFFECT_NULL)
{
- ALSource->Params.WetGains[i] = 0.0f;
+ ALSource->Params.Send[i].WetGain = 0.0f;
WetGainHF[i] = 1.0f;
continue;
}
@@ -544,7 +544,7 @@ ALvoid CalcSourceParams(ALsource *ALSource, const ALCcontext *ALContext)
WetGainHF[i] *= ALSource->Send[i].WetFilter.GainHF;
break;
}
- ALSource->Params.WetGains[i] = WetGain[i] * ListenerGain;
+ ALSource->Params.Send[i].WetGain = WetGain[i] * ListenerGain;
}
// Apply filter gains and filters
diff --git a/Alc/mixer.c b/Alc/mixer.c
index 7b525bec..35848a19 100644
--- a/Alc/mixer.c
+++ b/Alc/mixer.c
@@ -163,11 +163,11 @@ static __inline ALfloat cos_lerp16(ALfloat val1, ALfloat val2, ALint frac)
Source->Send[out].Slot->effect.type == AL_EFFECT_NULL) \
continue; \
\
- WetSend = Source->Params.WetGains[out]; \
WetBuffer = Source->Send[out].Slot->WetBuffer; \
WetClickRemoval = Source->Send[out].Slot->ClickRemoval; \
WetPendingClicks = Source->Send[out].Slot->PendingClicks; \
WetFilter = &Source->Params.Send[out].iirFilter; \
+ WetSend = Source->Params.Send[out].WetGain; \
\
pos = DataPosInt; \
frac = DataPosFrac; \
@@ -304,11 +304,11 @@ static __inline ALfloat cos_lerp16(ALfloat val1, ALfloat val2, ALint frac)
Source->Send[out].Slot->effect.type == AL_EFFECT_NULL) \
continue; \
\
- WetSend = Source->Params.WetGains[out]; \
WetBuffer = Source->Send[out].Slot->WetBuffer; \
WetClickRemoval = Source->Send[out].Slot->ClickRemoval; \
WetPendingClicks = Source->Send[out].Slot->PendingClicks; \
WetFilter = &Source->Params.Send[out].iirFilter; \
+ WetSend = Source->Params.Send[out].WetGain; \
\
pos = DataPosInt; \
frac = DataPosFrac; \
@@ -453,7 +453,7 @@ static __inline ALfloat cos_lerp16(ALfloat val1, ALfloat val2, ALint frac)
WetClickRemoval = Source->Send[out].Slot->ClickRemoval; \
WetPendingClicks = Source->Send[out].Slot->PendingClicks; \
WetFilter = &Source->Params.Send[out].iirFilter; \
- WetSend = Source->Params.WetGains[out]; \
+ WetSend = Source->Params.Send[out].WetGain; \
\
pos = DataPosInt; \
frac = DataPosFrac; \
diff --git a/OpenAL32/Include/alSource.h b/OpenAL32/Include/alSource.h
index 6d01c9fd..40673c00 100644
--- a/OpenAL32/Include/alSource.h
+++ b/OpenAL32/Include/alSource.h
@@ -84,17 +84,17 @@ typedef struct ALsource
// Current target parameters used for mixing
ALboolean NeedsUpdate;
struct {
- ALfloat DryGains[OUTPUTCHANNELS];
- ALfloat WetGains[MAX_SENDS];
ALint Step;
+ ALfloat DryGains[OUTPUTCHANNELS];
+ FILTER iirFilter;
+ ALfloat history[OUTPUTCHANNELS*2];
+
struct {
+ ALfloat WetGain;
FILTER iirFilter;
ALfloat history[OUTPUTCHANNELS];
} Send[MAX_SENDS];
-
- FILTER iirFilter;
- ALfloat history[OUTPUTCHANNELS*2];
} Params;
ALvoid (*Update)(struct ALsource *self, const ALCcontext *context);