/* * 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 #include #include namespace AZ { namespace Render { void DeferredFogComponentConfig::Reflect(ReflectContext* context) { if (auto serializeContext = azrtti_cast(context)) { serializeContext->Class() ->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 #include #include #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 #include #include #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 #include #include #undef COPY_TARGET } } // namespace Render } // namespace AZ