BGE: fix compilation error with 2D filters on System without GL extenstion: add conditional compile statements

This commit is contained in:
Benoit Bolsee 2008-04-18 22:22:50 +00:00
parent 10a396d4b7
commit 1fc1fb117e
2 changed files with 11 additions and 4 deletions

@ -1428,8 +1428,8 @@ KX_PYMETHODDEF_DOC( BL_Shader, setAttrib, "setAttrib(enum)" )
bgl::blBindAttribLocationARB(mShader, mAttr, "Tangent");
Py_Return;
}
return NULL;
#endif
return NULL;
}

@ -91,7 +91,8 @@ RAS_2DFilterManager::~RAS_2DFilterManager()
unsigned int RAS_2DFilterManager::CreateShaderProgram(char* shadersource)
{
GLuint program;
GLuint program = 0;
#if defined(GL_ARB_multitexture) && defined(WITH_GLEXT)
GLuint fShader = bgl::blCreateShaderObjectARB(GL_FRAGMENT_SHADER);
GLint success;
@ -127,6 +128,7 @@ unsigned int RAS_2DFilterManager::CreateShaderProgram(char* shadersource)
std::cout << "2dFilters - Shader program validation error" << std::endl;
return 0;
}
#endif
return program;
}
@ -160,7 +162,8 @@ unsigned int RAS_2DFilterManager::CreateShaderProgram(int filtermode)
void RAS_2DFilterManager::StartShaderProgram(unsigned int shaderprogram)
{
GLint uniformLoc;
#if defined(GL_ARB_multitexture) && defined(WITH_GLEXT)
GLint uniformLoc;
bgl::blUseProgramObjectARB(shaderprogram);
uniformLoc = bgl::blGetUniformLocationARB(shaderprogram, "bgl_RenderedTexture");
if (uniformLoc != -1)
@ -182,12 +185,14 @@ void RAS_2DFilterManager::StartShaderProgram(unsigned int shaderprogram)
{
bgl::blUniform1fARB(uniformLoc,textureheight);
}
#endif
}
void RAS_2DFilterManager::EndShaderProgram()
{
#if defined(GL_ARB_multitexture) && defined(WITH_GLEXT)
bgl::blUseProgramObjectARB(0);
#endif
}
void RAS_2DFilterManager::SetupTexture()
@ -297,6 +302,7 @@ void RAS_2DFilterManager::EnableFilter(RAS_2DFILTER_MODE mode, int pass, STR_Str
{
if(!isshadersupported)
return;
#if defined(GL_ARB_multitexture) && defined(WITH_GLEXT)
if(pass<0 || pass>=MAX_RENDER_PASS)
return;
@ -337,4 +343,5 @@ void RAS_2DFilterManager::EnableFilter(RAS_2DFILTER_MODE mode, int pass, STR_Str
m_filters[pass] = CreateShaderProgram(mode);
m_enabled[pass] = 1;
}
#endif
}