diff --git a/Source/GameBaseFramework/Private/Camera/GBFPlayerCameraManager.cpp b/Source/GameBaseFramework/Private/Camera/GBFPlayerCameraManager.cpp index 68a3b431..0807a182 100644 --- a/Source/GameBaseFramework/Private/Camera/GBFPlayerCameraManager.cpp +++ b/Source/GameBaseFramework/Private/Camera/GBFPlayerCameraManager.cpp @@ -66,7 +66,13 @@ void AGBFPlayerCameraManager::SetModifierStack( UGBFCameraModifierStack * modifi }, false ); - ModifierStack = modifier_stack; + UGBFCameraModifierStack * new_modifier_stack = nullptr; + if ( modifier_stack != nullptr ) + { + new_modifier_stack = DuplicateObject( modifier_stack, modifier_stack->GetOuter() ); + } + + ModifierStack = new_modifier_stack; ForEachCameraStackModifier( [ & ]( auto * modifier ) { modifier->AddedToCamera( this );