summaryrefslogtreecommitdiff
path: root/indra/llrender/llgl.cpp
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2011-07-29 17:46:16 -0500
committerDave Parks <davep@lindenlab.com>2011-07-29 17:46:16 -0500
commit8ec39da3468f53af85d0cd4d4d9c54a72d6b8152 (patch)
tree6e8b4c25cbc7411bf6d6e76af852a600debf8838 /indra/llrender/llgl.cpp
parente16eb4ae4a73125bc4e74fc667aa99110ac77c29 (diff)
SH-2181 Fix for alpha flickering when basic shaders enabled (don't use glAlphaFunc when shaders are available).
Reviewed by Leslie
Diffstat (limited to 'indra/llrender/llgl.cpp')
-rw-r--r--indra/llrender/llgl.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/indra/llrender/llgl.cpp b/indra/llrender/llgl.cpp
index 8937726209..2f6ef2b663 100644
--- a/indra/llrender/llgl.cpp
+++ b/indra/llrender/llgl.cpp
@@ -48,6 +48,7 @@
#include "llstacktrace.h"
#include "llglheaders.h"
+#include "llglslshader.h"
#ifdef _DEBUG
//#define GL_STATE_VERIFY
@@ -1781,6 +1782,16 @@ void LLGLState::checkClientArrays(const std::string& msg, U32 data_mask)
LLGLState::LLGLState(LLGLenum state, S32 enabled) :
mState(state), mWasEnabled(FALSE), mIsEnabled(FALSE)
{
+ if (LLGLSLShader::sNoFixedFunction)
+ { //always disable state that's deprecated post GL 3.0
+ switch (state)
+ {
+ case GL_ALPHA_TEST:
+ enabled = 0;
+ break;
+ }
+ }
+
stop_glerror();
if (state)
{