aboutsummaryrefslogtreecommitdiff
path: root/layers/screenshot.cpp
diff options
context:
space:
mode:
authorCody Northrop <cody@lunarg.com>2015-09-01 11:47:50 -0600
committerCody Northrop <cody@lunarg.com>2015-09-01 16:35:21 -0600
commit3ef9cfd60abd747e1bf703fcc1a58ad9b844d962 (patch)
treefdb69212fef34177efb2bd8a58aae7694a4a2214 /layers/screenshot.cpp
parent865761d1296c1d8d8994961af34d09b322d1352c (diff)
downloadusermoji-3ef9cfd60abd747e1bf703fcc1a58ad9b844d962.tar.xz
layers: Modify ScreenShot usage and layout flags to work cross vendor
Diffstat (limited to 'layers/screenshot.cpp')
-rw-r--r--layers/screenshot.cpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/layers/screenshot.cpp b/layers/screenshot.cpp
index dca91a04..76a6e0ea 100644
--- a/layers/screenshot.cpp
+++ b/layers/screenshot.cpp
@@ -168,9 +168,7 @@ static void writePPM( const char *filename, VkImage image1)
VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO,
NULL,
0, // allocationSize, queried later
- (VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
- VK_MEMORY_PROPERTY_HOST_UNCACHED_BIT |
- VK_MEMORY_PROPERTY_HOST_WRITE_COMBINED_BIT)
+ 0 // memoryTypeIndex, queried later
};
const VkCmdBufferCreateInfo createCommandBufferInfo = {
VK_STRUCTURE_TYPE_CMD_BUFFER_CREATE_INFO,
@@ -225,9 +223,7 @@ static void writePPM( const char *filename, VkImage image1)
err = memory_type_from_properties(&memory_properties,
memRequirements.memoryTypeBits,
- (VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
- VK_MEMORY_PROPERTY_HOST_UNCACHED_BIT |
- VK_MEMORY_PROPERTY_HOST_WRITE_COMBINED_BIT),
+ VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT,
&memAllocInfo.memoryTypeIndex);
assert(!err);
@@ -246,8 +242,9 @@ static void writePPM( const char *filename, VkImage image1)
err = pTableCmdBuffer->BeginCommandBuffer(cmdBuffer, &cmdBufferBeginInfo);
assert(!err);
- pTableCmdBuffer->CmdCopyImage(cmdBuffer, image1, VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
- image2, VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, 1, &imageCopyRegion);
+ // TODO: We need to transition images to match these layouts, then restore the original layouts
+ pTableCmdBuffer->CmdCopyImage(cmdBuffer, image1, VK_IMAGE_LAYOUT_TRANSFER_SOURCE_OPTIMAL,
+ image2, VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL, 1, &imageCopyRegion);
err = pTableCmdBuffer->EndCommandBuffer(cmdBuffer);
assert(!err);