Fixes an issue with blitting of sRGB buffers

Forces using vrend_render_blit_gl if sourceframebuffers is in sRGB
colorspace. Fixes following tests:
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rgba8
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rgb10_a2
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rgba4
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rgb5_a1
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rgb8
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rgb565
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_rg8
dEQP-GLES3.functional.fbo.blit.conversion.srgb8_alpha8_to_r8

Signed-off-by: Jakob Bornecrantz <jakob@collabora.com>
Reviewed-by: Jakob Bornecrantz <jakob@collabora.com>
Tested-by: Jakob Bornecrantz <jakob@collabora.com>
macos/master
Robert Tarasov 7 years ago committed by Jakob Bornecrantz
parent 6633ab6bdd
commit b199ddde9d
  1. 3
      src/vrend_renderer.c

@ -5906,6 +5906,9 @@ static void vrend_renderer_blit_int(struct vrend_context *ctx,
!vrend_format_is_ds(dst_res->base.format))
use_gl = true;
if (util_format_is_srgb(src_res->base.format))
use_gl = true;
/* different depth formats */
if (vrend_format_is_ds(src_res->base.format) &&
vrend_format_is_ds(dst_res->base.format)) {

Loading…
Cancel
Save