[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [61087] trunk/blender/source/gameengine: BGE Rasterizer Cleanup: Removing RAS_IRenderTools and moving the functionality to RAS_IRasterizer.

Mitchell Stokes mogurijin at gmail.com
Mon Nov 4 20:21:08 CET 2013


Revision: 61087
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=61087
Author:   moguri
Date:     2013-11-04 19:21:07 +0000 (Mon, 04 Nov 2013)
Log Message:
-----------
BGE Rasterizer Cleanup: Removing RAS_IRenderTools and moving the functionality to RAS_IRasterizer. RAS_OpenGLRasterizer is a bit of a mess now with references to Ketsji and other modules it shouldn't be accessing.

Modified Paths:
--------------
    trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    trunk/blender/source/gameengine/BlenderRoutines/CMakeLists.txt
    trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
    trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.h
    trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
    trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.h
    trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
    trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.h
    trunk/blender/source/gameengine/GamePlayer/common/CMakeLists.txt
    trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
    trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.h
    trunk/blender/source/gameengine/Ketsji/KX_Dome.cpp
    trunk/blender/source/gameengine/Ketsji/KX_Dome.h
    trunk/blender/source/gameengine/Ketsji/KX_FontObject.cpp
    trunk/blender/source/gameengine/Ketsji/KX_FontObject.h
    trunk/blender/source/gameengine/Ketsji/KX_ISceneConverter.h
    trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
    trunk/blender/source/gameengine/Ketsji/KX_KetsjiEngine.h
    trunk/blender/source/gameengine/Ketsji/KX_Light.cpp
    trunk/blender/source/gameengine/Ketsji/KX_Light.h
    trunk/blender/source/gameengine/Ketsji/KX_Scene.cpp
    trunk/blender/source/gameengine/Ketsji/KX_Scene.h
    trunk/blender/source/gameengine/Rasterizer/CMakeLists.txt
    trunk/blender/source/gameengine/Rasterizer/RAS_BucketManager.cpp
    trunk/blender/source/gameengine/Rasterizer/RAS_BucketManager.h
    trunk/blender/source/gameengine/Rasterizer/RAS_IRasterizer.h
    trunk/blender/source/gameengine/Rasterizer/RAS_MaterialBucket.cpp
    trunk/blender/source/gameengine/Rasterizer/RAS_MaterialBucket.h
    trunk/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/CMakeLists.txt
    trunk/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
    trunk/blender/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h
    trunk/blender/source/gameengine/VideoTexture/ImageRender.cpp
    trunk/blender/source/gameengine/VideoTexture/ImageRender.h

Removed Paths:
-------------
    trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp
    trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.h
    trunk/blender/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp
    trunk/blender/source/gameengine/GamePlayer/common/GPC_RenderTools.h
    trunk/blender/source/gameengine/Rasterizer/RAS_IRenderTools.cpp
    trunk/blender/source/gameengine/Rasterizer/RAS_IRenderTools.h

Modified: trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp	2013-11-04 18:58:22 UTC (rev 61086)
+++ trunk/blender/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp	2013-11-04 19:21:07 UTC (rev 61087)
@@ -46,7 +46,6 @@
 #include "KX_BlenderCanvas.h"
 #include "KX_BlenderKeyboardDevice.h"
 #include "KX_BlenderMouseDevice.h"
-#include "KX_BlenderRenderTools.h"
 #include "KX_BlenderSystem.h"
 #include "BL_Material.h"
 
@@ -276,7 +275,7 @@
 
 		if (animation_record) usefixed= false; /* override since you don't want to run full-speed for sim recording */
 
-		// create the canvas, rasterizer and rendertools
+		// create the canvas and rasterizer
 		RAS_ICanvas* canvas = new KX_BlenderCanvas(wm, win, area_rect, ar);
 		
 		// default mouse state set on render panel
@@ -292,7 +291,6 @@
 		else
 			canvas->SetSwapInterval((startscene->gm.vsync == VSYNC_ON) ? 1 : 0);
 
-		RAS_IRenderTools* rendertools = new KX_BlenderRenderTools();
 		RAS_IRasterizer* rasterizer = NULL;
 		//Don't use displaylists with VBOs
 		//If auto starts using VBOs, make sure to check for that here
@@ -324,7 +322,6 @@
 		ketsjiengine->SetMouseDevice(mousedevice);
 		ketsjiengine->SetNetworkDevice(networkdevice);
 		ketsjiengine->SetCanvas(canvas);
-		ketsjiengine->SetRenderTools(rendertools);
 		ketsjiengine->SetRasterizer(rasterizer);
 		ketsjiengine->SetUseFixedTime(usefixed);
 		ketsjiengine->SetTimingDisplay(frameRate, profile, properties);
@@ -518,7 +515,7 @@
 				// convert and add scene
 				sceneconverter->ConvertScene(
 					startscene,
-					rendertools,
+				    rasterizer,
 					canvas);
 				ketsjiengine->AddScene(startscene);
 				
@@ -664,11 +661,6 @@
 			delete rasterizer;
 			rasterizer = NULL;
 		}
