[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17032] trunk/blender/source/gameengine/ BlenderRoutines: Fix for two more game engine issues:

Brecht Van Lommel brecht at blender.org
Sun Oct 12 01:48:37 CEST 2008


Revision: 17032
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17032
Author:   blendix
Date:     2008-10-12 01:48:37 +0200 (Sun, 12 Oct 2008)

Log Message:
-----------
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?\195?\169 Ignacio Romero, thanks!

Modified Paths:
--------------
    trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp

Modified: trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp	2008-10-11 22:29:50 UTC (rev 17031)
+++ trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp	2008-10-11 23:48:37 UTC (rev 17032)
@@ -340,8 +340,10 @@
 			else if(G.fileflags & G_FILE_GAME_MAT_GLSL)
 				usemat = false;
 
-			sceneconverter->SetMaterials(usemat && (G.fileflags & G_FILE_GAME_MAT));
-			sceneconverter->SetGLSLMaterials(useglslmat && (G.fileflags & G_FILE_GAME_MAT_GLSL));
+            if(usemat && (G.fileflags & G_FILE_GAME_MAT))
+				sceneconverter->SetMaterials(true);
+			if(useglslmat && (G.fileflags & G_FILE_GAME_MAT_GLSL))
+				sceneconverter->SetGLSLMaterials(true);
 					
 			KX_Scene* startscene = new KX_Scene(keyboarddevice,
 				mousedevice,

Modified: trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp	2008-10-11 22:29:50 UTC (rev 17031)
+++ trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp	2008-10-11 23:48:37 UTC (rev 17032)
@@ -102,16 +102,28 @@
 		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)





More information about the Bf-blender-cvs mailing list