diff --git a/src/intel/vulkan/anv_blorp.c b/src/intel/vulkan/anv_blorp.c index 78c110161b4..6d0da5424ae 100644 --- a/src/intel/vulkan/anv_blorp.c +++ b/src/intel/vulkan/anv_blorp.c @@ -2213,7 +2213,9 @@ anv_image_msaa_resolve(struct anv_cmd_buffer *cmd_buffer, assert(src_image->vk.image_type == VK_IMAGE_TYPE_2D); assert(src_image->vk.samples > 1); - assert(dst_image->vk.image_type == VK_IMAGE_TYPE_2D); + assert((dst_image->vk.image_type == VK_IMAGE_TYPE_2D) || + (dst_image->vk.image_type == VK_IMAGE_TYPE_3D && + dst_base_layer == 0 && layer_count == 1)); assert(dst_image->vk.samples == 1); struct blorp_surf src_surf, dst_surf; diff --git a/src/intel/vulkan_hasvk/anv_blorp.c b/src/intel/vulkan_hasvk/anv_blorp.c index 46d25595384..4d2c5a6f941 100644 --- a/src/intel/vulkan_hasvk/anv_blorp.c +++ b/src/intel/vulkan_hasvk/anv_blorp.c @@ -1314,7 +1314,9 @@ anv_image_msaa_resolve(struct anv_cmd_buffer *cmd_buffer, assert(src_image->vk.image_type == VK_IMAGE_TYPE_2D); assert(src_image->vk.samples > 1); - assert(dst_image->vk.image_type == VK_IMAGE_TYPE_2D); + assert((dst_image->vk.image_type == VK_IMAGE_TYPE_2D) || + (dst_image->vk.image_type == VK_IMAGE_TYPE_3D && + dst_base_layer == 0 && layer_count == 1)); assert(dst_image->vk.samples == 1); struct blorp_surf src_surf, dst_surf;