From a85e242d4c3695f398ea58b25eef4643b224f7f9 Mon Sep 17 00:00:00 2001 From: Nico de Poel Date: Wed, 19 Mar 2025 21:49:42 +0100 Subject: [PATCH] Added shaders for the two compute passes, plus a few minor fixes --- .../Upscaling/ASR/Shaders/ffxm_fsr2_common.cginc | 5 ++++- ...fxm_fsr2_compute_luminance_pyramid_pass.compute | 14 ++++++++++++++ ...sr2_compute_luminance_pyramid_pass.compute.meta | 3 +++ .../ASR/Shaders/ffxm_fsr2_lock_pass.compute | 12 ++++++++++++ .../ASR/Shaders/ffxm_fsr2_lock_pass.compute.meta | 3 +++ .../fsr2/ffxm_fsr2_compute_luminance_pyramid.h | 2 +- 6 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute create mode 100644 Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute.meta create mode 100644 Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute create mode 100644 Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute.meta diff --git a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_common.cginc b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_common.cginc index 5f28270..11f4edd 100644 --- a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_common.cginc +++ b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_common.cginc @@ -1 +1,4 @@ - \ No newline at end of file +#pragma warning(disable: 3078) // Loop control variable conflicts +#pragma warning(disable: 3203) // Signed/unsigned mismatch +#pragma warning(disable: 3205) // Conversion from larger type to smaller, possible loss of data +#pragma warning(disable: 3556) // Integer divides might be much slower, try using uints if possible diff --git a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute new file mode 100644 index 0000000..cab6cf5 --- /dev/null +++ b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute @@ -0,0 +1,14 @@ +#pragma kernel main + +#pragma multi_compile_local __ FFXM_HALF +#pragma multi_compile_local __ FFXM_FSR2_OPTION_LOW_RESOLUTION_MOTION_VECTORS +#pragma multi_compile_local __ FFXM_FSR2_OPTION_JITTERED_MOTION_VECTORS +#pragma multi_compile_local __ FFXM_FSR2_OPTION_INVERTED_DEPTH + +#pragma multi_compile __ UNITY_FFXM_TEXTURE2D_X_ARRAY + +#include "ffxm_fsr2_common.cginc" + +#define FFXM_SPD_NO_WAVE_OPERATIONS + +#include "shaders/ffxm_fsr2_compute_luminance_pyramid_pass.hlsl" diff --git a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute.meta b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute.meta new file mode 100644 index 0000000..9989db6 --- /dev/null +++ b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_compute_luminance_pyramid_pass.compute.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 57220d870cb441c8a6df8a9e15a74283 +timeCreated: 1742416757 \ No newline at end of file diff --git a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute new file mode 100644 index 0000000..9e3a2a4 --- /dev/null +++ b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute @@ -0,0 +1,12 @@ +#pragma kernel main + +#pragma multi_compile_local __ FFXM_HALF +#pragma multi_compile_local __ FFXM_FSR2_OPTION_LOW_RESOLUTION_MOTION_VECTORS +#pragma multi_compile_local __ FFXM_FSR2_OPTION_JITTERED_MOTION_VECTORS +#pragma multi_compile_local __ FFXM_FSR2_OPTION_INVERTED_DEPTH + +#pragma multi_compile __ UNITY_FFXM_TEXTURE2D_X_ARRAY + +#include "ffxm_fsr2_common.cginc" + +#include "shaders/ffxm_fsr2_lock_pass.hlsl" diff --git a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute.meta b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute.meta new file mode 100644 index 0000000..1b473ab --- /dev/null +++ b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/ffxm_fsr2_lock_pass.compute.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a6e1d5d5372d467790fcf2d089b50ef7 +timeCreated: 1742417134 \ No newline at end of file diff --git a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/shaders/fsr2/ffxm_fsr2_compute_luminance_pyramid.h b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/shaders/fsr2/ffxm_fsr2_compute_luminance_pyramid.h index 52ad315..eb14e4b 100644 --- a/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/shaders/fsr2/ffxm_fsr2_compute_luminance_pyramid.h +++ b/Packages/com.unity.postprocessing@3.2.2/PostProcessing/Runtime/Effects/Upscaling/ASR/Shaders/shaders/fsr2/ffxm_fsr2_compute_luminance_pyramid.h @@ -188,7 +188,7 @@ FfxFloat16x4 SpdReduce4H(FfxFloat16x4 v0, FfxFloat16x4 v1, FfxFloat16x4 v2, FfxF } #endif -#include "./spd/ffxm_spd.h" +#include "../spd/ffxm_spd.h" void ComputeAutoExposure(FfxUInt32x3 WorkGroupId, FfxUInt32 LocalThreadIndex) {