[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48554] branches/soc-2012-swiss_cheese/ source/blender/gpu/intern: Some temporarily changes for GLES.

Alexander Kuznetsov kuzsasha at gmail.com
Tue Jul 3 18:41:26 CEST 2012


Revision: 48554
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48554
Author:   alexk
Date:     2012-07-03 16:41:25 +0000 (Tue, 03 Jul 2012)
Log Message:
-----------
Some temporarily changes for GLES.
Plus attrib location assigning for GLES.

Modified Paths:
--------------
    branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate.h
    branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate_gl11.c
    branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_material.c

Modified: branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate.h
===================================================================
--- branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate.h	2012-07-03 16:26:38 UTC (rev 48553)
+++ branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate.h	2012-07-03 16:41:25 UTC (rev 48554)
@@ -33,12 +33,16 @@
 #define __GPU_IMMEDIATE_H__
 
 #ifdef GLES
+#include REAL_GL_MODE
 #include <GLES2/gl2.h>
+#include <GL/glew.h>
 #else
 #include <GL/glew.h>
 #endif
 
+#ifndef GLES
 #include <stdlib.h>
+#endif
 
 #include "BLI_utildefines.h"
 

Modified: branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate_gl11.c
===================================================================
--- branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate_gl11.c	2012-07-03 16:26:38 UTC (rev 48553)
+++ branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_immediate_gl11.c	2012-07-03 16:41:25 UTC (rev 48554)
@@ -42,8 +42,10 @@
 	GLubyte* ptr;
 } bufferDataGL11;
 
+#ifdef GLES
+#define glClientActiveTexture
+#endif
 
-
 static void allocate(void)
 {
 	size_t newSize;

Modified: branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_material.c
===================================================================
--- branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_material.c	2012-07-03 16:26:38 UTC (rev 48553)
+++ branches/soc-2012-swiss_cheese/source/blender/gpu/intern/gpu_material.c	2012-07-03 16:41:25 UTC (rev 48554)
@@ -33,6 +33,11 @@
 #include <math.h>
 #include <string.h>
 
+#ifdef GLES
+#include <GLES2/gl2.h>
+#endif
+
+
 #include <GL/glew.h>
 
 #include "MEM_guardedalloc.h"
@@ -61,9 +66,15 @@
 
 #include "GPU_extensions.h"
 #include "GPU_material.h"
+#include "GPU_matrix.h"
 
 #include "gpu_codegen.h"
 
+#ifdef GLES
+#include "gpu_object_gles.h"
+#endif
+
+
 #include <string.h>
 
 /* Structs */
@@ -75,6 +86,7 @@
 	DYN_LAMP_PERSMAT = 8,
 } DynMatProperty;
 
+
 struct GPUMaterial {
 	Scene *scene;
 	Material *ma;
@@ -95,7 +107,11 @@
 	int viewmatloc, invviewmatloc;
 	int obmatloc, invobmatloc;
 	int obcolloc, obautobumpscaleloc;
-
+	
+#ifdef GLES	
+	struct GPUGLSL_ES_info glslloc;
+#endif
+	
 	ListBase lamps;
 };
 
@@ -221,6 +237,11 @@
 			material->obcolloc = GPU_shader_get_uniform(shader, GPU_builtin_name(GPU_OBCOLOR));
 		if (material->builtins & GPU_AUTO_BUMPSCALE)
 			material->obautobumpscaleloc = GPU_shader_get_uniform(shader, GPU_builtin_name(GPU_AUTO_BUMPSCALE));
+
+		#ifdef GLES
+		gpu_assign_gles_loc(&material->glslloc, shader->object);
+		#endif					
+			
 		return 1;
 	}
 
@@ -339,6 +360,9 @@
 		}
 
 		GPU_pass_update_uniforms(material->pass);
+#ifdef GLES
+		gpu_set_shader_es(&material->glslloc,1);
+#endif
 	}
 }
 
@@ -2032,4 +2056,3 @@
 
 	MEM_freeN(shader);
 }
-




More information about the Bf-blender-cvs mailing list