Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2009-03-18 01:03:21 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2009-03-18 01:03:21 +0300
commit2a373f6c44756773ae45690848791de76704b37d (patch)
treea8dfb67b67702e0e0c6f9276d60eb507f309d8d2 /source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
parentc5bc4e4fb1a33eda8c31f2ea02e91f32f74c8fa5 (diff)
Fix for bug #18419: game engine debug drawing interfered with alpha blending.
Diffstat (limited to 'source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp')
-rw-r--r--source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp23
1 files changed, 14 insertions, 9 deletions
diff --git a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
index d4d1b73c772..765ff0174ee 100644
--- a/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
+++ b/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
@@ -327,17 +327,23 @@ void RAS_OpenGLRasterizer::ClearCachingInfo(void)
m_materialCachingInfo = 0;
}
-void RAS_OpenGLRasterizer::FlushDebugLines()
+void RAS_OpenGLRasterizer::FlushDebugLines()
{
-//DrawDebugLines
- glDisable(GL_LIGHTING);
- glDisable(GL_TEXTURE_2D);
+ if(!m_debugLines.size())
+ return;
+
+ // DrawDebugLines
+ GLboolean light, tex;
+
+ light= glIsEnabled(GL_LIGHTING);
+ tex= glIsEnabled(GL_TEXTURE_2D);
+
+ if(light) glDisable(GL_LIGHTING);
+ if(tex) glDisable(GL_TEXTURE_2D);
glBegin(GL_LINES);
for (unsigned int i=0;i<m_debugLines.size();i++)
{
-
-
glColor4f(m_debugLines[i].m_color[0],m_debugLines[i].m_color[1],m_debugLines[i].m_color[2],1.f);
const MT_Scalar* fromPtr = &m_debugLines[i].m_from.x();
const MT_Scalar* toPtr= &m_debugLines[i].m_to.x();
@@ -347,11 +353,10 @@ void RAS_OpenGLRasterizer::FlushDebugLines()
}
glEnd();
- glEnable(GL_LIGHTING);
- glEnable(GL_TEXTURE_2D);
+ if(light) glEnable(GL_LIGHTING);
+ if(tex) glEnable(GL_TEXTURE_2D);
m_debugLines.clear();
-
}
void RAS_OpenGLRasterizer::EndFrame()