aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32/Include/alAuxEffectSlot.h
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2016-08-25 06:17:36 -0700
committerChris Robinson <[email protected]>2016-08-25 06:17:36 -0700
commita16739f7651afb7653387b1e79b2985058d76e90 (patch)
tree0e0071564da36bb70293f36541a295682e13868f /OpenAL32/Include/alAuxEffectSlot.h
parent4e4e597fa54cc3498ae28bea9c2684e1fee05389 (diff)
Properly defer effect slot changes
Note that this now also causes all playing sources to update when an effect slot is updated. This is a bit wasteful, as it should only need to re-update sources that are using the effect slot (and only when a relevant property is changed), but it's good enough. Especially with deferring since all playing sources are going to get updated on the process call anyway.
Diffstat (limited to 'OpenAL32/Include/alAuxEffectSlot.h')
-rw-r--r--OpenAL32/Include/alAuxEffectSlot.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/OpenAL32/Include/alAuxEffectSlot.h b/OpenAL32/Include/alAuxEffectSlot.h
index 363d2467..70fcac5c 100644
--- a/OpenAL32/Include/alAuxEffectSlot.h
+++ b/OpenAL32/Include/alAuxEffectSlot.h
@@ -88,6 +88,8 @@ struct ALeffectslotProps {
typedef struct ALeffectslot {
+ ALboolean NeedsUpdate;
+
ALfloat Gain;
ALboolean AuxSendAuto;
@@ -152,6 +154,7 @@ inline struct ALeffectslot *RemoveEffectSlot(ALCcontext *context, ALuint id)
ALenum InitEffectSlot(ALeffectslot *slot);
void DeinitEffectSlot(ALeffectslot *slot);
void UpdateEffectSlotProps(ALeffectslot *slot);
+void UpdateAllEffectSlotProps(ALCcontext *context);
ALvoid ReleaseALAuxiliaryEffectSlots(ALCcontext *Context);