diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-10-12 03:48:37 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-10-12 03:48:37 +0400 |
commit | 513b544bbc432f3e1d306182758b83cdf52b131a (patch) | |
tree | e7c11a904e6dfe93d37f19564fb6c24b1b05e090 /source/gameengine/BlenderRoutines/KX_BlenderGL.cpp | |
parent | d3c661e6823538e956c21f7d64d972efe8e785c7 (diff) |
Fix for two more game engine issues:
* Debug text drawing didn't disable textures correct leaving
texture state invalid, quite old issue.
* Multitexture materials didn't get enabled correct, recent bug.
Both pointed out by José Ignacio Romero, thanks!
Diffstat (limited to 'source/gameengine/BlenderRoutines/KX_BlenderGL.cpp')
-rw-r--r-- | source/gameengine/BlenderRoutines/KX_BlenderGL.cpp | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp b/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp index 669e7bd1b3f..54d1eb7e011 100644 --- a/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp +++ b/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp @@ -102,16 +102,28 @@ void DisableForText() glDisable(GL_COLOR_MATERIAL); } - if(GLEW_ARB_multitexture) - for(int i=0; i<MAXTEX; i++) + if(GLEW_ARB_multitexture) { + for(int i=0; i<MAXTEX; i++) { glActiveTextureARB(GL_TEXTURE0_ARB+i); - if(GLEW_ARB_texture_cube_map) - if(glIsEnabled(GL_TEXTURE_CUBE_MAP_ARB)) - glDisable(GL_TEXTURE_CUBE_MAP_ARB); + if(GLEW_ARB_texture_cube_map) + if(glIsEnabled(GL_TEXTURE_CUBE_MAP_ARB)) + glDisable(GL_TEXTURE_CUBE_MAP_ARB); - if(glIsEnabled(GL_TEXTURE_2D)) - glDisable(GL_TEXTURE_2D); + if(glIsEnabled(GL_TEXTURE_2D)) + glDisable(GL_TEXTURE_2D); + } + + glActiveTextureARB(GL_TEXTURE0_ARB); + } + else { + if(GLEW_ARB_texture_cube_map) + if(glIsEnabled(GL_TEXTURE_CUBE_MAP_ARB)) + glDisable(GL_TEXTURE_CUBE_MAP_ARB); + + if(glIsEnabled(GL_TEXTURE_2D)) + glDisable(GL_TEXTURE_2D); + } } void BL_print_gamedebug_line(char* text, int xco, int yco, int width, int height) |