diff options
author | Chris Robinson <[email protected]> | 2009-10-21 14:25:54 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2009-10-21 14:25:54 -0700 |
commit | 8dbac9c0bdd9bf45a9a3c871c59766b3693d8d59 (patch) | |
tree | 5288b3234f0eec789151895a78f321c014fa457f /OpenAL32/Include/alSource.h | |
parent | 47b8510b0cdb8a79a66606459e3fd4cbe7a673b6 (diff) |
Store the calculated source parameters in the source struct
Diffstat (limited to 'OpenAL32/Include/alSource.h')
-rw-r--r-- | OpenAL32/Include/alSource.h | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/OpenAL32/Include/alSource.h b/OpenAL32/Include/alSource.h index 1002d077..8c6ba813 100644 --- a/OpenAL32/Include/alSource.h +++ b/OpenAL32/Include/alSource.h @@ -66,8 +66,6 @@ typedef struct ALsource struct { struct ALeffectslot *Slot; ALfilter WetFilter; - FILTER iirFilter; - ALfloat history[2]; } Send[MAX_SENDS]; ALboolean DryGainHFAuto; @@ -75,18 +73,10 @@ typedef struct ALsource ALboolean WetGainHFAuto; ALfloat OuterGainHF; - FILTER iirFilter; - ALfloat history[OUTPUTCHANNELS*2]; - ALfloat AirAbsorptionFactor; - ALfloat RoomRolloffFactor; - ALfloat DopplerFactor; - // Index to itself - ALuint source; - ALint lOffset; ALint lOffsetType; @@ -98,6 +88,24 @@ typedef struct ALsource ALfloat WetGains[MAX_SENDS]; ALboolean FirstStart; + // Current target parameters used for mixing + struct { + ALfloat DryGains[OUTPUTCHANNELS]; + ALfloat WetGains[MAX_SENDS]; + ALfloat Pitch; + + struct { + FILTER iirFilter; + ALfloat history[2]; + } Send[MAX_SENDS]; + + FILTER iirFilter; + ALfloat history[OUTPUTCHANNELS*2]; + } Params; + + // Index to itself + ALuint source; + struct ALsource *next; } ALsource; |