From c96d4cf785f2f1e0b4f806f7e8e71ed459b8ee8d Mon Sep 17 00:00:00 2001 From: FakeMichau <49685661+FakeMichau@users.noreply.github.com> Date: Fri, 5 Sep 2025 13:32:32 +0200 Subject: [PATCH] Prioritize warning about having to restart to apply XeFG flags --- OptiScaler/menu/menu_common.cpp | 42 +++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/OptiScaler/menu/menu_common.cpp b/OptiScaler/menu/menu_common.cpp index 01da7f1a..9893d2a4 100644 --- a/OptiScaler/menu/menu_common.cpp +++ b/OptiScaler/menu/menu_common.cpp @@ -75,10 +75,19 @@ static std::vector splashText = { "May the coping commence...", "Thanks nitec, back to you nitec", "Tested and approved by By-U", "0.8 was an inside job", - "", "FSR4 DP4a wenETA, AMD plz", "OptiCopers, assemble!", - "The Way It's Meant To Be Upscaled" }; + "The Way It's Meant To Be Upscaled", + "Your game may even not crash today", + "Expanded and Enhanced", + "It's only my 5th crash today", + "Latency with FG? But I have good internet", + "Console peasants can't do that", + "Hope you don't have a good eyesight", + "Such an aggressive upscaling? A bold move", + "I almost don't feel the input lag", + "And that's how you get to 60 FPS", + "" }; void MenuCommon::ShowTooltip(const char* tip) { @@ -3052,23 +3061,30 @@ bool MenuCommon::RenderMenu() } auto fgOutput = reinterpret_cast(State::Instance().currentFG); - if (fgOutput && Config::Instance()->FGXeFGDepthInverted.value_or_default() != - fgOutput->IsInvertedDepth() || - Config::Instance()->FGXeFGJitteredMV.value_or_default() != fgOutput->IsJitteredMVs() || - Config::Instance()->FGXeFGHighResMV.value_or_default() == fgOutput->IsLowResMV()) + const bool restartNeeded = + fgOutput && + (Config::Instance()->FGXeFGDepthInverted.value_or_default() != + fgOutput->IsInvertedDepth() || + Config::Instance()->FGXeFGJitteredMV.value_or_default() != fgOutput->IsJitteredMVs() || + Config::Instance()->FGXeFGHighResMV.value_or_default() == fgOutput->IsLowResMV()); + + if (restartNeeded) { ImGui::TextColored(ImVec4(1.f, 0.8f, 0.f, 1.f), "Restart the game to apply correct XeFG settings"); } + else + { + if (!correctMVs) + ImGui::TextColored(ImVec4(1.f, 0.f, 0.f, 1.f), + "Requires disabling dilated motion vectors"); - if (!correctMVs) - ImGui::TextColored(ImVec4(1.f, 0.f, 0.f, 1.f), "Requires disabling dilated motion vectors"); + if (State::Instance().SCExclusiveFullscreen) + ImGui::TextColored(ImVec4(1.f, 0.f, 0.f, 1.f), "Borderless display mode required"); - if (State::Instance().SCExclusiveFullscreen) - ImGui::TextColored(ImVec4(1.f, 0.f, 0.f, 1.f), "Borderless display mode required"); - - if (State::Instance().isHdrActive) - ImGui::TextColored(ImVec4(1.0f, 0.647f, 0.0f, 1.f), "XeFG only supports HDR10"); + if (State::Instance().isHdrActive) + ImGui::TextColored(ImVec4(1.0f, 0.647f, 0.0f, 1.f), "XeFG only supports HDR10"); + } ImGui::BeginDisabled(!correctMVs || State::Instance().SCExclusiveFullscreen);