aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2023-09-14 14:58:11 -0300
committerGitHub <noreply@github.com>2023-09-14 19:58:11 +0200
commit7ccff037e87f82f3461f3e1422235e29800eaa2f (patch)
tree280ca9072284926fc24e7c5316b1c92b108888e5 /src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs
parenta745913329c4f4a135b276212f172578f08bc718 (diff)
Fix some Vulkan validation errors (mostly related to barriers) (#5603)1.1.1014
* Replace image barriers inside render pass with more generic memory barrier * Remove forceStorage since it was creating images with storage bit for formats that are not StorageImage compatible * Add missing flags on subpass dependency * Don't call vkCmdSetScissor with a scissor count of 0 * One semaphore per swapchain image * Remove compute stage from read to write barriers * Try to improve Pipeline.Barrier nonsense * Set PipelineStateFlags based on supported stages
Diffstat (limited to 'src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs')
-rw-r--r--src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs b/src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs
index 7600c2d5..662bb80f 100644
--- a/src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs
+++ b/src/Ryujinx.Graphics.Vulkan/FramebufferParams.cs
@@ -257,14 +257,22 @@ namespace Ryujinx.Graphics.Vulkan
if (realIndex != -1)
{
- _colors[realIndex].Storage?.InsertReadToWriteBarrier(cbs, AccessFlags.ColorAttachmentWriteBit, PipelineStageFlags.ColorAttachmentOutputBit);
+ _colors[realIndex].Storage?.InsertReadToWriteBarrier(
+ cbs,
+ AccessFlags.ColorAttachmentWriteBit,
+ PipelineStageFlags.ColorAttachmentOutputBit,
+ insideRenderPass: true);
}
}
}
public void InsertClearBarrierDS(CommandBufferScoped cbs)
{
- _depthStencil?.Storage?.InsertReadToWriteBarrier(cbs, AccessFlags.DepthStencilAttachmentWriteBit, PipelineStageFlags.LateFragmentTestsBit);
+ _depthStencil?.Storage?.InsertReadToWriteBarrier(
+ cbs,
+ AccessFlags.DepthStencilAttachmentWriteBit,
+ PipelineStageFlags.LateFragmentTestsBit,
+ insideRenderPass: true);
}
}
}