GLDebug: Trim NVidia debug output

These buffer detailed infos are not needed unless going deep into
perf. profiling, in which case you can still disable this compile option.

This makes user report log much more readable.
This commit is contained in:
Clément Foucault 2020-09-05 16:47:31 +02:00
parent 71872e3809
commit 9764d3e4dc
1 changed files with 12 additions and 0 deletions

View File

@ -30,6 +30,8 @@
#include "BKE_global.h"
#include "GPU_platform.h"
#include "glew-mx.h"
#include "gl_context.hh"
@ -39,6 +41,9 @@
#include <stdio.h>
/* Avoid too much NVidia buffer info in the output log. */
#define TRIM_NVIDIA_BUFFER_INFO 1
namespace blender::gpu::debug {
/* -------------------------------------------------------------------- */
@ -67,6 +72,13 @@ static void APIENTRY debug_callback(GLenum UNUSED(source),
{
const char format[] = "GPUDebug: %s%s\033[0m\n";
if (TRIM_NVIDIA_BUFFER_INFO &&
GPU_type_matches(GPU_DEVICE_NVIDIA, GPU_OS_ANY, GPU_DRIVER_OFFICIAL) &&
STREQLEN("Buffer detailed info", message, 20)) {
/** Supress buffer infos flooding the output. */
return;
}
if (ELEM(severity, GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_NOTIFICATION)) {
if (VERBOSE) {
fprintf(stderr, format, "\033[2m", message);