forked from enlightenment/efl
Efl.Canvas.Group: make mask filter work on GL engine
Summary: The _gl_filter_mask defines value of gc->dc->clip.mask, and make_color but those are not used at all, because the evas_gl_common_Filter_blend_push calls evas_gl_common_context_image_push which doesn't care of those values. So this patch is using evas_gl_common_image_draw to use mask and mask_color. Test Plan: [Filter Program] efl_gfx_filter_program_set(text, "buffer:a(alpha); buffer:fat(alpha); buffer:rgbfat(rgba); curve (0:255-255:0, dst = a); blend (a, color = #00ca00ff); grow (1, dst = fat); blur (3, src = fat, color=#0000b9ff, ox = -2, oy = -2, dst = rgbfat); mask (a, src = rgbfat);padding_set(t=5);", "name"); [Before] {F3835430} [After] {F3835431} Reviewers: Hermet, jsuya Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11139
This commit is contained in:
parent
33bf1036e9
commit
1dc6ccfba0
|
@ -50,8 +50,8 @@ _gl_filter_mask(Render_Engine_GL_Generic *re, Evas_Filter_Command *cmd)
|
|||
gc->dc->clip.mask_x = x;
|
||||
gc->dc->clip.mask_y = y;
|
||||
|
||||
evas_gl_common_filter_blend_push(gc, image->tex, x, y, sw, sh, x, y, sw, sh,
|
||||
cmd->draw.alphaonly);
|
||||
evas_gl_common_image_draw(gc, image, x, y, sw, sh,
|
||||
x, y, sw, sh, EINA_TRUE);
|
||||
}
|
||||
|
||||
evas_gl_common_image_free(use_mask);
|
||||
|
|
Loading…
Reference in New Issue