-		if (rendertools)
-		{
-			delete rendertools;
-			rendertools = NULL;
-		}
 		if (canvas)
 		{
 			canvas->SetSwapInterval(previous_vsync); // Set the swap interval back

Modified: trunk/blender/source/gameengine/BlenderRoutines/CMakeLists.txt
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/CMakeLists.txt	2013-11-04 18:58:22 UTC (rev 61086)
+++ trunk/blender/source/gameengine/BlenderRoutines/CMakeLists.txt	2013-11-04 19:21:07 UTC (rev 61087)
@@ -43,7 +43,6 @@
 	KX_BlenderInputDevice.cpp
 	KX_BlenderKeyboardDevice.cpp
 	KX_BlenderMouseDevice.cpp
-	KX_BlenderRenderTools.cpp
 	KX_BlenderSystem.cpp
 
 	BL_System.h
@@ -52,7 +51,6 @@
 	KX_BlenderInputDevice.h
 	KX_BlenderKeyboardDevice.h
 	KX_BlenderMouseDevice.h
-	KX_BlenderRenderTools.h
 	KX_BlenderSystem.h
 )
 

Modified: trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp	2013-11-04 18:58:22 UTC (rev 61086)
+++ trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp	2013-11-04 19:21:07 UTC (rev 61087)
@@ -108,169 +108,6 @@
 	return wm_window_get_swap_interval(win);
 }
 
