From 9a0bb3d871d476d43edc6c7a29f6bedff1c45247 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Tue, 11 Oct 2011 15:11:52 -0500 Subject: SH-2510 Never use shaders if gl version < 2.0 --- indra/newview/llviewershadermgr.cpp | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) (limited to 'indra') diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index 80727764c1..31ed210ae3 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -357,6 +357,7 @@ void LLViewerShaderMgr::setShaders() LLGLSLShader::sIndexedTextureChannels = llmax(llmin(gGLManager.mNumTextureImageUnits, (S32) gSavedSettings.getU32("RenderMaxTextureIndex")), 1); + reentrance = true; if (LLRender::sGLCoreProfile || gGLManager.mGLVersion >= 2.f) { //ALWAYS use shaders where available @@ -364,19 +365,15 @@ void LLViewerShaderMgr::setShaders() { //vertex shaders MUST be enabled to use core profile gSavedSettings.setBOOL("VertexShaderEnable", TRUE); } - - if (!gSavedSettings.getBOOL("RenderTransparentWater")) - { //non-transparent water uses fixed function - gSavedSettings.setBOOL("RenderTransparentWater", TRUE); - } } - - + else if (gGLManager.mGLVersion < 2.f) + { //NEVER use shaders on a pre 2.0 context + gSavedSettings.setBOOL("VertexShaderEnable", FALSE); + } + //setup preprocessor definitions LLShaderMgr::instance()->mDefinitions["NUM_TEX_UNITS"] = llformat("%d", gGLManager.mNumTextureImageUnits); - - reentrance = true; - + // Make sure the compiled shader map is cleared before we recompile shaders. mShaderObjects.clear(); -- cgit v1.2.3