Commit 777749aa by Brandon Schade Committed by Commit Bot

Vulkan: Fix image copies with renderbuffers

When doing an EXT_copy_image copy, renderbuffers were being recreated due to a mismatch in sample count values. Bug: angleproject:3593 Test: dEQP-GLES31.functional.copy_image.*renderbuffer* Change-Id: Ic6b85ea098ab6382b56520b1ca6b76ac25801b54 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2538076Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
parent e3c0469c
......@@ -160,7 +160,9 @@ angle::Result RenderbufferVk::setStorage(const gl::Context *context,
GLsizei width,
GLsizei height)
{
return setStorageImpl(context, 1, internalformat, width, height,
// The ES 3.0 spec(section 4.4.2.1) states that RenderbufferStorage is equivalent to calling
// RenderbufferStorageMultisample with samples equal to zero.
return setStorageImpl(context, 0, internalformat, width, height,
gl::MultisamplingMode::Regular);
}
......
......@@ -299,11 +299,6 @@
4822 VULKAN ANDROID : dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.11 = SKIP
4822 VULKAN ANDROID : dEQP-GLES31.functional.draw_buffers_indexed.random.max_required_draw_buffers.17 = SKIP
// There is an issue with renderbuffers where the test fails verification before the copy.
3593 VULKAN : dEQP-GLES31.functional.copy_image.non_compressed*renderbuffer* = FAIL
3593 SWIFTSHADER : dEQP-GLES31.functional.copy_image.mixed*renderbuffer* = FAIL
3593 VULKAN ANDROID : dEQP-GLES31.functional.copy_image.mixed*renderbuffer* = FAIL
// Swiftshader fails to create a correct source/destination srgb8_alpha8_astc image before copy, however 5x4 is correct
5275 SWIFTSHADER : dEQP-GLES31.functional.copy_image.*rgba*srgb8_alpha8_astc_*_khr.*_to_texture2d* = FAIL
5275 SWIFTSHADER : dEQP-GLES31.functional.copy_image.*rgba*srgb8_alpha8_astc_*_khr.*_to_cubemap* = FAIL
......@@ -326,6 +321,38 @@
5277 VULKAN ANDROID : dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb10_a2* = FAIL
5277 VULKAN ANDROID : dEQP-GLES31.functional.copy_image.non_compressed.viewclass_32_bits.rgba8_snorm_rgb9_e5* = FAIL
// Failures with some formats when copying to a renderbuffer
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rg8_snorm_r16i.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rg8_snorm_r16ui.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb8_snorm_rgb8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb8i_rgb8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb8ui_rgb8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*srgb8_rgb8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*r32i_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*r32i_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*r32ui_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*r32ui_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rg16i_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rg16i_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rg16ui_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rg16ui_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb10_a2_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb10_a2_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb10_a2ui_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgb10_a2ui_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_snorm_r32i.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_snorm_r32ui.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_snorm_rg16i.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_snorm_rg16ui.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_snorm_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_snorm_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8i_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8i_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8ui_rgba8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*rgba8ui_srgb8_alpha8.*to_renderbuffer = FAIL
5370 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.non_compressed.*srgb8_alpha8_rgba8.*to_renderbuffer = FAIL
// Skip on Pixel2 to reduce the bots test time so that it won't timeout
172936025 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.mixed.viewclass_128_bits_mixed.*.* = SKIP
172936025 VULKAN PIXEL2ORXL : dEQP-GLES31.functional.copy_image.compressed.viewclass_astc*.*.* = SKIP
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment