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

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);