MiniAudioPlaybackComponentConfig.cpp 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #include "MiniAudioPlaybackComponentConfig.h"
  9. #include <AzCore/Asset/AssetSerializer.h>
  10. namespace MiniAudio
  11. {
  12. void MiniAudioPlaybackComponentConfig::Reflect(AZ::ReflectContext* context)
  13. {
  14. if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
  15. {
  16. serializeContext->Class<MiniAudioPlaybackComponentConfig>()
  17. ->Version(4)
  18. ->Field("Autoplay", &MiniAudioPlaybackComponentConfig::m_autoplayOnActivate)
  19. ->Field("Sound", &MiniAudioPlaybackComponentConfig::m_sound)
  20. ->Field("Volume", &MiniAudioPlaybackComponentConfig::m_volume)
  21. ->Field("Auto-follow", &MiniAudioPlaybackComponentConfig::m_autoFollowEntity)
  22. ->Field("Loop", &MiniAudioPlaybackComponentConfig::m_loop)
  23. ->Field("Spatialization", &MiniAudioPlaybackComponentConfig::m_enableSpatialization)
  24. ->Field("Fixed Direction", &MiniAudioPlaybackComponentConfig::m_fixedDirection)
  25. ->Field("Direction", &MiniAudioPlaybackComponentConfig::m_direction)
  26. ->Field("Attenuation Model", &MiniAudioPlaybackComponentConfig::m_attenuationModel)
  27. ->Field("Directional Attenuation Factor", &MiniAudioPlaybackComponentConfig::m_directionalAttenuationFactor)
  28. ->Field("Min Distance", &MiniAudioPlaybackComponentConfig::m_minimumDistance)
  29. ->Field("Max Distance", &MiniAudioPlaybackComponentConfig::m_maximumDistance)
  30. ->Field("Inner Cone Angle", &MiniAudioPlaybackComponentConfig::m_innerAngleInDegrees)
  31. ->Field("Outer Cone Angle", &MiniAudioPlaybackComponentConfig::m_outerAngleInDegrees)
  32. ->Field("Outer Volume", &MiniAudioPlaybackComponentConfig::m_outerVolume);
  33. }
  34. }
  35. } // namespace MiniAudio