From c298f99b5d9c3ae4aac703313cf7417235a7a79d Mon Sep 17 00:00:00 2001 From: Julien Isorce Date: Thu, 15 Dec 2011 18:08:48 +0100 Subject: [PATCH] [484/906] libvisual_gl: correctly setup depth and blend functions --- ext/libvisual/visual-gl.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ext/libvisual/visual-gl.c b/ext/libvisual/visual-gl.c index 294dfc0c16..6319033e7e 100644 --- a/ext/libvisual/visual-gl.c +++ b/ext/libvisual/visual-gl.c @@ -764,6 +764,16 @@ render_frame (gint width, gint height, guint texture, GstVisualGL * visual) actor_negotiate (visual->display, visual); + if (visual->is_enabled_gl_depth_test) { + glEnable (GL_DEPTH_TEST); + glDepthFunc (visual->gl_depth_func); + } + + if (visual->is_enabled_gl_blend) { + glEnable (GL_BLEND); + glBlendFunc (visual->gl_blend_src_alpha, GL_ZERO); + } + glMatrixMode (GL_MODELVIEW); glScaled (1.0, -1.0, 1.0); @@ -777,6 +787,9 @@ render_frame (gint width, gint height, guint texture, GstVisualGL * visual) glPopAttrib (); + glDisable (GL_DEPTH_TEST); + glDisable (GL_BLEND); + GST_DEBUG_OBJECT (visual, "rendered one frame"); }