vulkan.h: V118 -- Add array types to VkImageViewType
diff --git a/icd/intel/cmd_meta.c b/icd/intel/cmd_meta.c
index a60daae..7c7ee8e 100644
--- a/icd/intel/cmd_meta.c
+++ b/icd/intel/cmd_meta.c
@@ -128,18 +128,31 @@
info.sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO;
info.image = (VkImage) img;
- switch (img->type) {
- case VK_IMAGE_TYPE_1D:
- info.viewType = VK_IMAGE_VIEW_TYPE_1D;
- break;
- case VK_IMAGE_TYPE_2D:
- info.viewType = VK_IMAGE_VIEW_TYPE_2D;
- break;
- case VK_IMAGE_TYPE_3D:
- info.viewType = VK_IMAGE_VIEW_TYPE_3D;
- break;
- default:
- break;
+ if (img->array_size == 1) {
+ switch (img->type) {
+ case VK_IMAGE_TYPE_1D:
+ info.viewType = VK_IMAGE_VIEW_TYPE_1D;
+ break;
+ case VK_IMAGE_TYPE_2D:
+ info.viewType = VK_IMAGE_VIEW_TYPE_2D;
+ break;
+ default:
+ break;
+ }
+ } else {
+ switch (img->type) {
+ case VK_IMAGE_TYPE_1D:
+ info.viewType = VK_IMAGE_VIEW_TYPE_1D_ARRAY;
+ break;
+ case VK_IMAGE_TYPE_2D:
+ info.viewType = VK_IMAGE_VIEW_TYPE_2D_ARRAY;
+ break;
+ case VK_IMAGE_TYPE_3D:
+ info.viewType = VK_IMAGE_VIEW_TYPE_3D;
+ break;
+ default:
+ break;
+ }
}
info.format = format;