From 42723fec8f01d36cae331e31a8c6ad3500fb1f59 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Tue, 11 Dec 2007 11:57:32 +0000 Subject: [PATCH] From Joseph Steel, "he change is to initializeExtensionProcs() to verify the version of the OpenGL implementation before attempting to get the MaxTextureCoords parameter." --- src/osg/State.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/osg/State.cpp b/src/osg/State.cpp index 9e33202ec..14f0c1c4a 100644 --- a/src/osg/State.cpp +++ b/src/osg/State.cpp @@ -742,12 +742,18 @@ void State::initializeExtensionProcs() _glDisableVertexAttribArray = (DisableVertexAttribProc) osg::getGLExtensionFuncPtr("glDisableVertexAttribArray","glDisableVertexAttribArrayARB"); _glBindBuffer = (BindBufferProc) osg::getGLExtensionFuncPtr("glBindBuffer","glBindBufferARB"); - _glMaxTextureCoords = 1; - glGetIntegerv(GL_MAX_TEXTURE_COORDS,&_glMaxTextureCoords); - _glMaxTextureUnits = 1; glGetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS,&_glMaxTextureUnits); - _glMaxTextureUnits = maximum(_glMaxTextureCoords,_glMaxTextureUnits); + + if (osg::getGLVersionNumber() < 2.0) + { + _glMaxTextureCoords = _glMaxTextureUnits; + } + else + { + glGetIntegerv(GL_MAX_TEXTURE_COORDS,&_glMaxTextureCoords); + _glMaxTextureUnits = maximum(_glMaxTextureCoords,_glMaxTextureUnits); + } _extensionProcsInitialized = true; }