-static void DisableForText()
-{
-	glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); /* needed for texture fonts otherwise they render as wireframe */
-
-	glDisable(GL_BLEND);
-	glDisable(GL_ALPHA_TEST);
-
-	glDisable(GL_LIGHTING);
-	glDisable(GL_COLOR_MATERIAL);
-
-	if (GLEW_ARB_multitexture) {
-		for (int i=0; i<MAXTEX; i++) {
-			glActiveTextureARB(GL_TEXTURE0_ARB+i);
-
-			if (GLEW_ARB_texture_cube_map)
-				glDisable(GL_TEXTURE_CUBE_MAP_ARB);
-
-			glDisable(GL_TEXTURE_2D);
-		}
-
-		glActiveTextureARB(GL_TEXTURE0_ARB);
-	}
-	else {
-		if (GLEW_ARB_texture_cube_map)
-			glDisable(GL_TEXTURE_CUBE_MAP_ARB);
-
-		glDisable(GL_TEXTURE_2D);
-	}
-}
-
-void BL_draw_gamedebug_box(int xco, int yco, int width, int height, float percentage)
-{
-	/* This is a rather important line :( The gl-mode hasn't been left
-	 * behind quite as neatly as we'd have wanted to. I don't know
-	 * what cause it, though :/ .*/
-	glDisable(GL_DEPTH_TEST);
-	
-	glMatrixMode(GL_PROJECTION);
-	glPushMatrix();
-	glLoadIdentity();
-	
-	glOrtho(0, width, 0, height, -100, 100);
-	
-	glMatrixMode(GL_MODELVIEW);
-	glPushMatrix();
-	glLoadIdentity();
-	
-	yco = height - yco;
-	int barsize = 50;
-
-	/* draw in black first*/
-	glColor3ub(0, 0, 0);
-	glBegin(GL_QUADS);
-	glVertex2f(xco + 1 + 1 + barsize * percentage, yco - 1 + 10);
-	glVertex2f(xco + 1, yco - 1 + 10);
-	glVertex2f(xco + 1, yco - 1);
-	glVertex2f(xco + 1 + 1 + barsize * percentage, yco - 1);
-	glEnd();
-	
-	glColor3ub(255, 255, 255);
-	glBegin(GL_QUADS);
-	glVertex2f(xco + 1 + barsize * percentage, yco + 10);
-	glVertex2f(xco, yco + 10);
-	glVertex2f(xco, yco);
-	glVertex2f(xco + 1 + barsize * percentage, yco);
-	glEnd();
-	
-	glMatrixMode(GL_PROJECTION);
-	glPopMatrix();
-	glMatrixMode(GL_MODELVIEW);
-	glPopMatrix();
-	glEnable(GL_DEPTH_TEST);
-}
-
-/* Print 3D text */
-void BL_print_game_line(int fontid, const char *text, int size, int dpi, float *color, double *mat, float aspect)
-{
-	/* gl prepping */
-	DisableForText();
-
-	/* the actual drawing */
-	glColor4fv(color);
-
-	/* multiply the text matrix by the object matrix */
-	BLF_enable(fontid, BLF_MATRIX|BLF_ASPECT);
-	BLF_matrix(fontid, mat);
-
-	/* aspect is the inverse scale that allows you to increase */
-	/* your resolution without sizing the final text size      */
-	/* the bigger the size, the smaller the aspect	           */
-	BLF_aspect(fontid, aspect, aspect, aspect);
-
-	BLF_size(fontid, size, dpi);
-	BLF_position(fontid, 0, 0, 0);
-	BLF_draw(fontid, (char *)text, 65535);
-
-	BLF_disable(fontid, BLF_MATRIX|BLF_ASPECT);
-}
-
-void BL_print_gamedebug_line(const char *text, int xco, int yco, int width, int height)
-{
-	/* gl prepping */
-	DisableForText();
-	glDisable(GL_DEPTH_TEST);
-
-	glMatrixMode(GL_PROJECTION);
-	glPushMatrix();
-	glLoadIdentity();
-
-	glOrtho(0, width, 0, height, -100, 100);
-
-	glMatrixMode(GL_MODELVIEW);
-	glPushMatrix();
-	glLoadIdentity();
-
-	/* the actual drawing */
-	glColor3ub(255, 255, 255);
-	BLF_size(blf_mono_font, 11, 72);
-	BLF_position(blf_mono_font, (float)xco, (float)(height-yco), 0.0f);
-	BLF_draw(blf_mono_font, (char *)text, 65535); /* XXX, use real len */
-
-	glMatrixMode(GL_PROJECTION);
-	glPopMatrix();
-	glMatrixMode(GL_MODELVIEW);
-	glPopMatrix();
-	glEnable(GL_DEPTH_TEST);
-}
-
-void BL_print_gamedebug_line_padded(const char *text, int xco, int yco, int width, int height)
-{
-	/* This is a rather important line :( The gl-mode hasn't been left
-	 * behind quite as neatly as we'd have wanted to. I don't know
-	 * what cause it, though :/ .*/
-	DisableForText();
-	glDisable(GL_DEPTH_TEST);
-
-	glMatrixMode(GL_PROJECTION);
-	glPushMatrix();
-	glLoadIdentity();
-	
-	glOrtho(0, width, 0, height, -100, 100);
-	
-	glMatrixMode(GL_MODELVIEW);
-	glPushMatrix();
-	glLoadIdentity();
-
-	/* draw in black first*/
-	glColor3ub(0, 0, 0);
-	BLF_size(blf_mono_font, 11, 72);
-	BLF_position(blf_mono_font, (float)xco+1, (float)(height-yco-1), 0.0f);
-	BLF_draw(blf_mono_font, (char *)text, 65535);/* XXX, use real len */
-	
-	glColor3ub(255, 255, 255);
-	BLF_position(blf_mono_font, (float)xco, (float)(height-yco), 0.0f);
-	BLF_draw(blf_mono_font, (char *)text, 65535);
-
-	glMatrixMode(GL_PROJECTION);
-	glPopMatrix();
-	glMatrixMode(GL_MODELVIEW);
-	glPopMatrix();
-	glEnable(GL_DEPTH_TEST);
-}
-
 void BL_HideMouse(wmWindow *win)
 {
 	WM_cursor_set(win, CURSOR_NONE);

Modified: trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.h
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.h	2013-11-04 18:58:22 UTC (rev 61086)
+++ trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.h	2013-11-04 19:21:07 UTC (rev 61087)
@@ -56,13 +56,8 @@
 void	BL_NormalMouse(struct wmWindow *win);
 void	BL_WaitMouse(struct wmWindow *win);
 
-void BL_draw_gamedebug_box(int xco, int yco, int width, int height, float percentage);
-void BL_print_game_line(int fontid, const char* text, int size, int dpi, float* color, double* mat, float aspect);
-void BL_print_gamedebug_line(const char* text, int xco, int yco, int width, int height);
-void BL_print_gamedebug_line_padded(const char* text, int xco, int yco, int width, int height);
 
 
-
 #ifdef __cplusplus
 }
 #endif  /* __cplusplus */

Deleted: trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp
===================================================================
--- trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp	2013-11-04 18:58:22 UTC (rev 61086)
+++ trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp	2013-11-04 19:21:07 UTC (rev 61087)
@@ -1,410 +0,0 @@
-/*
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
- * All rights reserved.
- *
- * The Original Code is: all of this file.
- *
- * Contributor(s): none yet.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/** \file gameengine/BlenderRoutines/KX_BlenderRenderTools.cpp
- *  \ingroup blroutines
- */
-
-
-#include "GL/glew.h"
-
-#include "RAS_IRenderTools.h"
-#include "RAS_IRasterizer.h"
-#include "RAS_LightObject.h"
-#include "RAS_ICanvas.h"
-#include "RAS_GLExtensionManager.h"
-#include "RAS_MeshObject.h"
-
-#include "KX_GameObject.h"
-#include "KX_PolygonMaterial.h"
-#include "KX_BlenderMaterial.h"
-#include "KX_RayCast.h"
-#include "KX_IPhysicsController.h"
-#include "KX_Light.h"
-
-#include "PHY_IPhysicsEnvironment.h"
-
-#include "STR_String.h"
-
-#include "GPU_draw.h"
-
-#include "KX_BlenderGL.h" // for text printing
-#include "KX_BlenderRenderTools.h"
-
-unsigned int KX_BlenderRenderTools::m_numgllights;
-
-KX_BlenderRenderTools::KX_BlenderRenderTools()

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list