diff --git a/OptiScaler.ini b/OptiScaler.ini index 9a7f67b3..f84fe399 100644 --- a/OptiScaler.ini +++ b/OptiScaler.ini @@ -20,6 +20,7 @@ VulkanUpscaler=auto ; ------------------------------------------------------- ; Select the FG type to be used ; optifg - requires amd_fidelityfx_dx12.dll, upscaler inputs used for FSR FG +; requires libxess_fg.dll, libxell.dll and latest fakenvapi dll, upscaler inputs used for XeFG ; nukems - requires dlssg_to_fsr3_amd_is_better.dll, AMD/Intel GPU users need to add fakenvapi as well ; nofg, optifg, nukems - Default (auto) is nofg FGType=auto diff --git a/OptiScaler/Config.cpp b/OptiScaler/Config.cpp index 86fc7ee7..31bd663e 100644 --- a/OptiScaler/Config.cpp +++ b/OptiScaler/Config.cpp @@ -100,12 +100,16 @@ bool Config::Reload(std::filesystem::path iniPath) else if (lstrcmpiA(FGInputString.value().c_str(), "upscaler") == 0) FGInput.set_from_config(FGInput::Upscaler); else if (lstrcmpiA(FGInputString.value().c_str(), "nukems") == 0) + { FGInput.set_from_config(FGInput::Nukems); + FGOutput.set_from_config(FGOutput::Nukems); + } else if (lstrcmpiA(FGInputString.value().c_str(), "dlssg") == 0) FGInput.set_from_config(FGInput::DLSSG); } - if (auto FGOutputString = readString("FrameGen", "FGOutput"); FGOutputString.has_value()) + if (auto FGOutputString = readString("FrameGen", "FGOutput"); + FGInput.value_or_default() != FGInput::Nukems && FGOutputString.has_value()) { if (lstrcmpiA(FGOutputString.value().c_str(), "nofg") == 0) FGOutput.set_from_config(FGOutput::NoFG);