aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2016-03-17 10:10:26 -0700
committerChris Robinson <[email protected]>2016-03-17 10:10:26 -0700
commitce575718ef495c3c146d7a1b443ce556014e057f (patch)
treef8482707b34b158a78a10634b55fc5aaaa098545 /OpenAL32
parent606402fff05b115bc8b4728f9444fa46ef7e5e35 (diff)
Store the effect's output buffer in the effect state
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alAuxEffectSlot.h3
-rw-r--r--OpenAL32/alAuxEffectSlot.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/OpenAL32/Include/alAuxEffectSlot.h b/OpenAL32/Include/alAuxEffectSlot.h
index 3f677fd1..2c9a83e5 100644
--- a/OpenAL32/Include/alAuxEffectSlot.h
+++ b/OpenAL32/Include/alAuxEffectSlot.h
@@ -15,6 +15,9 @@ struct ALeffectslot;
typedef struct ALeffectState {
const struct ALeffectStateVtable *vtbl;
+
+ ALfloat (*OutBuffer)[BUFFERSIZE];
+ ALuint OutChannels;
} ALeffectState;
struct ALeffectStateVtable {
diff --git a/OpenAL32/alAuxEffectSlot.c b/OpenAL32/alAuxEffectSlot.c
index b0dba25d..c80bab22 100644
--- a/OpenAL32/alAuxEffectSlot.c
+++ b/OpenAL32/alAuxEffectSlot.c
@@ -464,6 +464,8 @@ ALenum InitializeEffect(ALCdevice *Device, ALeffectslot *EffectSlot, ALeffect *e
SetMixerFPUMode(&oldMode);
ALCdevice_Lock(Device);
+ State->OutBuffer = Device->Dry.Buffer;
+ State->OutChannels = Device->Dry.NumChannels;
if(V(State,deviceUpdate)(Device) == AL_FALSE)
{
ALCdevice_Unlock(Device);