Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/gpu/intern')
-rw-r--r--source/blender/gpu/intern/gpu_debug.cc220
-rw-r--r--source/blender/gpu/intern/gpu_init_exit.c8
-rw-r--r--source/blender/gpu/intern/gpu_private.h4
3 files changed, 0 insertions, 232 deletions
diff --git a/source/blender/gpu/intern/gpu_debug.cc b/source/blender/gpu/intern/gpu_debug.cc
index f7d6236071d..f179a241926 100644
--- a/source/blender/gpu/intern/gpu_debug.cc
+++ b/source/blender/gpu/intern/gpu_debug.cc
@@ -36,226 +36,6 @@
#include <stdlib.h>
#include <string.h>
-#ifndef __APPLE__ /* only non-Apple systems implement OpenGL debug callbacks */
-
-/* control whether we use older AMD_debug_output extension
- * some supported GPU + OS combos do not have the newer extensions */
-# define LEGACY_DEBUG 1
-
-/* Debug callbacks need the same calling convention as OpenGL functions. */
-# if defined(_WIN32)
-# define APIENTRY __stdcall
-# else
-# define APIENTRY
-# endif
-
-static const char *source_name(GLenum source)
-{
- switch (source) {
- case GL_DEBUG_SOURCE_API:
- return "API";
- case GL_DEBUG_SOURCE_WINDOW_SYSTEM:
- return "window system";
- case GL_DEBUG_SOURCE_SHADER_COMPILER:
- return "shader compiler";
- case GL_DEBUG_SOURCE_THIRD_PARTY:
- return "3rd party";
- case GL_DEBUG_SOURCE_APPLICATION:
- return "application";
- case GL_DEBUG_SOURCE_OTHER:
- return "other";
- default:
- return "???";
- }
-}
-
-static const char *message_type_name(GLenum message)
-{
- switch (message) {
- case GL_DEBUG_TYPE_ERROR:
- return "error";
- case GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR:
- return "deprecated behavior";
- case GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR:
- return "undefined behavior";
- case GL_DEBUG_TYPE_PORTABILITY:
- return "portability";
- case GL_DEBUG_TYPE_PERFORMANCE:
- return "performance";
- case GL_DEBUG_TYPE_OTHER:
- return "other";
- case GL_DEBUG_TYPE_MARKER:
- return "marker"; /* KHR has this, ARB does not */
- default:
- return "???";
- }
-}
-
-static void APIENTRY gpu_debug_proc(GLenum source,
- GLenum type,
- GLuint UNUSED(id),
- GLenum severity,
- GLsizei UNUSED(length),
- const GLchar *message,
- const GLvoid *UNUSED(userParm))
-{
- bool backtrace = false;
-
- switch (severity) {
- case GL_DEBUG_SEVERITY_HIGH:
- backtrace = true;
- ATTR_FALLTHROUGH;
- case GL_DEBUG_SEVERITY_MEDIUM:
- case GL_DEBUG_SEVERITY_LOW:
- case GL_DEBUG_SEVERITY_NOTIFICATION: /* KHR has this, ARB does not */
- fprintf(stderr, "GL %s %s: %s\n", source_name(source), message_type_name(type), message);
- }
-
- if (backtrace) {
- BLI_system_backtrace(stderr);
- fflush(stderr);
- }
-}
-
-# if LEGACY_DEBUG
-
-static const char *category_name_amd(GLenum category)
-{
- switch (category) {
- case GL_DEBUG_CATEGORY_API_ERROR_AMD:
- return "API error";
- case GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD:
- return "window system";
- case GL_DEBUG_CATEGORY_DEPRECATION_AMD:
- return "deprecated behavior";
- case GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD:
- return "undefined behavior";
- case GL_DEBUG_CATEGORY_PERFORMANCE_AMD:
- return "performance";
- case GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD:
- return "shader compiler";
- case GL_DEBUG_CATEGORY_APPLICATION_AMD:
- return "application";
- case GL_DEBUG_CATEGORY_OTHER_AMD:
- return "other";
- default:
- return "???";
- }
-}
-
-static void APIENTRY gpu_debug_proc_amd(GLuint UNUSED(id),
- GLenum category,
- GLenum severity,
- GLsizei UNUSED(length),
- const GLchar *message,
- GLvoid *UNUSED(userParm))
-{
- bool backtrace = false;
-
- switch (severity) {
- case GL_DEBUG_SEVERITY_HIGH:
- backtrace = true;
- ATTR_FALLTHROUGH;
- case GL_DEBUG_SEVERITY_MEDIUM:
- case GL_DEBUG_SEVERITY_LOW:
- fprintf(stderr, "GL %s: %s\n", category_name_amd(category), message);
- }
-
- if (backtrace) {
- BLI_system_backtrace(stderr);
- fflush(stderr);
- }
-}
-# endif /* LEGACY_DEBUG */
-
-# undef APIENTRY
-#endif /* not Apple */
-
-void gpu_debug_init(void)
-{
-#ifdef __APPLE__
- fprintf(stderr, "OpenGL debug callback is not available on Apple.\n");
-#else /* not Apple */
- const char success[] = "Successfully hooked OpenGL debug callback.";
-
- if (GLEW_VERSION_4_3 || GLEW_KHR_debug) {
- fprintf(stderr,
- "Using %s\n",
- GLEW_VERSION_4_3 ? "OpenGL 4.3 debug facilities" : "KHR_debug extension");
- glEnable(GL_DEBUG_OUTPUT);
- glEnable(GL_DEBUG_OUTPUT_SYNCHRONOUS);
- glDebugMessageCallback((GLDEBUGPROC)gpu_debug_proc, NULL);
- glDebugMessageControl(GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, 0, NULL, GL_TRUE);
- GPU_string_marker(success);
- }
- else if (GLEW_ARB_debug_output) {
- fprintf(stderr, "Using ARB_debug_output extension\n");
- glEnable(GL_DEBUG_OUTPUT_SYNCHRONOUS);
- glDebugMessageCallbackARB((GLDEBUGPROCARB)gpu_debug_proc, NULL);
- glDebugMessageControlARB(GL_DONT_CARE, GL_DONT_CARE, GL_DONT_CARE, 0, NULL, GL_TRUE);
- GPU_string_marker(success);
- }
-# if LEGACY_DEBUG
- else if (GLEW_AMD_debug_output) {
- fprintf(stderr, "Using AMD_debug_output extension\n");
- glDebugMessageCallbackAMD(gpu_debug_proc_amd, NULL);
- glDebugMessageEnableAMD(GL_DONT_CARE, GL_DONT_CARE, 0, NULL, GL_TRUE);
- GPU_string_marker(success);
- }
-# endif
- else {
- fprintf(stderr, "Failed to hook OpenGL debug callback.\n");
- }
-#endif /* not Apple */
-}
-
-void gpu_debug_exit(void)
-{
-#ifndef __APPLE__
- if (GLEW_VERSION_4_3 || GLEW_KHR_debug) {
- glDebugMessageCallback(NULL, NULL);
- }
- else if (GLEW_ARB_debug_output) {
- glDebugMessageCallbackARB(NULL, NULL);
- }
-# if LEGACY_DEBUG
- else if (GLEW_AMD_debug_output) {
- glDebugMessageCallbackAMD(NULL, NULL);
- }
-# endif
-#endif
-}
-
-void GPU_string_marker(const char *buf)
-{
-#ifdef __APPLE__
- UNUSED_VARS(buf);
-#else /* not Apple */
- if (GLEW_VERSION_4_3 || GLEW_KHR_debug) {
- glDebugMessageInsert(GL_DEBUG_SOURCE_APPLICATION,
- GL_DEBUG_TYPE_MARKER,
- 0,
- GL_DEBUG_SEVERITY_NOTIFICATION,
- -1,
- buf);
- }
- else if (GLEW_ARB_debug_output) {
- glDebugMessageInsertARB(GL_DEBUG_SOURCE_APPLICATION_ARB,
- GL_DEBUG_TYPE_OTHER_ARB,
- 0,
- GL_DEBUG_SEVERITY_LOW_ARB,
- -1,
- buf);
- }
-# if LEGACY_DEBUG
- else if (GLEW_AMD_debug_output) {
- glDebugMessageInsertAMD(
- GL_DEBUG_CATEGORY_APPLICATION_AMD, GL_DEBUG_SEVERITY_LOW_AMD, 0, 0, buf);
- }
-# endif
-#endif /* not Apple */
-}
-
void GPU_print_error_debug(const char *str)
{
if (G.debug & G_DEBUG) {
diff --git a/source/blender/gpu/intern/gpu_init_exit.c b/source/blender/gpu/intern/gpu_init_exit.c
index 9ae13771842..4cb43db9bce 100644
--- a/source/blender/gpu/intern/gpu_init_exit.c
+++ b/source/blender/gpu/intern/gpu_init_exit.c
@@ -54,10 +54,6 @@ void GPU_init(void)
gpu_codegen_init();
gpu_material_library_init();
- if (G.debug & G_DEBUG_GPU) {
- gpu_debug_init();
- }
-
gpu_batch_init();
if (!G.background) {
@@ -81,10 +77,6 @@ void GPU_exit(void)
gpu_batch_exit();
- if (G.debug & G_DEBUG_GPU) {
- gpu_debug_exit();
- }
-
gpu_material_library_exit();
gpu_codegen_exit();
diff --git a/source/blender/gpu/intern/gpu_private.h b/source/blender/gpu/intern/gpu_private.h
index 92663190b8f..505ac3b0278 100644
--- a/source/blender/gpu/intern/gpu_private.h
+++ b/source/blender/gpu/intern/gpu_private.h
@@ -32,10 +32,6 @@ void gpu_platform_exit(void);
void gpu_extensions_init(void);
void gpu_extensions_exit(void);
-/* gpu_debug.c */
-void gpu_debug_init(void);
-void gpu_debug_exit(void);
-
/* gpu_pbvh.c */
void gpu_pbvh_init(void);
void gpu_pbvh_exit(void);