Add automatic profile switching #1

Merged
Jordonbc merged 22 commits from Feature/GraphicsProfiles into Dev 2024-07-08 22:22:09 +01:00
2 changed files with 22 additions and 22 deletions
Showing only changes of commit a2d4452691 - Show all commits

View file

@ -58,27 +58,6 @@ TMap<FName, TMap<FName, FHLConfigValue>> UHarmonyLinkGraphics::_DefaultSettings
}}
};
UHarmonyLinkGraphics::UHarmonyLinkGraphics()
{
UE_LOG(LogHarmonyLink, Warning, TEXT("HarmonyLinkGraphics initialized."));
if (_INSTANCE != this)
{
if (_INSTANCE)
{
DestroySettings();
}
_INSTANCE = this;
}
AddToRoot();
FWorldDelegates::OnPostWorldInitialization.AddStatic(&UHarmonyLinkGraphics::OnPostWorldInitialization);
FWorldDelegates::OnPreWorldFinishDestroy.AddStatic(&UHarmonyLinkGraphics::OnWorldEnd);
Init();
}
UHarmonyLinkGraphics::~UHarmonyLinkGraphics()
{
UE_LOG(LogHarmonyLink, Verbose, TEXT("~UHarmonyLinkGraphics called."));
@ -276,6 +255,7 @@ UHarmonyLinkGraphics* UHarmonyLinkGraphics::GetSettings()
// Proceed to create a new singleton instance
_INSTANCE = NewObject<UHarmonyLinkGraphics>();
_INSTANCE->Init();
return _INSTANCE;
}
@ -353,6 +333,22 @@ void UHarmonyLinkGraphics::DestroySettings()
void UHarmonyLinkGraphics::Init()
{
UE_LOG(LogHarmonyLink, Warning, TEXT("HarmonyLinkGraphics initialized."));
if (_INSTANCE != this)
{
if (_INSTANCE)
{
DestroySettings();
}
_INSTANCE = this;
}
AddToRoot();
FWorldDelegates::OnPostWorldInitialization.AddStatic(&UHarmonyLinkGraphics::OnPostWorldInitialization);
FWorldDelegates::OnPreWorldFinishDestroy.AddStatic(&UHarmonyLinkGraphics::OnWorldEnd);
UE_LOG(LogHarmonyLink, Log, TEXT("Init called."));
if (!HarmonyLinkLib::HL_Init())
@ -650,6 +646,11 @@ void UHarmonyLinkGraphics::OnWorldEnd(UWorld* World)
UE_LOG(LogHarmonyLink, Error, TEXT("World Already destroyed"))
return;
}
if (!World->IsGameWorld())
{
return;
}
if(World->GetTimerManager().TimerExists(_TickTimerHandle))
{

View file

@ -22,7 +22,6 @@ class HARMONYLINK_API UHarmonyLinkGraphics : public UBlueprintFunctionLibrary
GENERATED_BODY()
public:
UHarmonyLinkGraphics();
virtual ~UHarmonyLinkGraphics() override;
UPROPERTY(BlueprintAssignable)