From f3ce2efdf2bb015f7963f129aba3b5ebce876e39 Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Thu, 1 Oct 2026 10:13:41 +0200 Subject: [PATCH] Minor adjustments to code #4186 --- Source/Engine/Audio/AudioBackend.h | 14 ++------------ Source/Engine/Audio/AudioSource.cpp | 5 +++++ Source/Engine/Audio/AudioSource.h | 2 -- Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp | 2 +- 4 files changed, 8 insertions(+), 15 deletions(-) diff --git a/Source/Engine/Audio/AudioBackend.h b/Source/Engine/Audio/AudioBackend.h index 981e9c34d..53b207854 100644 --- a/Source/Engine/Audio/AudioBackend.h +++ b/Source/Engine/Audio/AudioBackend.h @@ -5,7 +5,6 @@ #include "Config.h" #include "Types.h" #include "Engine/Core/Types/BaseTypes.h" -#include "AudioSource.h" /// /// The helper class for that handles active audio backend operations. @@ -103,17 +102,8 @@ public: class Source { public: - FORCE_INLINE static void SetState(AudioSource* source, AudioSource::States state) - { - if (source) - source->_state = state; - } - - FORCE_INLINE static void SetStreamingFirstChunk(AudioSource* source, int32 chunkIndex) - { - if (source) - source->_streamingFirstChunk = chunkIndex; - } + // Helper accessors for Audio Source playback restoring after audio device change + static void SetStreamingFirstChunk(AudioSource* source, int32 chunkIndex); FORCE_INLINE static uint32 Add(const AudioDataInfo& format, const Vector3& position, const Quaternion& orientation, float volume, float pitch, float pan, bool loop, bool spatial, float attenuation, float minDistance, float doppler) { diff --git a/Source/Engine/Audio/AudioSource.cpp b/Source/Engine/Audio/AudioSource.cpp index d50707ad8..8629da70e 100644 --- a/Source/Engine/Audio/AudioSource.cpp +++ b/Source/Engine/Audio/AudioSource.cpp @@ -12,6 +12,11 @@ #include "AudioBackend.h" #include "Audio.h" +void AudioBackend::Source::SetStreamingFirstChunk(AudioSource* source, int32 chunkIndex) +{ + source->_streamingFirstChunk = chunkIndex; +} + AudioSource::AudioSource(const SpawnParams& params) : Actor(params) , _velocity(Vector3::Zero) diff --git a/Source/Engine/Audio/AudioSource.h b/Source/Engine/Audio/AudioSource.h index f2ecb6729..00adc35e5 100644 --- a/Source/Engine/Audio/AudioSource.h +++ b/Source/Engine/Audio/AudioSource.h @@ -6,8 +6,6 @@ #include "Engine/Content/AssetReference.h" #include "AudioClip.h" -class AudioBackend; - /// /// Represents a source for emitting audio. Audio can be played spatially (gun shot), or normally (music). Each audio source must have an AudioClip to play - back, and it can also have a position in the case of spatial (3D) audio. /// diff --git a/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp b/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp index 6f3e851d0..501ebbb66 100644 --- a/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp +++ b/Source/Engine/Audio/OpenAL/AudioBackendOAL.cpp @@ -9,9 +9,9 @@ #include "Engine/Core/Collections/Dictionary.h" #include "Engine/Tools/AudioTool/AudioTool.h" #include "Engine/Engine/Units.h" +#include "Engine/Engine/Time.h" #include "Engine/Profiler/ProfilerCPU.h" #include "Engine/Profiler/ProfilerMemory.h" -#include "Engine/Engine/Time.h" #include "Engine/Audio/Audio.h" #include "Engine/Audio/AudioListener.h" #include "Engine/Audio/AudioSource.h"