From 5e2f90b2461f94e6d9ee4511a6d9924015d462e0 Mon Sep 17 00:00:00 2001
From: Ansgar Philippsen <ansgar.philippsen@gmail.com>
Date: Thu, 28 Jun 2012 16:48:45 -0400
Subject: [PATCH] fix for BZDNG-394: molecular surface behind PrimList text
 labels is transparent

---
 modules/gfx/src/prim_list.cc | 2 +-
 modules/gfx/src/scene.cc     | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/modules/gfx/src/prim_list.cc b/modules/gfx/src/prim_list.cc
index a9debc0ed..b531ba279 100644
--- a/modules/gfx/src/prim_list.cc
+++ b/modules/gfx/src/prim_list.cc
@@ -155,7 +155,7 @@ void PrimList::CustomPreRenderGL(bool flag)
 
 void PrimList::CustomRenderGL(RenderPass pass)
 {
-  if(pass==STANDARD_RENDER_PASS || pass==TRANSPARENT_RENDER_PASS) {
+  if(pass==STANDARD_RENDER_PASS) {
     va_.RenderGL();
     simple_va_.RenderGL();
     render_text();
diff --git a/modules/gfx/src/scene.cc b/modules/gfx/src/scene.cc
index 387f05457..2dfc853e2 100644
--- a/modules/gfx/src/scene.cc
+++ b/modules/gfx/src/scene.cc
@@ -628,11 +628,13 @@ void Scene::RenderText(const TextPrim& t)
   Shader::Instance().Activate("");
 #endif
 
-  glPushAttrib(GL_ENABLE_BIT | GL_COLOR_BUFFER_BIT);
+  glPushAttrib(GL_ALL_ATTRIB_BITS);
   glDisable(GL_NORMALIZE);
   glDisable(GL_CULL_FACE);
   glDisable(GL_LIGHTING);
   glDisable(GL_COLOR_MATERIAL);
+  glEnable(GL_ALPHA_TEST);
+  glAlphaFunc(GL_GREATER,0.5);
   glEnable(GL_TEXTURE_2D);
   glTexEnvf(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_MODULATE);
   glEnable(GL_BLEND);
-- 
GitLab