From bc3192fc40058ec62cdb09682c7723d747bb1d03 Mon Sep 17 00:00:00 2001 From: Nico de Poel Date: Tue, 27 Jun 2023 10:42:58 +0200 Subject: [PATCH] Made undoing of mipmap bias a distinct separate callback, so that it can be overridden by client apps. --- Assets/Scripts/Core/Fsr2Callbacks.cs | 7 +++++++ Assets/Scripts/Fsr2ImageEffect.cs | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Assets/Scripts/Core/Fsr2Callbacks.cs b/Assets/Scripts/Core/Fsr2Callbacks.cs index a215137..c3c06e1 100644 --- a/Assets/Scripts/Core/Fsr2Callbacks.cs +++ b/Assets/Scripts/Core/Fsr2Callbacks.cs @@ -42,6 +42,8 @@ namespace FidelityFX /// You may also want to store the bias offset value and apply it to any assets that are loaded in on demand. /// void ApplyMipmapBias(float biasOffset); + + void UndoMipmapBias(float biasOffset); } /// @@ -89,5 +91,10 @@ namespace FidelityFX texture.mipMapBias += biasOffset; } } + + public virtual void UndoMipmapBias(float biasOffset) + { + ApplyMipmapBias(-biasOffset); + } } } diff --git a/Assets/Scripts/Fsr2ImageEffect.cs b/Assets/Scripts/Fsr2ImageEffect.cs index 1c27428..480d496 100644 --- a/Assets/Scripts/Fsr2ImageEffect.cs +++ b/Assets/Scripts/Fsr2ImageEffect.cs @@ -249,9 +249,9 @@ namespace FidelityFX private void UndoMipmapBias() { // Undo the current mipmap bias offset - if (!float.IsNaN(_appliedBiasOffset) && !float.IsInfinity(_appliedBiasOffset) && _appliedBiasOffset != 0f) + if (_appliedBiasOffset != 0f && !float.IsNaN(_appliedBiasOffset) && !float.IsInfinity(_appliedBiasOffset)) { - Callbacks.ApplyMipmapBias(-_appliedBiasOffset); + Callbacks.UndoMipmapBias(_appliedBiasOffset); _appliedBiasOffset = 0f; } }