vrend: chain conditions for using gl-based blitter

Once we know the GL shader-based blitter is needed, there's no need
test remaining conditions.

Signed-off-by: Ryan Neph <ryanneph@google.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
macos/master
Ryan Neph 3 years ago
parent 0f1a55f1ea
commit 738db75c66
  1. 9
      src/vrend_renderer.c

@ -8884,11 +8884,12 @@ static void vrend_renderer_blit_int(struct vrend_context *ctx,
src_y2 = src_res->base.height0 - info->src.box.y; src_y2 = src_res->base.height0 - info->src.box.y;
} }
if (use_gl) {;}
/* GLES generally doesn't support blitting to a multi-sample FB, and also not /* GLES generally doesn't support blitting to a multi-sample FB, and also not
* from a multi-sample FB where the regions are not exatly the same or the * from a multi-sample FB where the regions are not exatly the same or the
* source and target format are different. For * source and target format are different. For
* downsampling DS blits to zero samples we solve this by doing two blits */ * downsampling DS blits to zero samples we solve this by doing two blits */
if (vrend_state.use_gles && else if (vrend_state.use_gles &&
((dst_res->base.nr_samples > 0) || ((dst_res->base.nr_samples > 0) ||
((info->mask & PIPE_MASK_RGBA) && ((info->mask & PIPE_MASK_RGBA) &&
(src_res->base.nr_samples > 0) && (src_res->base.nr_samples > 0) &&
@ -8903,12 +8904,10 @@ static void vrend_renderer_blit_int(struct vrend_context *ctx,
src_y1, src_y2, info->dst.box.x, info->dst.box.x + info->dst.box.width, dst_y1, dst_y2); src_y1, src_y2, info->dst.box.x, info->dst.box.x + info->dst.box.width, dst_y1, dst_y2);
use_gl = true; use_gl = true;
} }
/* for 3D mipmapped blits - hand roll time */ /* for 3D mipmapped blits - hand roll time */
if (info->src.box.depth != info->dst.box.depth) else if (info->src.box.depth != info->dst.box.depth)
use_gl = true; use_gl = true;
else if (vrend_blit_needs_swizzle(info->dst.format, info->src.format))
if (vrend_blit_needs_swizzle(info->dst.format, info->src.format))
use_gl = true; use_gl = true;
if (has_feature(feat_texture_view)) if (has_feature(feat_texture_view))

Loading…
Cancel
Save