Skip to content

Commit b2c6fa3

Browse files
committed
Add swap chain image barrier
Refs SaschaWillems#1225
1 parent a9fa2ae commit b2c6fa3

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

examples/dynamicrenderingmultisampling/dynamicrenderingmultisampling.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,17 @@ class VulkanExample : public VulkanExampleBase
315315
VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT | VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT,
316316
VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT | VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT,
317317
VkImageSubresourceRange{ VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_STENCIL_BIT, 0, 1, 0, 1 });
318+
// We also need an initial barrier for the swap chain image to make it usable for general layout
319+
vks::tools::insertImageMemoryBarrier(
320+
cmdBuffer,
321+
swapChain.images[currentImageIndex],
322+
0,
323+
VK_ACCESS_COLOR_ATTACHMENT_READ_BIT | VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT,
324+
VK_IMAGE_LAYOUT_UNDEFINED,
325+
VK_IMAGE_LAYOUT_GENERAL,
326+
VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT,
327+
VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,
328+
VkImageSubresourceRange{ VK_IMAGE_ASPECT_COLOR_BIT, 0, 1, 0, 1 });
318329

319330
// New structures are used to define the attachments used in dynamic rendering
320331
VkRenderingAttachmentInfoKHR colorAttachment{};

0 commit comments

Comments
 (0)