1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- /*
- * Copyright (c) Contributors to the Open 3D Engine Project.
- * For complete copyright and license terms please see the LICENSE at the root of this distribution.
- *
- * SPDX-License-Identifier: Apache-2.0 OR MIT
- *
- */
- #include <AtomLyIntegration/CommonFeatures/ScreenSpace/DeferredFogComponentConfig.h>
- #include <AzCore/Serialization/SerializeContext.h>
- #include <AzCore/Serialization/EditContext.h>
- namespace AZ
- {
- namespace Render
- {
- void DeferredFogComponentConfig::Reflect(ReflectContext* context)
- {
- if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
- {
- serializeContext->Class<DeferredFogComponentConfig, ComponentConfig>()
- ->Version(1)
- // Auto-gen serialize context code...
- #define SERIALIZE_CLASS DeferredFogComponentConfig
- #define AZ_GFX_COMMON_PARAM(ValueType, Name, MemberName, DefaultValue) \
- ->Field(#Name, &SERIALIZE_CLASS::MemberName) \
- #include <Atom/Feature/ParamMacros/MapParamCommon.inl>
- #include <Atom/Feature/ScreenSpace/DeferredFogParams.inl>
- #include <Atom/Feature/ParamMacros/EndParams.inl>
- #undef SERIALIZE_CLASS
- ->Field("IsEnabled", &DeferredFogComponentConfig::m_enabled)
- ->Field("UseNoiseTextureShaderOption", &DeferredFogComponentConfig::m_useNoiseTextureShaderOption)
- ->Field("EnableFogLayerShaderOption", &DeferredFogComponentConfig::m_enableFogLayerShaderOption)
- ;
- }
- }
- void DeferredFogComponentConfig::CopySettingsFrom(DeferredFogSettingsInterface* settings)
- {
- if (!settings)
- {
- return;
- }
- #define COPY_SOURCE settings
- #define AZ_GFX_COMMON_PARAM(ValueType, Name, MemberName, DefaultValue) \
- MemberName = COPY_SOURCE->Get##Name(); \
- #include <Atom/Feature/ParamMacros/MapParamCommon.inl>
- #include <Atom/Feature/ScreenSpace/DeferredFogParams.inl>
- #include <Atom/Feature/ParamMacros/EndParams.inl>
- #undef COPY_SOURCE
- }
- void DeferredFogComponentConfig::CopySettingsTo(DeferredFogSettingsInterface* settings)
- {
- if (!settings)
- {
- return;
- }
- #define COPY_TARGET settings
- #define AZ_GFX_COMMON_PARAM(ValueType, Name, MemberName, DefaultValue) \
- COPY_TARGET->Set##Name(MemberName); \
- #include <Atom/Feature/ParamMacros/MapParamCommon.inl>
- #include <Atom/Feature/ScreenSpace/DeferredFogParams.inl>
- #include <Atom/Feature/ParamMacros/EndParams.inl>
- #undef COPY_TARGET
- }
- } // namespace Render
- } // namespace AZ
|