From 175385481e72dc52710d3c605f111b4522debd04 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Thu, 1 Nov 2018 21:48:22 +0100 Subject: [PATCH] [dxvk] Insert barrier before CS image view clear only if needed Removes one unnecessary sync point in Claybook. --- src/dxvk/dxvk_context.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/dxvk/dxvk_context.cpp b/src/dxvk/dxvk_context.cpp index eb0a9a4e9..9b579a95b 100644 --- a/src/dxvk/dxvk_context.cpp +++ b/src/dxvk/dxvk_context.cpp @@ -1630,7 +1630,11 @@ namespace dxvk { this->spillRenderPass(); this->unbindComputePipeline(); - m_barriers.recordCommands(m_cmd); + if (m_barriers.isImageDirty( + imageView->image(), + imageView->subresources(), + DxvkAccess::Write)) + m_barriers.recordCommands(m_cmd); // Query pipeline objects to use for this clear operation DxvkMetaClearPipeline pipeInfo = m_metaClear->getClearImagePipeline(