diff options
| author | malnasse <mais.alnasser@amd.com> | 2015-06-03 17:28:38 -0400 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-06-04 16:40:01 -0600 |
| commit | eb25d3f9f359336186234016f50d988bc9d0f0e6 (patch) | |
| tree | 47651f389c441acdb2506d6aadaa02906e83f0c2 | |
| parent | 73546643149295fb5dea8b634ed93321179eee82 (diff) | |
| download | usermoji-eb25d3f9f359336186234016f50d988bc9d0f0e6.tar.xz | |
Use correct depth aspect for depth image.
| -rw-r--r-- | demos/cube.c | 9 | ||||
| -rw-r--r-- | demos/tri.c | 9 |
2 files changed, 16 insertions, 2 deletions
diff --git a/demos/cube.c b/demos/cube.c index 71f1d4cd..36917e12 100644 --- a/demos/cube.c +++ b/demos/cube.c @@ -372,6 +372,7 @@ static void demo_flush_init_cmd(struct demo *demo) static void demo_set_image_layout( struct demo *demo, VkImage image, + VkImageAspect aspect, VkImageLayout old_image_layout, VkImageLayout new_image_layout) { @@ -405,7 +406,7 @@ static void demo_set_image_layout( .oldLayout = old_image_layout, .newLayout = new_image_layout, .image = image, - .subresourceRange = { VK_IMAGE_ASPECT_COLOR, 0, 1, 0, 0 } + .subresourceRange = { aspect, 0, 1, 0, 0 } }; if (new_image_layout == VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL) { @@ -619,6 +620,7 @@ static void demo_prepare_buffers(struct demo *demo) demo->buffers[i].mem = images[i].memory; demo_set_image_layout(demo, demo->buffers[i].image, + VK_IMAGE_ASPECT_COLOR, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL); @@ -691,6 +693,7 @@ static void demo_prepare_depth(struct demo *demo) assert(!err); demo_set_image_layout(demo, demo->depth.image, + VK_IMAGE_ASPECT_DEPTH, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL); @@ -951,6 +954,7 @@ static void demo_prepare_texture_image(struct demo *demo, tex_obj->imageLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL; demo_set_image_layout(demo, tex_obj->image, + VK_IMAGE_ASPECT_COLOR, VK_IMAGE_LAYOUT_UNDEFINED, tex_obj->imageLayout); /* setting the image layout does not reference the actual memory so no need to add a mem ref */ @@ -999,10 +1003,12 @@ static void demo_prepare_textures(struct demo *demo) VK_MEMORY_PROPERTY_DEVICE_ONLY); demo_set_image_layout(demo, staging_texture.image, + VK_IMAGE_ASPECT_COLOR, staging_texture.imageLayout, VK_IMAGE_LAYOUT_TRANSFER_SOURCE_OPTIMAL); demo_set_image_layout(demo, demo->textures[i].image, + VK_IMAGE_ASPECT_COLOR, demo->textures[i].imageLayout, VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL); @@ -1019,6 +1025,7 @@ static void demo_prepare_textures(struct demo *demo) 1, ©_region); demo_set_image_layout(demo, demo->textures[i].image, + VK_IMAGE_ASPECT_COLOR, VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL, demo->textures[i].imageLayout); diff --git a/demos/tri.c b/demos/tri.c index 26f75987..d59d9e62 100644 --- a/demos/tri.c +++ b/demos/tri.c @@ -189,6 +189,7 @@ static void demo_flush_init_cmd(struct demo *demo) static void demo_set_image_layout( struct demo *demo, VkImage image, + VkImageAspect aspect, VkImageLayout old_image_layout, VkImageLayout new_image_layout) { @@ -222,7 +223,7 @@ static void demo_set_image_layout( .oldLayout = old_image_layout, .newLayout = new_image_layout, .image = image, - .subresourceRange = { VK_IMAGE_ASPECT_COLOR, 0, 1, 0, 0 } + .subresourceRange = { aspect, 0, 1, 0, 0 } }; if (new_image_layout == VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL) { @@ -416,6 +417,7 @@ static void demo_prepare_buffers(struct demo *demo) demo->buffers[i].mem = images[i].memory; demo_set_image_layout(demo, demo->buffers[i].image, + VK_IMAGE_ASPECT_COLOR, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL); @@ -490,6 +492,7 @@ static void demo_prepare_depth(struct demo *demo) assert(!err); demo_set_image_layout(demo, demo->depth.image, + VK_IMAGE_ASPECT_DEPTH, VK_IMAGE_LAYOUT_UNDEFINED, VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL); @@ -590,6 +593,7 @@ static void demo_prepare_texture_image(struct demo *demo, tex_obj->imageLayout = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL; demo_set_image_layout(demo, tex_obj->image, + VK_IMAGE_ASPECT_COLOR, VK_IMAGE_LAYOUT_UNDEFINED, tex_obj->imageLayout); /* setting the image layout does not reference the actual memory so no need to add a mem ref */ @@ -640,10 +644,12 @@ static void demo_prepare_textures(struct demo *demo) VK_MEMORY_PROPERTY_DEVICE_ONLY); demo_set_image_layout(demo, staging_texture.image, + VK_IMAGE_ASPECT_COLOR, staging_texture.imageLayout, VK_IMAGE_LAYOUT_TRANSFER_SOURCE_OPTIMAL); demo_set_image_layout(demo, demo->textures[i].image, + VK_IMAGE_ASPECT_COLOR, demo->textures[i].imageLayout, VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL); @@ -660,6 +666,7 @@ static void demo_prepare_textures(struct demo *demo) 1, ©_region); demo_set_image_layout(demo, demo->textures[i].image, + VK_IMAGE_ASPECT_COLOR, VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL, demo->textures[i].imageLayout); |
