Commit 2922d173 authored by hybrid's avatar hybrid

Fix used extension names.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2930 dfc29bdd-3216-0410-991c-e03cc46cb475
parent 92b77f2f
...@@ -571,7 +571,7 @@ bool COpenGLExtensionHandler::queryFeature(E_VIDEO_DRIVER_FEATURE feature) const ...@@ -571,7 +571,7 @@ bool COpenGLExtensionHandler::queryFeature(E_VIDEO_DRIVER_FEATURE feature) const
return StencilBuffer; return StencilBuffer;
case EVDF_VERTEX_SHADER_1_1: case EVDF_VERTEX_SHADER_1_1:
case EVDF_ARB_VERTEX_PROGRAM_1: case EVDF_ARB_VERTEX_PROGRAM_1:
return FeatureAvailable[IRR_ARB_vertex_program] || FeatureAvailable[IRR_NV_vertex_program]; return FeatureAvailable[IRR_ARB_vertex_program] || FeatureAvailable[IRR_NV_vertex_program1_1];
case EVDF_PIXEL_SHADER_1_1: case EVDF_PIXEL_SHADER_1_1:
case EVDF_PIXEL_SHADER_1_2: case EVDF_PIXEL_SHADER_1_2:
case EVDF_ARB_FRAGMENT_PROGRAM_1: case EVDF_ARB_FRAGMENT_PROGRAM_1:
......
...@@ -152,7 +152,7 @@ void COpenGLShaderMaterialRenderer::OnSetMaterial(const video::SMaterial& materi ...@@ -152,7 +152,7 @@ void COpenGLShaderMaterialRenderer::OnSetMaterial(const video::SMaterial& materi
#ifdef GL_ARB_fragment_program #ifdef GL_ARB_fragment_program
Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_ARB, nextShader); Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_ARB, nextShader);
glEnable(GL_FRAGMENT_PROGRAM_ARB); glEnable(GL_FRAGMENT_PROGRAM_ARB);
#elif defined(GL_NV_vertex_program) #elif defined(GL_NV_fragment_program)
Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_NV, nextShader); Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_NV, nextShader);
glEnable(GL_FRAGMENT_PROGRAM_NV); glEnable(GL_FRAGMENT_PROGRAM_NV);
#endif #endif
...@@ -186,7 +186,7 @@ void COpenGLShaderMaterialRenderer::OnUnsetMaterial() ...@@ -186,7 +186,7 @@ void COpenGLShaderMaterialRenderer::OnUnsetMaterial()
#ifdef GL_ARB_fragment_program #ifdef GL_ARB_fragment_program
if (PixelShader[0]) if (PixelShader[0])
glDisable(GL_FRAGMENT_PROGRAM_ARB); glDisable(GL_FRAGMENT_PROGRAM_ARB);
#elif defined(GL_NV_vertex_program) #elif defined(GL_NV_fragment_program)
if (PixelShader[0]) if (PixelShader[0])
glDisable(GL_FRAGMENT_PROGRAM_NV); glDisable(GL_FRAGMENT_PROGRAM_NV);
#endif #endif
...@@ -206,7 +206,7 @@ bool COpenGLShaderMaterialRenderer::isTransparent() const ...@@ -206,7 +206,7 @@ bool COpenGLShaderMaterialRenderer::isTransparent() const
// This method needs a properly cleaned error state before the checked instruction is called // This method needs a properly cleaned error state before the checked instruction is called
bool COpenGLShaderMaterialRenderer::checkError(const irr::c8* type) bool COpenGLShaderMaterialRenderer::checkError(const irr::c8* type)
{ {
#if defined(GL_ARB_vertex_program) || defined(GL_NV_vertex_program) #if defined(GL_ARB_vertex_program) || defined(GL_NV_vertex_program) || defined(GL_ARB_fragment_program) || defined(GL_NV_fragment_program)
GLenum g = glGetError(); GLenum g = glGetError();
if (g == GL_NO_ERROR) if (g == GL_NO_ERROR)
return false; return false;
...@@ -214,13 +214,19 @@ bool COpenGLShaderMaterialRenderer::checkError(const irr::c8* type) ...@@ -214,13 +214,19 @@ bool COpenGLShaderMaterialRenderer::checkError(const irr::c8* type)
core::stringc errString = type; core::stringc errString = type;
errString += " compilation failed"; errString += " compilation failed";
#if defined(GL_ARB_vertex_program)
errString += " at position "; errString += " at position ";
GLint errPos; GLint errPos=-1;
#if defined(GL_ARB_vertex_program) || defined(GL_ARB_fragment_program)
glGetIntegerv( GL_PROGRAM_ERROR_POSITION_ARB, &errPos ); glGetIntegerv( GL_PROGRAM_ERROR_POSITION_ARB, &errPos );
#else
glGetIntegerv( GL_PROGRAM_ERROR_POSITION_NV, &errPos );
#endif
errString += core::stringc(s32(errPos)); errString += core::stringc(s32(errPos));
errString += ":\n"; errString += ":\n";
#if defined(GL_ARB_vertex_program) || defined(GL_ARB_fragment_program)
errString += reinterpret_cast<const char*>(glGetString(GL_PROGRAM_ERROR_STRING_ARB)); errString += reinterpret_cast<const char*>(glGetString(GL_PROGRAM_ERROR_STRING_ARB));
#else
errString += reinterpret_cast<const char*>(glGetString(GL_PROGRAM_ERROR_STRING_NV));
#endif #endif
#else #else
core::stringc errString("Shaders not supported."); core::stringc errString("Shaders not supported.");
...@@ -259,7 +265,7 @@ bool COpenGLShaderMaterialRenderer::createPixelShader(const c8* pxsh) ...@@ -259,7 +265,7 @@ bool COpenGLShaderMaterialRenderer::createPixelShader(const c8* pxsh)
Driver->extGlGenPrograms(1, &PixelShader[i]); Driver->extGlGenPrograms(1, &PixelShader[i]);
#ifdef GL_ARB_fragment_program #ifdef GL_ARB_fragment_program
Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_ARB, PixelShader[i]); Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_ARB, PixelShader[i]);
#elif defined GL_NV_vertex_program #elif defined GL_NV_fragment_program
Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_NV, PixelShader[i]); Driver->extGlBindProgram(GL_FRAGMENT_PROGRAM_NV, PixelShader[i]);
#endif #endif
...@@ -271,7 +277,7 @@ bool COpenGLShaderMaterialRenderer::createPixelShader(const c8* pxsh) ...@@ -271,7 +277,7 @@ bool COpenGLShaderMaterialRenderer::createPixelShader(const c8* pxsh)
// compile // compile
Driver->extGlProgramString(GL_FRAGMENT_PROGRAM_ARB, GL_PROGRAM_FORMAT_ASCII_ARB, Driver->extGlProgramString(GL_FRAGMENT_PROGRAM_ARB, GL_PROGRAM_FORMAT_ASCII_ARB,
shdr.size(), shdr.c_str()); shdr.size(), shdr.c_str());
#elif defined GL_NV_vertex_program #elif defined GL_NV_fragment_program
Driver->extGlLoadProgram(GL_FRAGMENT_PROGRAM_NV, PixelShader[i], Driver->extGlLoadProgram(GL_FRAGMENT_PROGRAM_NV, PixelShader[i],
shdr.size(), shdr.c_str()); shdr.size(), shdr.c_str());
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment