From 4c1a12d824d58876ee70ddd2913bb1580bc7b81a Mon Sep 17 00:00:00 2001 From: Robert Bragg Date: Fri, 25 Sep 2009 19:04:13 +0100 Subject: [PATCH] [material] fix _set_alpha_test_function: missing a glEnable(GL_ALPHA_TEST) Since the default alpha test function of GL_ALWAYS is equivalent to GL_ALPHA_TEST being disabled we don't need to worry about Enabling/Disabling it when flushing material state, instead it's enough to leave it always enabled. We will assume that any driver worth its salt wont incur any additional cost for glEnable (GL_ALPHA_TEST) + GL_ALWAYS vs glDisable (GL_ALPHA_TEST). This patch simply calls glEnable (GL_ALPHA_TEST) in cogl_create_context --- cogl/cogl-context.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cogl/cogl-context.c b/cogl/cogl-context.c index 4f3cb6621..871f6dd65 100644 --- a/cogl/cogl-context.c +++ b/cogl/cogl-context.c @@ -123,6 +123,12 @@ cogl_create_context (void) _context->texture_download_material = COGL_INVALID_HANDLE; + /* The default for GL_ALPHA_TEST is to always pass which is equivalent to + * the test being disabled therefore we assume that for all drivers there + * will be no performance impact if we always leave the test enabled which + * makes things a bit simpler for us. */ + GE (glEnable (GL_ALPHA_TEST)); + /* Create default textures used for fall backs */ _context->default_gl_texture_2d_tex = cogl_texture_new_from_data (1, /* width */