From cb748c786aa17871efd19ca3b9a3250970925c6c Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Mon, 8 Jan 2018 19:07:57 +0100 Subject: [PATCH] [dxvk] Added missing image barrier after compute shader execution --- src/dxvk/dxvk_context.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/dxvk/dxvk_context.cpp b/src/dxvk/dxvk_context.cpp index 0b55758d..f89d685f 100644 --- a/src/dxvk/dxvk_context.cpp +++ b/src/dxvk/dxvk_context.cpp @@ -1191,6 +1191,17 @@ namespace dxvk { VK_ACCESS_SHADER_WRITE_BIT, slot.bufferView->buffer()->info().stages, slot.bufferView->buffer()->info().access); + } else if (binding.type == VK_DESCRIPTOR_TYPE_STORAGE_IMAGE) { + m_barriers.accessImage( + slot.imageView->image(), + slot.imageView->subresources(), + slot.imageView->imageInfo().layout, + VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, + VK_ACCESS_SHADER_READ_BIT | + VK_ACCESS_SHADER_WRITE_BIT, + slot.imageView->imageInfo().layout, + slot.imageView->imageInfo().stages, + slot.imageView->imageInfo().access); } }