diff --git a/OptiScaler.ini b/OptiScaler.ini index ce61bf74..0cb00377 100644 --- a/OptiScaler.ini +++ b/OptiScaler.ini @@ -640,7 +640,7 @@ FsrNonLinearPQ=auto ; Updates the DirectX 12 Agility SDK ; Enabling the use of FSR4 on Windows 10 in older titles like Cyberpunk 2077 -; You MUST copy D3D12_OptiScaler folder next to game's exe! +; You MUST copy D3D12_OptiScaler folder into the OptiScaler folder! ; true or false - Default (auto) is false FsrAgilitySDKUpgrade=auto diff --git a/OptiScaler/OptiScaler.vcxproj b/OptiScaler/OptiScaler.vcxproj index 9fd5c754..7f19050b 100644 --- a/OptiScaler/OptiScaler.vcxproj +++ b/OptiScaler/OptiScaler.vcxproj @@ -261,8 +261,8 @@ copy $(SolutionDir)external\FidelityFX-SDK-v2\docs\license.md $(SolutionDir)x64\ copy $(SolutionDir)OptiScaler.ini $(SolutionDir)x64\Release\a\ /Y copy $(SolutionDir)setup_windows.bat $(SolutionDir)x64\Release\a\ /Y copy $(SolutionDir)setup_linux.sh $(SolutionDir)x64\Release\a\ /Y -md $(SolutionDir)x64\Release\a\D3D12_Optiscaler\ -copy "$(SolutionDir)external\directx_agility_sdk\lib\*.dll" $(SolutionDir)x64\Release\a\D3D12_Optiscaler\ /Y +md $(SolutionDir)x64\Release\a\OptiScaler\D3D12_OptiScaler\ +copy "$(SolutionDir)external\directx_agility_sdk\lib\*.dll" $(SolutionDir)x64\Release\a\OptiScaler\D3D12_OptiScaler\ /Y copy "$(SolutionDir)external\directx_agility_sdk\LICENSE.txt" $(SolutionDir)x64\Release\a\Licenses\DirectX_LICENSE.txt /Y copy NUL "$(SolutionDir)x64\Release\a\!! EXTRACT ALL FILES TO GAME FOLDER !!" /Y diff --git a/OptiScaler/dllmain.cpp b/OptiScaler/dllmain.cpp index a17920e3..59ce15be 100644 --- a/OptiScaler/dllmain.cpp +++ b/OptiScaler/dllmain.cpp @@ -355,6 +355,7 @@ static void CheckWorkingMode() std::string filename = wstring_to_string(Util::DllPath().filename().wstring()); // .string() can crash std::string lCaseFilename(filename); std::filesystem::path pluginPath(Config::Instance()->PluginPath.value_or(L"plugins")); + auto optiDllPath = std::filesystem::path(Config::Instance()->MainDllPath.value()); for (size_t i = 0; i < lCaseFilename.size(); i++) lCaseFilename[i] = std::tolower(lCaseFilename[i]); @@ -897,7 +898,7 @@ static void CheckWorkingMode() if (d3d12AgilityModule == nullptr && Config::Instance()->FsrAgilitySDKUpgrade.value_or_default()) { - path = Util::ExePath().parent_path() / L"D3D12_Optiscaler" / L"D3D12Core.dll"; + path = optiDllPath / L"D3D12_OptiScaler" / L"D3D12Core.dll"; d3d12AgilityModule = NtdllProxy::LoadLibraryExW_Ldr(path.c_str(), NULL, 0); }