From c2409a2fd8828f453deb8c0f95efdfedfbf9008d Mon Sep 17 00:00:00 2001 From: Jeremy Hayes Date: Tue, 25 Oct 2016 17:02:33 -0600 Subject: demos: Fix access masks when cube uses staging bfr Change-Id: I78f9c5ecb36edbd2515f7ef2a889519e45707ea8 --- demos/cube.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/demos/cube.cpp b/demos/cube.cpp index fbb033f7..a424f4d5 100644 --- a/demos/cube.cpp +++ b/demos/cube.cpp @@ -1914,12 +1914,12 @@ struct Demo { set_image_layout( staging_texture.image, vk::ImageAspectFlagBits::eColor, staging_texture.imageLayout, - vk::ImageLayout::eTransferSrcOptimal, vk::AccessFlags()); + vk::ImageLayout::eTransferSrcOptimal, vk::AccessFlagBits::eShaderRead); set_image_layout( textures[i].image, vk::ImageAspectFlagBits::eColor, textures[i].imageLayout, - vk::ImageLayout::eTransferDstOptimal, vk::AccessFlags()); + vk::ImageLayout::eTransferDstOptimal, vk::AccessFlagBits::eShaderRead); auto const subresource = vk::ImageSubresourceLayers() @@ -1945,7 +1945,7 @@ struct Demo { set_image_layout(textures[i].image, vk::ImageAspectFlagBits::eColor, vk::ImageLayout::eTransferDstOptimal, - textures[i].imageLayout, vk::AccessFlags()); + textures[i].imageLayout, vk::AccessFlagBits::eTransferWrite); flush_init_cmd(); @@ -2108,7 +2108,7 @@ struct Demo { case vk::ImageLayout::eTransferDstOptimal: // Make sure anything that was copying from this image has // completed - flags = vk::AccessFlagBits::eTransferRead; + flags = vk::AccessFlagBits::eTransferWrite; break; case vk::ImageLayout::eColorAttachmentOptimal: flags = vk::AccessFlagBits::eColorAttachmentWrite; @@ -2121,6 +2121,9 @@ struct Demo { flags = vk::AccessFlagBits::eShaderRead | vk::AccessFlagBits::eInputAttachmentRead; break; + case vk::ImageLayout::eTransferSrcOptimal: + flags = vk::AccessFlagBits::eTransferRead; + break; case vk::ImageLayout::ePresentSrcKHR: flags = vk::AccessFlagBits::eMemoryRead; break; -- cgit v1.2.3