bad char
[vg.git] / src / vg / vg_gldiag.h
1 #define VG_GLDIAG_GL_GET_STRING( o, x ) fprintf( o, #x ": %s\n", glGetString( x ) );
2
3 static void vg_check_gl_integerv( FILE *log, GLenum name, const char *stringname )
4 {
5 GLint data;
6 glGetIntegerv( name, &data );
7 fprintf( log, "%s:%d\n", stringname, data );
8 }
9
10 #define VG_GLDIAG_GL_INTEGERV( o, x ) vg_check_gl_integerv( o, x, #x );
11
12 static int vg_run_gfx_diagnostics(void)
13 {
14 #if 0
15 FILE *log = fopen( "gldiag.txt", "w" );
16 if( log )
17 {
18 VG_GLDIAG_GL_GET_STRING( log, GL_VERSION )
19 VG_GLDIAG_GL_GET_STRING( log, GL_VENDOR )
20 VG_GLDIAG_GL_GET_STRING( log, GL_RENDERER )
21 VG_GLDIAG_GL_GET_STRING( log, GL_SHADING_LANGUAGE_VERSION )
22
23 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_3D_TEXTURE_SIZE )
24 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_ARRAY_TEXTURE_LAYERS )
25 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_CLIP_DISTANCES )
26 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_COLOR_TEXTURE_SAMPLES )
27 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_COMBINED_UNIFORM_BLOCKS )
28 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS )
29 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_DRAW_BUFFERS )
30 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_ELEMENTS_INDICES )
31 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_ELEMENTS_VERTICES )
32 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_FRAGMENT_UNIFORM_BLOCKS )
33 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_RENDERBUFFER_SIZE )
34 VG_GLDIAG_GL_INTEGERV( log, GL_MAX_UNIFORM_BLOCK_SIZE )
35 VG_GLDIAG_GL_INTEGERV( log, GL_NUM_EXTENSIONS )
36 VG_GLDIAG_GL_INTEGERV( log, GL_PACK_ALIGNMENT )
37
38 fclose( log );
39 }
40 #endif
41
42 return 0;
43 }