From 8a352df3c676e347c267919f2d9a56d75daef348 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Sat, 3 Jun 2023 00:43:00 -0300 Subject: Allow BGRA images on Vulkan (#5203) --- src/Ryujinx.Graphics.Vulkan/Effects/FsrScalingFilter.cs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/Ryujinx.Graphics.Vulkan/Effects/FsrScalingFilter.cs') diff --git a/src/Ryujinx.Graphics.Vulkan/Effects/FsrScalingFilter.cs b/src/Ryujinx.Graphics.Vulkan/Effects/FsrScalingFilter.cs index e9952126..7317b567 100644 --- a/src/Ryujinx.Graphics.Vulkan/Effects/FsrScalingFilter.cs +++ b/src/Ryujinx.Graphics.Vulkan/Effects/FsrScalingFilter.cs @@ -96,8 +96,6 @@ namespace Ryujinx.Graphics.Vulkan.Effects { var originalInfo = view.Info; - var swapRB = originalInfo.Format.IsBgr() && originalInfo.SwizzleR == SwizzleComponent.Red; - var info = new TextureCreateInfo( width, height, @@ -110,9 +108,9 @@ namespace Ryujinx.Graphics.Vulkan.Effects originalInfo.Format, originalInfo.DepthStencilMode, originalInfo.Target, - swapRB ? originalInfo.SwizzleB : originalInfo.SwizzleR, + originalInfo.SwizzleR, originalInfo.SwizzleG, - swapRB ? originalInfo.SwizzleR : originalInfo.SwizzleB, + originalInfo.SwizzleB, originalInfo.SwizzleA); _intermediaryTexture?.Dispose(); _intermediaryTexture = _renderer.CreateTexture(info, view.ScaleFactor) as TextureView; @@ -155,7 +153,7 @@ namespace Ryujinx.Graphics.Vulkan.Effects var bufferRanges = new BufferRange(bufferHandle, 0, rangeSize); _pipeline.SetUniformBuffers(stackalloc[] { new BufferAssignment(2, bufferRanges) }); - _pipeline.SetImage(0, _intermediaryTexture, GAL.Format.R8G8B8A8Unorm); + _pipeline.SetImage(0, _intermediaryTexture, FormatTable.ConvertRgba8SrgbToUnorm(view.Info.Format)); _pipeline.DispatchCompute(dispatchX, dispatchY, 1); _pipeline.ComputeBarrier(); -- cgit v1.2.3