Browse Source

Updated debug tools to allow A/B comparisons between upscalers

dec2024update
Nico de Poel 1 year ago
parent
commit
ceb8421e79
  1. 28
      Assets/Scripts/DebugDumper.cs
  2. 4
      Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling.cs

28
Assets/Scripts/DebugDumper.cs

@ -73,13 +73,31 @@ public class DebugDumper : MonoBehaviour
if (Input.GetButtonDown("Fire1")) if (Input.GetButtonDown("Fire1"))
{ {
_layer.antialiasingMode = _layer.antialiasingMode != PostProcessLayer.Antialiasing.AdvancedUpscaling ? PostProcessLayer.Antialiasing.AdvancedUpscaling : PostProcessLayer.Antialiasing.None;
if (_layer.antialiasingMode == PostProcessLayer.Antialiasing.None)
{
_layer.antialiasingMode = PostProcessLayer.Antialiasing.AdvancedUpscaling;
_layer.upscaling.upscalerType = default;
}
else
{
int newUpscalerType = (int)_layer.upscaling.upscalerType + 1;
if (newUpscalerType >= Enum.GetValues(typeof(Upscaling.UpscalerType)).Length)
{
_layer.antialiasingMode = PostProcessLayer.Antialiasing.None;
_layer.upscaling.upscalerType = default;
}
else
{
_layer.antialiasingMode = PostProcessLayer.Antialiasing.AdvancedUpscaling;
_layer.upscaling.upscalerType = (Upscaling.UpscalerType)newUpscalerType;
}
}
} }
if (Input.GetButtonDown("Fire2")) if (Input.GetButtonDown("Fire2"))
{ {
int quality = (int)_layer.upscaling.qualityMode; int quality = (int)_layer.upscaling.qualityMode;
quality = (quality + 1) % Enum.GetValues(typeof(Fsr3Upscaler.QualityMode)).Length;
quality = (quality + 1) % Enum.GetValues(typeof(Fsr2.QualityMode)).Length;
_layer.upscaling.qualityMode = (Fsr2.QualityMode)quality; _layer.upscaling.qualityMode = (Fsr2.QualityMode)quality;
} }
@ -116,10 +134,10 @@ public class DebugDumper : MonoBehaviour
GUI.matrix = Matrix4x4.Scale(new Vector3(scale, scale, scale)); GUI.matrix = Matrix4x4.Scale(new Vector3(scale, scale, scale));
} }
GUILayout.Label($"FSR3 Upscaler: {(_layer.antialiasingMode == PostProcessLayer.Antialiasing.AdvancedUpscaling ? "Enabled" : "Disabled")}");
GUILayout.Label($"Upscaler: {(_layer.antialiasingMode == PostProcessLayer.Antialiasing.AdvancedUpscaling ? _layer.upscaling.upscalerType.ToString() : "None")}");
GUILayout.Label($"Quality: {_layer.upscaling.qualityMode}"); GUILayout.Label($"Quality: {_layer.upscaling.qualityMode}");
GUILayout.Label($"Auto-exposure: {(_layer.upscaling.exposureSource)}");
GUILayout.Label($"Scale: {_scaleFactor:0.00}");
GUILayout.Label($"Exposure: {(_layer.upscaling.exposureSource)}");
GUILayout.Label($"Scale: {Mathf.RoundToInt(_scaleFactor * 100)}%");
if (Input.GetButton("Jump")) if (Input.GetButton("Jump"))
{ {
GUILayout.Label("Reset"); GUILayout.Label("Reset");

4
Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling.cs

@ -15,8 +15,8 @@ namespace UnityEngine.Rendering.PostProcessing
{ {
[InspectorName("FidelityFX Super Resolution 2.2 (FSR2)")] FSR2, [InspectorName("FidelityFX Super Resolution 2.2 (FSR2)")] FSR2,
[InspectorName("FidelityFX Super Resolution 3.1 (FSR3)")] FSR3, [InspectorName("FidelityFX Super Resolution 3.1 (FSR3)")] FSR3,
[InspectorName("Arm Accuracy Super Resolution (ASR)")] ASR,
[InspectorName("Snapdragon Game Super Resolution 2 (SGSR2)")] SGSR2,
//[InspectorName("Arm Accuracy Super Resolution (ASR)")] ASR,
//[InspectorName("Snapdragon Game Super Resolution 2 (SGSR2)")] SGSR2,
[InspectorName("PlayStation Spectral Super Resolution (PSSR)")] PSSR, [InspectorName("PlayStation Spectral Super Resolution (PSSR)")] PSSR,
} }

Loading…
Cancel
Save