From 73346a5054662dae4d427a82a058605caf0a1855 Mon Sep 17 00:00:00 2001 From: Nico de Poel Date: Tue, 23 May 2023 12:53:33 +0200 Subject: [PATCH] Added a dummy field to the main FSR2 constant buffer, to make it exactly 128 bytes long. This fixes a data alignment issue on iOS Metal. --- Assets/Resources/FSR2/shaders/ffx_fsr2_callbacks_hlsl.h | 2 ++ Assets/Scripts/Core/Fsr2.cs | 2 ++ 2 files changed, 4 insertions(+) diff --git a/Assets/Resources/FSR2/shaders/ffx_fsr2_callbacks_hlsl.h b/Assets/Resources/FSR2/shaders/ffx_fsr2_callbacks_hlsl.h index ab3ded9..1f872c8 100644 --- a/Assets/Resources/FSR2/shaders/ffx_fsr2_callbacks_hlsl.h +++ b/Assets/Resources/FSR2/shaders/ffx_fsr2_callbacks_hlsl.h @@ -71,6 +71,8 @@ FfxFloat32 fDeltaTime; FfxFloat32 fDynamicResChangeFactor; FfxFloat32 fViewSpaceToMetersFactor; + + FfxInt32 iDummy; }; #define FFX_FSR2_CONSTANT_BUFFER_1_SIZE (sizeof(cbFSR2) / 4) // Number of 32-bit values. This must be kept in sync with the cbFSR2 size. diff --git a/Assets/Scripts/Core/Fsr2.cs b/Assets/Scripts/Core/Fsr2.cs index 0f35793..ffa6d27 100644 --- a/Assets/Scripts/Core/Fsr2.cs +++ b/Assets/Scripts/Core/Fsr2.cs @@ -231,6 +231,8 @@ namespace FidelityFX public float deltaTime; public float dynamicResChangeFactor; public float viewSpaceToMetersFactor; + + public int dummy; } [Serializable, StructLayout(LayoutKind.Sequential)]