diff options
author | nisanthmp <nisanth.mp@samsung.com> | 2015-12-18 11:30:06 +0530 |
---|---|---|
committer | nisanthmp <nisanth.mp@samsung.com> | 2015-12-18 13:30:26 +0530 |
commit | 35254423f4ca6aa94f9f264b60fb09a5c58e8ae6 (patch) | |
tree | 236917b192af0fe3f35d316d8b82b7890f0f5d4f /src/cairo-gl-gradient.c | |
parent | 629101d0a6e2af32727ca0b14acaceddb0897e6c (diff) | |
download | cairo-35254423f4ca6aa94f9f264b60fb09a5c58e8ae6.tar.gz cairo-35254423f4ca6aa94f9f264b60fb09a5c58e8ae6.tar.bz2 cairo-35254423f4ca6aa94f9f264b60fb09a5c58e8ae6.zip |
Pattern/GL: Two Color Stops optimization for linear gradients.
Also 1) Updated shader cache lookup code to include 2 stops case.
2) 2 stop opt code now supports repeat and reflect patterns.
3) texel R,G and B values are now pre-multiplied by alpha.
Change-Id: I053a074660635fc362a8ae37f2782009ef08f125
Signed-off-by: nisanthmp <nisanth.mp@samsung.com>
Diffstat (limited to 'src/cairo-gl-gradient.c')
-rw-r--r-- | src/cairo-gl-gradient.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/cairo-gl-gradient.c b/src/cairo-gl-gradient.c index a6084ce84..325612b0f 100644 --- a/src/cairo-gl-gradient.c +++ b/src/cairo-gl-gradient.c @@ -233,8 +233,7 @@ cairo_int_status_t _cairo_gl_gradient_create (cairo_gl_context_t *ctx, unsigned int n_stops, const cairo_gradient_stop_t *stops, - cairo_gl_gradient_t **gradient_out, - cairo_pattern_type_t pat_type) + cairo_gl_gradient_t **gradient_out) { unsigned long hash; cairo_gl_gradient_t *gradient; @@ -270,7 +269,7 @@ _cairo_gl_gradient_create (cairo_gl_context_t *ctx, gradient->stops = gradient->stops_embedded; memcpy (gradient->stops_embedded, stops, n_stops * sizeof (cairo_gradient_stop_t)); - if (pat_type != CAIRO_PATTERN_TYPE_RADIAL || n_stops != 2) { + if (n_stops != 2) { ctx->dispatch.GenTextures (1, &gradient->tex); _cairo_gl_context_activate (ctx, CAIRO_GL_TEX_TEMP); ctx->dispatch.BindTexture (ctx->tex_target, gradient->tex); |