[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25708] trunk/blender/source/blender/gpu: Added OpenGL debugging function to print state information, was using this as
Brecht Van Lommel
brecht at blender.org
Mon Jan 4 17:28:59 CET 2010
Revision: 25708
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25708
Author: blendix
Date: 2010-01-04 17:28:59 +0100 (Mon, 04 Jan 2010)
Log Message:
-----------
Added OpenGL debugging function to print state information, was using this as
a patch here for a while but might as well commit it.
Modified Paths:
--------------
trunk/blender/source/blender/gpu/GPU_draw.h
trunk/blender/source/blender/gpu/intern/gpu_draw.c
Modified: trunk/blender/source/blender/gpu/GPU_draw.h
===================================================================
--- trunk/blender/source/blender/gpu/GPU_draw.h 2010-01-04 16:26:07 UTC (rev 25707)
+++ trunk/blender/source/blender/gpu/GPU_draw.h 2010-01-04 16:28:59 UTC (rev 25708)
@@ -57,6 +57,10 @@
void GPU_state_init(void);
+/* Debugging */
+
+void GPU_state_print(void);
+
/* Material drawing
* - first the state is initialized by a particular object and
* it's materials
Modified: trunk/blender/source/blender/gpu/intern/gpu_draw.c
===================================================================
--- trunk/blender/source/blender/gpu/intern/gpu_draw.c 2010-01-04 16:26:07 UTC (rev 25707)
+++ trunk/blender/source/blender/gpu/intern/gpu_draw.c 2010-01-04 16:28:59 UTC (rev 25708)
@@ -1315,3 +1315,366 @@
glDisable(GL_CULL_FACE);
}
+/* debugging aid */
+static void gpu_get_print(const char *name, GLenum type)
+{
+ float value[16];
+ int a;
+
+ memset(value, 0, sizeof(value));
+ glGetFloatv(type, value);
+
+ printf("%s: ", name);
+ for(a=0; a<16; a++)
+ printf("%.2f ", value[a]);
+ printf("\n");
+}
+
+void GPU_state_print(void)
+{
+ gpu_get_print("GL_ACCUM_ALPHA_BITS", GL_ACCUM_ALPHA_BITS);
+ gpu_get_print("GL_ACCUM_BLUE_BITS", GL_ACCUM_BLUE_BITS);
+ gpu_get_print("GL_ACCUM_CLEAR_VALUE", GL_ACCUM_CLEAR_VALUE);
+ gpu_get_print("GL_ACCUM_GREEN_BITS", GL_ACCUM_GREEN_BITS);
+ gpu_get_print("GL_ACCUM_RED_BITS", GL_ACCUM_RED_BITS);
+ gpu_get_print("GL_ACTIVE_TEXTURE", GL_ACTIVE_TEXTURE);
+ gpu_get_print("GL_ALIASED_POINT_SIZE_RANGE", GL_ALIASED_POINT_SIZE_RANGE);
+ gpu_get_print("GL_ALIASED_LINE_WIDTH_RANGE", GL_ALIASED_LINE_WIDTH_RANGE);
+ gpu_get_print("GL_ALPHA_BIAS", GL_ALPHA_BIAS);
+ gpu_get_print("GL_ALPHA_BITS", GL_ALPHA_BITS);
+ gpu_get_print("GL_ALPHA_SCALE", GL_ALPHA_SCALE);
+ gpu_get_print("GL_ALPHA_TEST", GL_ALPHA_TEST);
+ gpu_get_print("GL_ALPHA_TEST_FUNC", GL_ALPHA_TEST_FUNC);
+ gpu_get_print("GL_ALPHA_TEST_REF", GL_ALPHA_TEST_REF);
+ gpu_get_print("GL_ARRAY_BUFFER_BINDING", GL_ARRAY_BUFFER_BINDING);
+ gpu_get_print("GL_ATTRIB_STACK_DEPTH", GL_ATTRIB_STACK_DEPTH);
+ gpu_get_print("GL_AUTO_NORMAL", GL_AUTO_NORMAL);
+ gpu_get_print("GL_AUX_BUFFERS", GL_AUX_BUFFERS);
+ gpu_get_print("GL_BLEND", GL_BLEND);
+ gpu_get_print("GL_BLEND_COLOR", GL_BLEND_COLOR);
+ gpu_get_print("GL_BLEND_DST_ALPHA", GL_BLEND_DST_ALPHA);
+ gpu_get_print("GL_BLEND_DST_RGB", GL_BLEND_DST_RGB);
+ gpu_get_print("GL_BLEND_EQUATION_RGB", GL_BLEND_EQUATION_RGB);
+ gpu_get_print("GL_BLEND_EQUATION_ALPHA", GL_BLEND_EQUATION_ALPHA);
+ gpu_get_print("GL_BLEND_SRC_ALPHA", GL_BLEND_SRC_ALPHA);
+ gpu_get_print("GL_BLEND_SRC_RGB", GL_BLEND_SRC_RGB);
+ gpu_get_print("GL_BLUE_BIAS", GL_BLUE_BIAS);
+ gpu_get_print("GL_BLUE_BITS", GL_BLUE_BITS);
+ gpu_get_print("GL_BLUE_SCALE", GL_BLUE_SCALE);
+ gpu_get_print("GL_CLIENT_ACTIVE_TEXTURE", GL_CLIENT_ACTIVE_TEXTURE);
+ gpu_get_print("GL_CLIENT_ATTRIB_STACK_DEPTH", GL_CLIENT_ATTRIB_STACK_DEPTH);
+ gpu_get_print("GL_CLIP_PLANE0", GL_CLIP_PLANE0);
+ gpu_get_print("GL_COLOR_ARRAY", GL_COLOR_ARRAY);
+ gpu_get_print("GL_COLOR_ARRAY_BUFFER_BINDING", GL_COLOR_ARRAY_BUFFER_BINDING);
+ gpu_get_print("GL_COLOR_ARRAY_SIZE", GL_COLOR_ARRAY_SIZE);
+ gpu_get_print("GL_COLOR_ARRAY_STRIDE", GL_COLOR_ARRAY_STRIDE);
+ gpu_get_print("GL_COLOR_ARRAY_TYPE", GL_COLOR_ARRAY_TYPE);
+ gpu_get_print("GL_COLOR_CLEAR_VALUE", GL_COLOR_CLEAR_VALUE);
+ gpu_get_print("GL_COLOR_LOGIC_OP", GL_COLOR_LOGIC_OP);
+ gpu_get_print("GL_COLOR_MATERIAL", GL_COLOR_MATERIAL);
+ gpu_get_print("GL_COLOR_MATERIAL_FACE", GL_COLOR_MATERIAL_FACE);
+ gpu_get_print("GL_COLOR_MATERIAL_PARAMETER", GL_COLOR_MATERIAL_PARAMETER);
+ gpu_get_print("GL_COLOR_MATRIX", GL_COLOR_MATRIX);
+ gpu_get_print("GL_COLOR_MATRIX_STACK_DEPTH", GL_COLOR_MATRIX_STACK_DEPTH);
+ gpu_get_print("GL_COLOR_SUM", GL_COLOR_SUM);
+ gpu_get_print("GL_COLOR_TABLE", GL_COLOR_TABLE);
+ gpu_get_print("GL_COLOR_WRITEMASK", GL_COLOR_WRITEMASK);
+ gpu_get_print("GL_COMPRESSED_TEXTURE_FORMATS", GL_COMPRESSED_TEXTURE_FORMATS);
+ gpu_get_print("GL_CONVOLUTION_1D", GL_CONVOLUTION_1D);
+ gpu_get_print("GL_CONVOLUTION_2D", GL_CONVOLUTION_2D);
+ gpu_get_print("GL_CULL_FACE", GL_CULL_FACE);
+ gpu_get_print("GL_CULL_FACE_MODE", GL_CULL_FACE_MODE);
+ gpu_get_print("GL_CURRENT_COLOR", GL_CURRENT_COLOR);
+ gpu_get_print("GL_CURRENT_FOG_COORD", GL_CURRENT_FOG_COORD);
+ gpu_get_print("GL_CURRENT_INDEX", GL_CURRENT_INDEX);
+ gpu_get_print("GL_CURRENT_NORMAL", GL_CURRENT_NORMAL);
+ gpu_get_print("GL_CURRENT_PROGRAM", GL_CURRENT_PROGRAM);
+ gpu_get_print("GL_CURRENT_RASTER_COLOR", GL_CURRENT_RASTER_COLOR);
+ gpu_get_print("GL_CURRENT_RASTER_DISTANCE", GL_CURRENT_RASTER_DISTANCE);
+ gpu_get_print("GL_CURRENT_RASTER_INDEX", GL_CURRENT_RASTER_INDEX);
+ gpu_get_print("GL_CURRENT_RASTER_POSITION", GL_CURRENT_RASTER_POSITION);
+ gpu_get_print("GL_CURRENT_RASTER_POSITION_VALID", GL_CURRENT_RASTER_POSITION_VALID);
+ gpu_get_print("GL_CURRENT_RASTER_SECONDARY_COLOR", GL_CURRENT_RASTER_SECONDARY_COLOR);
+ gpu_get_print("GL_CURRENT_RASTER_TEXTURE_COORDS", GL_CURRENT_RASTER_TEXTURE_COORDS);
+ gpu_get_print("GL_CURRENT_SECONDARY_COLOR", GL_CURRENT_SECONDARY_COLOR);
+ gpu_get_print("GL_CURRENT_TEXTURE_COORDS", GL_CURRENT_TEXTURE_COORDS);
+ gpu_get_print("GL_DEPTH_BIAS", GL_DEPTH_BIAS);
+ gpu_get_print("GL_DEPTH_BITS", GL_DEPTH_BITS);
+ gpu_get_print("GL_DEPTH_CLEAR_VALUE", GL_DEPTH_CLEAR_VALUE);
+ gpu_get_print("GL_DEPTH_FUNC", GL_DEPTH_FUNC);
+ gpu_get_print("GL_DEPTH_RANGE", GL_DEPTH_RANGE);
+ gpu_get_print("GL_DEPTH_SCALE", GL_DEPTH_SCALE);
+ gpu_get_print("GL_DEPTH_TEST", GL_DEPTH_TEST);
+ gpu_get_print("GL_DEPTH_WRITEMASK", GL_DEPTH_WRITEMASK);
+ gpu_get_print("GL_DITHER", GL_DITHER);
+ gpu_get_print("GL_DOUBLEBUFFER", GL_DOUBLEBUFFER);
+ gpu_get_print("GL_DRAW_BUFFER", GL_DRAW_BUFFER);
+ gpu_get_print("GL_DRAW_BUFFER0", GL_DRAW_BUFFER0);
+ gpu_get_print("GL_EDGE_FLAG", GL_EDGE_FLAG);
+ gpu_get_print("GL_EDGE_FLAG_ARRAY", GL_EDGE_FLAG_ARRAY);
+ gpu_get_print("GL_EDGE_FLAG_ARRAY_BUFFER_BINDING", GL_EDGE_FLAG_ARRAY_BUFFER_BINDING);
+ gpu_get_print("GL_EDGE_FLAG_ARRAY_STRIDE", GL_EDGE_FLAG_ARRAY_STRIDE);
+ gpu_get_print("GL_ELEMENT_ARRAY_BUFFER_BINDING", GL_ELEMENT_ARRAY_BUFFER_BINDING);
+ gpu_get_print("GL_FEEDBACK_BUFFER_SIZE", GL_FEEDBACK_BUFFER_SIZE);
+ gpu_get_print("GL_FEEDBACK_BUFFER_TYPE", GL_FEEDBACK_BUFFER_TYPE);
+ gpu_get_print("GL_FOG", GL_FOG);
+ gpu_get_print("GL_FOG_COORD_ARRAY", GL_FOG_COORD_ARRAY);
+ gpu_get_print("GL_FOG_COORD_ARRAY_BUFFER_BINDING", GL_FOG_COORD_ARRAY_BUFFER_BINDING);
+ gpu_get_print("GL_FOG_COORD_ARRAY_STRIDE", GL_FOG_COORD_ARRAY_STRIDE);
+ gpu_get_print("GL_FOG_COORD_ARRAY_TYPE", GL_FOG_COORD_ARRAY_TYPE);
+ gpu_get_print("GL_FOG_COORD_SRC", GL_FOG_COORD_SRC);
+ gpu_get_print("GL_FOG_COLOR", GL_FOG_COLOR);
+ gpu_get_print("GL_FOG_DENSITY", GL_FOG_DENSITY);
+ gpu_get_print("GL_FOG_END", GL_FOG_END);
+ gpu_get_print("GL_FOG_HINT", GL_FOG_HINT);
+ gpu_get_print("GL_FOG_INDEX", GL_FOG_INDEX);
+ gpu_get_print("GL_FOG_MODE", GL_FOG_MODE);
+ gpu_get_print("GL_FOG_START", GL_FOG_START);
+ gpu_get_print("GL_FRAGMENT_SHADER_DERIVATIVE_HINT", GL_FRAGMENT_SHADER_DERIVATIVE_HINT);
+ gpu_get_print("GL_FRONT_FACE", GL_FRONT_FACE);
+ gpu_get_print("GL_GENERATE_MIPMAP_HINT", GL_GENERATE_MIPMAP_HINT);
+ gpu_get_print("GL_GREEN_BIAS", GL_GREEN_BIAS);
+ gpu_get_print("GL_GREEN_BITS", GL_GREEN_BITS);
+ gpu_get_print("GL_GREEN_SCALE", GL_GREEN_SCALE);
+ gpu_get_print("GL_HISTOGRAM", GL_HISTOGRAM);
+ gpu_get_print("GL_INDEX_ARRAY", GL_INDEX_ARRAY);
+ gpu_get_print("GL_INDEX_ARRAY_BUFFER_BINDING", GL_INDEX_ARRAY_BUFFER_BINDING);
+ gpu_get_print("GL_INDEX_ARRAY_STRIDE", GL_INDEX_ARRAY_STRIDE);
+ gpu_get_print("GL_INDEX_ARRAY_TYPE", GL_INDEX_ARRAY_TYPE);
+ gpu_get_print("GL_INDEX_BITS", GL_INDEX_BITS);
+ gpu_get_print("GL_INDEX_CLEAR_VALUE", GL_INDEX_CLEAR_VALUE);
+ gpu_get_print("GL_INDEX_LOGIC_OP", GL_INDEX_LOGIC_OP);
+ gpu_get_print("GL_INDEX_MODE", GL_INDEX_MODE);
+ gpu_get_print("GL_INDEX_OFFSET", GL_INDEX_OFFSET);
+ gpu_get_print("GL_INDEX_SHIFT", GL_INDEX_SHIFT);
+ gpu_get_print("GL_INDEX_WRITEMASK", GL_INDEX_WRITEMASK);
+ gpu_get_print("GL_LIGHT0", GL_LIGHT0);
+ gpu_get_print("GL_LIGHTING", GL_LIGHTING);
+ gpu_get_print("GL_LIGHT_MODEL_AMBIENT", GL_LIGHT_MODEL_AMBIENT);
+ gpu_get_print("GL_LIGHT_MODEL_COLOR_CONTROL", GL_LIGHT_MODEL_COLOR_CONTROL);
+ gpu_get_print("GL_LIGHT_MODEL_LOCAL_VIEWER", GL_LIGHT_MODEL_LOCAL_VIEWER);
+ gpu_get_print("GL_LIGHT_MODEL_TWO_SIDE", GL_LIGHT_MODEL_TWO_SIDE);
+ gpu_get_print("GL_LINE_SMOOTH", GL_LINE_SMOOTH);
+ gpu_get_print("GL_LINE_SMOOTH_HINT", GL_LINE_SMOOTH_HINT);
+ gpu_get_print("GL_LINE_STIPPLE", GL_LINE_STIPPLE);
+ gpu_get_print("GL_LINE_STIPPLE_PATTERN", GL_LINE_STIPPLE_PATTERN);
+ gpu_get_print("GL_LINE_STIPPLE_REPEAT", GL_LINE_STIPPLE_REPEAT);
+ gpu_get_print("GL_LINE_WIDTH", GL_LINE_WIDTH);
+ gpu_get_print("GL_LINE_WIDTH_GRANULARITY", GL_LINE_WIDTH_GRANULARITY);
+ gpu_get_print("GL_LINE_WIDTH_RANGE", GL_LINE_WIDTH_RANGE);
+ gpu_get_print("GL_LIST_BASE", GL_LIST_BASE);
+ gpu_get_print("GL_LIST_INDEX", GL_LIST_INDEX);
+ gpu_get_print("GL_LIST_MODE", GL_LIST_MODE);
+ gpu_get_print("GL_LOGIC_OP_MODE", GL_LOGIC_OP_MODE);
+ gpu_get_print("GL_MAP1_COLOR_4", GL_MAP1_COLOR_4);
+ gpu_get_print("GL_MAP1_GRID_DOMAIN", GL_MAP1_GRID_DOMAIN);
+ gpu_get_print("GL_MAP1_GRID_SEGMENTS", GL_MAP1_GRID_SEGMENTS);
+ gpu_get_print("GL_MAP1_INDEX", GL_MAP1_INDEX);
+ gpu_get_print("GL_MAP1_NORMAL", GL_MAP1_NORMAL);
+ gpu_get_print("GL_MAP1_TEXTURE_COORD_1", GL_MAP1_TEXTURE_COORD_1);
+ gpu_get_print("GL_MAP1_TEXTURE_COORD_2", GL_MAP1_TEXTURE_COORD_2);
+ gpu_get_print("GL_MAP1_TEXTURE_COORD_3", GL_MAP1_TEXTURE_COORD_3);
+ gpu_get_print("GL_MAP1_TEXTURE_COORD_4", GL_MAP1_TEXTURE_COORD_4);
+ gpu_get_print("GL_MAP1_VERTEX_3", GL_MAP1_VERTEX_3);
+ gpu_get_print("GL_MAP1_VERTEX_4", GL_MAP1_VERTEX_4);
+ gpu_get_print("GL_MAP2_COLOR_4", GL_MAP2_COLOR_4);
+ gpu_get_print("GL_MAP2_GRID_DOMAIN", GL_MAP2_GRID_DOMAIN);
+ gpu_get_print("GL_MAP2_GRID_SEGMENTS", GL_MAP2_GRID_SEGMENTS);
+ gpu_get_print("GL_MAP2_INDEX", GL_MAP2_INDEX);
+ gpu_get_print("GL_MAP2_NORMAL", GL_MAP2_NORMAL);
+ gpu_get_print("GL_MAP2_TEXTURE_COORD_1", GL_MAP2_TEXTURE_COORD_1);
+ gpu_get_print("GL_MAP2_TEXTURE_COORD_2", GL_MAP2_TEXTURE_COORD_2);
+ gpu_get_print("GL_MAP2_TEXTURE_COORD_3", GL_MAP2_TEXTURE_COORD_3);
+ gpu_get_print("GL_MAP2_TEXTURE_COORD_4", GL_MAP2_TEXTURE_COORD_4);
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list