@@ -1349,12 +1349,15 @@ static void APIENTRY debug_callback(GLenum source, GLenum type, GLuint id, GLenu
13491349 break ;
13501350 }
13511351
1352+ bool print_to_general_log = false ;
13521353 switch (severity) {
13531354 case GL_DEBUG_SEVERITY_HIGH_ARB:
13541355 severityStr = " High" ;
1356+ print_to_general_log = true ; // High and medium messages are sent to the normal log for later troubleshooting
13551357 break ;
13561358 case GL_DEBUG_SEVERITY_MEDIUM_ARB:
13571359 severityStr = " Medium" ;
1360+ print_to_general_log = true ;
13581361 break ;
13591362 case GL_DEBUG_SEVERITY_LOW_ARB:
13601363 severityStr = " Low" ;
@@ -1364,8 +1367,14 @@ static void APIENTRY debug_callback(GLenum source, GLenum type, GLuint id, GLenu
13641367 break ;
13651368 }
13661369
1367- nprintf ((" OpenGL Debug" , " OpenGL Debug: Source:%s\t Type:%s\t ID:%d\t Severity:%s\t Message:%s\n " ,
1368- sourceStr, typeStr, id, severityStr, message));
1370+ if (print_to_general_log) {
1371+ mprintf ((" OpenGL Debug: Source:%s\t Type:%s\t ID:%d\t Severity:%s\t Message:%s\n " ,
1372+ sourceStr, typeStr, id, severityStr, message));
1373+ } else {
1374+ // We still print these messages but only to the special debug stream
1375+ nprintf ((" OpenGL Debug" , " OpenGL Debug: Source:%s\t Type:%s\t ID:%d\t Severity:%s\t Message:%s\n " ,
1376+ sourceStr, typeStr, id, severityStr, message));
1377+ }
13691378 printf (" OpenGL Debug: Source:%s\t Type:%s\t ID:%d\t Severity:%s\t Message:%s\n " ,
13701379 sourceStr, typeStr, id, severityStr, message);
13711380}
0 commit comments