/* * Copyright (c) Contributors to the Open 3D Engine Project * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #include "LmbrCentral_precompiled.h" #include "EditorAudioEnvironmentComponent.h" #include #include namespace LmbrCentral { //========================================================================= void EditorAudioEnvironmentComponent::Reflect(AZ::ReflectContext* context) { auto serializeContext = azrtti_cast(context); if (serializeContext) { serializeContext->Class() ->Version(1) ->Field("Environment name", &EditorAudioEnvironmentComponent::m_defaultEnvironment) ; if (auto editContext = serializeContext->GetEditContext()) { editContext->Class("Audio Environment", "The Audio Environment component provides access to features of the Audio Translation Layer (ATL) environments to apply environmental effects such as reverb or echo") ->ClassElement(AZ::Edit::ClassElements::EditorData, "") ->Attribute(AZ::Edit::Attributes::Category, "Audio") ->Attribute(AZ::Edit::Attributes::Icon, "Icons/Components/AudioEnvironment.svg") ->Attribute(AZ::Edit::Attributes::ViewportIcon, "Icons/Components/Viewport/AudioEnvironment.png") ->Attribute(AZ::Edit::Attributes::AppearsInAddComponentMenu, AZ_CRC("Game", 0x232b318c)) ->Attribute(AZ::Edit::Attributes::AutoExpand, true) ->Attribute(AZ::Edit::Attributes::HelpPageURL, "https://docs.o3de.org/docs/user-guide/components/reference/audio-environment/") ->DataElement("AudioControl", &EditorAudioEnvironmentComponent::m_defaultEnvironment, "Default Environment", "Name of the default ATL Environment control to use") ; } } } //========================================================================= EditorAudioEnvironmentComponent::EditorAudioEnvironmentComponent() { m_defaultEnvironment.m_propertyType = AzToolsFramework::AudioPropertyType::Environment; } //========================================================================= void EditorAudioEnvironmentComponent::BuildGameEntity(AZ::Entity* gameEntity) { gameEntity->CreateComponent(m_defaultEnvironment.m_controlName); } } // namespace LmbrCentral