Remove redundant DLSS file searches from inputs

This commit is contained in:
cdozdil
2026-05-04 16:54:41 +03:00
parent acfe3ae7fa
commit e985df0f5f
10 changed files with 42 additions and 275 deletions
-29
View File
@@ -217,36 +217,7 @@ static FfxErrorCode ffxFsr2ContextCreate_Dx11(FfxFsr2Context* context, FfxFsr2Co
if (!state.NvngxDx11Inited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D11_Init_with_ProjectID(
OPTI_GUID, state.NVNGX_Engine, OPTI_VERSION, exePath.c_str(), _d3d11Device, &fcInfo,
-29
View File
@@ -411,36 +411,7 @@ static Fsr212::FfxErrorCode ffxFsr2ContextCreate_Dx12(Fsr212::FfxFsr2Context* co
if (!state.NvngxDx12Inited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D12_Init_with_ProjectID(
OPTI_GUID, state.NVNGX_Engine, OPTI_VERSION, exePath.c_str(), _d3d12Device, &fcInfo,
-29
View File
@@ -339,36 +339,7 @@ static FfxErrorCode ffxFsr2ContextCreate_Vk(FfxFsr2Context* context, FfxFsr2Cont
if (!state.NvngxVkInited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_VULKAN_Init_ProjectID_Ext(
OPTI_GUID, state.NVNGX_Engine, OPTI_VERSION, exePath.c_str(), State::Instance().VulkanInstance,
-29
View File
@@ -261,36 +261,7 @@ static Fsr3::FfxErrorCode ffxFsr3ContextCreate_Dx12(Fsr3::FfxFsr3UpscalerContext
if (!state.NvngxDx12Inited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D12_Init_with_ProjectID(
OPTI_GUID, state.NVNGX_Engine, OPTI_VERSION, exePath.c_str(), _d3d12Device, &fcInfo,
-30
View File
@@ -203,37 +203,7 @@ static ffxReturnCode_t ffxCreateContext_Dx12(ffxContext* context, ffxCreateConte
if (!State::Instance().NvngxDx12Inited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D12_Init_with_ProjectID(
OPTI_GUID, State::Instance().NVNGX_Engine, OPTI_VERSION, exePath.c_str(), _d3d12Device, &fcInfo,
-29
View File
@@ -258,36 +258,7 @@ ffxReturnCode_t ffxCreateContext_Dx12(ffxContext* context, ffxCreateContextDescH
if (!state.NvngxDx12Inited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D12_Init_with_ProjectID(
OPTI_GUID, state.NVNGX_Engine, OPTI_VERSION, exePath.c_str(), _d3d12Device, &fcInfo,
-29
View File
@@ -398,36 +398,7 @@ ffxReturnCode_t ffxCreateContext_Vk(ffxContext* context, ffxCreateContextDescHea
if (!State::Instance().NvngxVkInited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_VULKAN_Init_ProjectID_Ext(
OPTI_GUID, State::Instance().NVNGX_Engine, OPTI_VERSION, exePath.c_str(), State::Instance().VulkanInstance,
+21 -21
View File
@@ -105,34 +105,34 @@ xess_result_t hk_xessD3D11CreateContext(ID3D11Device* device, xess_context_handl
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
// auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
// auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
// auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
// std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
// pathStorage.push_back(exePath.wstring());
// if (nvngxDlssPath.has_value())
// pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
// if (nvngxDlssDPath.has_value())
// pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
// if (nvngxDlssGPath.has_value())
// pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// if (Config::Instance()->DLSSFeaturePath.has_value())
// pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
//// Build pointer array
// wchar_t const** paths = new const wchar_t*[pathStorage.size()];
// for (size_t i = 0; i < pathStorage.size(); ++i)
//{
// paths[i] = pathStorage[i].c_str();
// }
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
// fcInfo.PathListInfo.Path = paths;
// fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D11_Init_with_ProjectID(
OPTI_GUID, NVSDK_NGX_ENGINE_TYPE_CUSTOM, OPTI_VERSION, exePath.c_str(), device, &fcInfo,
+21 -21
View File
@@ -106,34 +106,34 @@ xess_result_t hk_xessD3D12CreateContext(ID3D12Device* pDevice, xess_context_hand
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
// auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
// auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
// auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
// std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
// pathStorage.push_back(exePath.wstring());
// if (nvngxDlssPath.has_value())
// pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
// if (nvngxDlssDPath.has_value())
// pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
// if (nvngxDlssGPath.has_value())
// pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// if (Config::Instance()->DLSSFeaturePath.has_value())
// pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
//// Build pointer array
// wchar_t const** paths = new const wchar_t*[pathStorage.size()];
// for (size_t i = 0; i < pathStorage.size(); ++i)
//{
// paths[i] = pathStorage[i].c_str();
// }
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
// fcInfo.PathListInfo.Path = paths;
// fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_D3D12_Init_with_ProjectID(
OPTI_GUID, NVSDK_NGX_ENGINE_TYPE_CUSTOM, OPTI_VERSION, exePath.c_str(), pDevice, &fcInfo,
-29
View File
@@ -132,36 +132,7 @@ xess_result_t hk_xessVKCreateContext(VkInstance instance, VkPhysicalDevice physi
if (!State::Instance().NvngxVkInited)
{
NVSDK_NGX_FeatureCommonInfo fcInfo {};
auto exePath = Util::ExePath().remove_filename();
auto nvngxDlssPath = Util::FindFilePath(exePath, "nvngx_dlss.dll");
auto nvngxDlssDPath = Util::FindFilePath(exePath, "nvngx_dlssd.dll");
auto nvngxDlssGPath = Util::FindFilePath(exePath, "nvngx_dlssg.dll");
std::vector<std::wstring> pathStorage;
pathStorage.push_back(exePath.wstring());
if (nvngxDlssPath.has_value())
pathStorage.push_back(nvngxDlssPath.value().parent_path().wstring());
if (nvngxDlssDPath.has_value())
pathStorage.push_back(nvngxDlssDPath.value().parent_path().wstring());
if (nvngxDlssGPath.has_value())
pathStorage.push_back(nvngxDlssGPath.value().parent_path().wstring());
if (Config::Instance()->DLSSFeaturePath.has_value())
pathStorage.push_back(Config::Instance()->DLSSFeaturePath.value());
// Build pointer array
wchar_t const** paths = new const wchar_t*[pathStorage.size()];
for (size_t i = 0; i < pathStorage.size(); ++i)
{
paths[i] = pathStorage[i].c_str();
}
fcInfo.PathListInfo.Path = paths;
fcInfo.PathListInfo.Length = (int) pathStorage.size();
auto nvResult = NVSDK_NGX_VULKAN_Init_ProjectID_Ext(
OPTI_GUID, NVSDK_NGX_ENGINE_TYPE_CUSTOM, OPTI_VERSION, exePath.c_str(), _instance, _physicalDevice, _device,