summaryrefslogtreecommitdiff
path: root/indra/llaudio
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2024-02-06 01:26:53 +0200
committerAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2024-02-09 01:31:50 +0200
commit4cec3133197cd39efd607b82169a85f56c77aa68 (patch)
treed4b79a730b82c4b56896c0377e2c1ee091410ba9 /indra/llaudio
parent78dc1c872aa966de010ca94c4d7a651259679502 (diff)
SL-19585 Switch OpenAL's wind to float
Fixes wind being odly distorted
Diffstat (limited to 'indra/llaudio')
-rw-r--r--indra/llaudio/llaudioengine_openal.cpp2
-rw-r--r--indra/llaudio/llaudioengine_openal.h4
-rw-r--r--indra/llaudio/lllistener_openal.h1
3 files changed, 4 insertions, 3 deletions
diff --git a/indra/llaudio/llaudioengine_openal.cpp b/indra/llaudio/llaudioengine_openal.cpp
index 0a79614424..40d7988309 100644
--- a/indra/llaudio/llaudioengine_openal.cpp
+++ b/indra/llaudio/llaudioengine_openal.cpp
@@ -518,7 +518,7 @@ void LLAudioEngine_OpenAL::updateWind(LLVector3 wind_vec, F32 camera_altitude)
}
alBufferData(buffer,
- AL_FORMAT_STEREO16,
+ AL_FORMAT_STEREO_FLOAT32,
mWindGen->windGenerate(mWindBuf,
mWindBufSamples),
mWindBufBytes,
diff --git a/indra/llaudio/llaudioengine_openal.h b/indra/llaudio/llaudioengine_openal.h
index 562c96c794..c2dfad6a56 100644
--- a/indra/llaudio/llaudioengine_openal.h
+++ b/indra/llaudio/llaudioengine_openal.h
@@ -57,9 +57,9 @@ class LLAudioEngine_OpenAL : public LLAudioEngine
/*virtual*/ void updateWind(LLVector3 direction, F32 camera_altitude);
private:
- typedef S16 WIND_SAMPLE_T;
+ typedef F32 WIND_SAMPLE_T;
LLWindGen<WIND_SAMPLE_T> *mWindGen;
- S16 *mWindBuf;
+ F32 *mWindBuf;
U32 mWindBufFreq;
U32 mWindBufSamples;
U32 mWindBufBytes;
diff --git a/indra/llaudio/lllistener_openal.h b/indra/llaudio/lllistener_openal.h
index cb163b11a5..5ed99b0471 100644
--- a/indra/llaudio/lllistener_openal.h
+++ b/indra/llaudio/lllistener_openal.h
@@ -32,6 +32,7 @@
#include "AL/al.h"
#include "AL/alut.h"
+#include "AL/alext.h"
class LLListener_OpenAL : public LLListener
{