Browse Source

Moved exposure, reactive and T&C inputs to OnPreCull, to make OnRenderImage as clean and simple as possible.

mac-autoexp
Nico de Poel 3 years ago
parent
commit
e57cc0468d
  1. 19
      Assets/Scripts/Fsr2Controller.cs

19
Assets/Scripts/Fsr2Controller.cs

@ -198,6 +198,11 @@ namespace FidelityFX
_dispatchDescription.Exposure = null; _dispatchDescription.Exposure = null;
_dispatchDescription.Reactive = null; _dispatchDescription.Reactive = null;
_dispatchDescription.TransparencyAndComposition = null; _dispatchDescription.TransparencyAndComposition = null;
if (!enableAutoExposure && exposure != null) _dispatchDescription.Exposure = exposure;
if (reactiveMask != null) _dispatchDescription.Reactive = reactiveMask;
if (transparencyAndCompositionMask != null) _dispatchDescription.TransparencyAndComposition = transparencyAndCompositionMask;
_dispatchDescription.Output = null; _dispatchDescription.Output = null;
_dispatchDescription.PreExposure = preExposure; _dispatchDescription.PreExposure = preExposure;
_dispatchDescription.EnableSharpening = performSharpenPass; _dispatchDescription.EnableSharpening = performSharpenPass;
@ -253,11 +258,6 @@ namespace FidelityFX
// Update the input resource descriptions // Update the input resource descriptions
_dispatchDescription.InputResourceSize = new Vector2Int(src.width, src.height); _dispatchDescription.InputResourceSize = new Vector2Int(src.width, src.height);
if (!enableAutoExposure && exposure != null)
{
_dispatchDescription.Exposure = exposure;
}
if (autoGenerateReactiveMask) if (autoGenerateReactiveMask)
{ {
_dispatchCommandBuffer.GetTemporaryRT(Fsr2Pipeline.UavAutoReactive, _renderSize.x, _renderSize.y, 0, default, GraphicsFormat.R8_UNorm, 1, true); _dispatchCommandBuffer.GetTemporaryRT(Fsr2Pipeline.UavAutoReactive, _renderSize.x, _renderSize.y, 0, default, GraphicsFormat.R8_UNorm, 1, true);
@ -266,15 +266,6 @@ namespace FidelityFX
_dispatchDescription.Reactive = Fsr2Pipeline.UavAutoReactive; _dispatchDescription.Reactive = Fsr2Pipeline.UavAutoReactive;
} }
else if (reactiveMask != null)
{
_dispatchDescription.Reactive = reactiveMask;
}
if (transparencyAndCompositionMask != null)
{
_dispatchDescription.TransparencyAndComposition = transparencyAndCompositionMask;
}
// We are rendering to the backbuffer, so we need a temporary render texture for FSR2 to output to // We are rendering to the backbuffer, so we need a temporary render texture for FSR2 to output to
_dispatchCommandBuffer.GetTemporaryRT(Fsr2Pipeline.UavUpscaledOutput, _displaySize.x, _displaySize.y, 0, default, GraphicsFormat.R16G16B16A16_SFloat, 1, true); _dispatchCommandBuffer.GetTemporaryRT(Fsr2Pipeline.UavUpscaledOutput, _displaySize.x, _displaySize.y, 0, default, GraphicsFormat.R16G16B16A16_SFloat, 1, true);

Loading…
Cancel
Save