mirror of
https://github.com/optiscaler/OptiScaler.git
synced 2026-05-04 08:41:43 +00:00
Fix output scaling for FSR3.1
This commit is contained in:
@@ -467,8 +467,9 @@ bool FSR31FeatureDx11::Evaluate(ID3D11DeviceContext* DeviceContext, NVSDK_NGX_Pa
|
||||
if (InParameters->Get("FSR.upscaleSize.width", ¶ms.upscaleSize.width) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.width *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalWidth = static_cast<float>(params.upscaleSize.width);
|
||||
params.upscaleSize.width =
|
||||
static_cast<uint32_t>(originalWidth * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.width == 0)
|
||||
{
|
||||
@@ -478,8 +479,9 @@ bool FSR31FeatureDx11::Evaluate(ID3D11DeviceContext* DeviceContext, NVSDK_NGX_Pa
|
||||
if (InParameters->Get("FSR.upscaleSize.height", ¶ms.upscaleSize.height) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.height *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalHeight = static_cast<float>(params.upscaleSize.height);
|
||||
params.upscaleSize.height =
|
||||
static_cast<uint32_t>(originalHeight * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.height == 0)
|
||||
{
|
||||
|
||||
@@ -428,8 +428,9 @@ bool FSR31FeatureDx11on12::Evaluate(ID3D11DeviceContext* InDeviceContext, NVSDK_
|
||||
if (InParameters->Get("FSR.upscaleSize.width", ¶ms.upscaleSize.width) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.width *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalWidth = static_cast<float>(params.upscaleSize.width);
|
||||
params.upscaleSize.width =
|
||||
static_cast<uint32_t>(originalWidth * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.width == 0)
|
||||
{
|
||||
@@ -439,8 +440,9 @@ bool FSR31FeatureDx11on12::Evaluate(ID3D11DeviceContext* InDeviceContext, NVSDK_
|
||||
if (InParameters->Get("FSR.upscaleSize.height", ¶ms.upscaleSize.height) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.height *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalHeight = static_cast<float>(params.upscaleSize.height);
|
||||
params.upscaleSize.height =
|
||||
static_cast<uint32_t>(originalHeight * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.height == 0)
|
||||
{
|
||||
|
||||
@@ -508,8 +508,9 @@ bool FSR31FeatureDx12::Evaluate(ID3D12GraphicsCommandList* InCommandList, NVSDK_
|
||||
if (InParameters->Get("FSR.upscaleSize.width", ¶ms.upscaleSize.width) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.width *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalWidth = static_cast<float>(params.upscaleSize.width);
|
||||
params.upscaleSize.width =
|
||||
static_cast<uint32_t>(originalWidth * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.width == 0)
|
||||
{
|
||||
@@ -519,8 +520,9 @@ bool FSR31FeatureDx12::Evaluate(ID3D12GraphicsCommandList* InCommandList, NVSDK_
|
||||
if (InParameters->Get("FSR.upscaleSize.height", ¶ms.upscaleSize.height) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.height *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalHeight = static_cast<float>(params.upscaleSize.height);
|
||||
params.upscaleSize.height =
|
||||
static_cast<uint32_t>(originalHeight * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.height == 0)
|
||||
{
|
||||
|
||||
@@ -744,8 +744,9 @@ bool FSR31FeatureVk::Evaluate(VkCommandBuffer InCmdBuffer, NVSDK_NGX_Parameter*
|
||||
if (InParameters->Get("FSR.upscaleSize.width", ¶ms.upscaleSize.width) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.width *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalWidth = static_cast<float>(params.upscaleSize.width);
|
||||
params.upscaleSize.width =
|
||||
static_cast<uint32_t>(originalWidth * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.width == 0)
|
||||
{
|
||||
@@ -755,8 +756,9 @@ bool FSR31FeatureVk::Evaluate(VkCommandBuffer InCmdBuffer, NVSDK_NGX_Parameter*
|
||||
if (InParameters->Get("FSR.upscaleSize.height", ¶ms.upscaleSize.height) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.height *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalHeight = static_cast<float>(params.upscaleSize.height);
|
||||
params.upscaleSize.height =
|
||||
static_cast<uint32_t>(originalHeight * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.height == 0)
|
||||
{
|
||||
|
||||
@@ -419,8 +419,9 @@ bool FSR31FeatureVkOn12::Evaluate(VkCommandBuffer InCmdBuffer, NVSDK_NGX_Paramet
|
||||
if (InParameters->Get("FSR.upscaleSize.width", ¶ms.upscaleSize.width) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.width *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalWidth = static_cast<float>(params.upscaleSize.width);
|
||||
params.upscaleSize.width =
|
||||
static_cast<uint32_t>(originalWidth * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.width == 0)
|
||||
{
|
||||
@@ -430,8 +431,9 @@ bool FSR31FeatureVkOn12::Evaluate(VkCommandBuffer InCmdBuffer, NVSDK_NGX_Paramet
|
||||
if (InParameters->Get("FSR.upscaleSize.height", ¶ms.upscaleSize.height) == NVSDK_NGX_Result_Success &&
|
||||
Config::Instance()->OutputScalingEnabled.value_or_default())
|
||||
{
|
||||
params.upscaleSize.height *=
|
||||
static_cast<uint32_t>(Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
auto originalHeight = static_cast<float>(params.upscaleSize.height);
|
||||
params.upscaleSize.height =
|
||||
static_cast<uint32_t>(originalHeight * Config::Instance()->OutputScalingMultiplier.value_or_default());
|
||||
}
|
||||
else if (params.upscaleSize.height == 0)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user