Use correct depth aspect for depth image.
diff --git a/demos/cube.c b/demos/cube.c
index 71f1d4c..36917e1 100644
--- a/demos/cube.c
+++ b/demos/cube.c
@@ -372,6 +372,7 @@
 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 @@
         .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 @@
         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 @@
     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 @@
 
     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 @@
                                        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 @@
                             1, &copy_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 26f7598..d59d9e6 100644
--- a/demos/tri.c
+++ b/demos/tri.c
@@ -189,6 +189,7 @@
 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 @@
         .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 @@
         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 @@
     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 @@
 
     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 @@
                                        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 @@
                             1, &copy_region);
 
             demo_set_image_layout(demo, demo->textures[i].image,
+                                   VK_IMAGE_ASPECT_COLOR,
                                    VK_IMAGE_LAYOUT_TRANSFER_DESTINATION_OPTIMAL,
                                    demo->textures[i].imageLayout);