|
Blender V5.0
|
Classes | |
| class | VKDebuggingTools |
Functions | |
| static ColorTheme4f | get_debug_group_color (StringRefNull name) |
| void | mtl_debug_init () |
| void | object_label (VkObjectType vk_object_type, uint64_t object_handle, const char *name) |
| static VKAPI_ATTR VkBool32 VKAPI_CALL | messenger_callback (VkDebugUtilsMessageSeverityFlagBitsEXT message_severity, VkDebugUtilsMessageTypeFlagsEXT, const VkDebugUtilsMessengerCallbackDataEXT *callback_data, void *user_data) |
| template<typename T> | |
| void | object_label (T vk_object_type, const StringRefNull name) |
| void | raise_message (int32_t id_number, VkDebugUtilsMessageSeverityFlagBitsEXT vk_severity_flag_bits, const char *fmt,...) ATTR_PRINTF_FORMAT(3 |
Debug Callbacks | |
Hooks up debug callbacks to a debug OpenGL context using extensions or 4.3 core debug capabilities. | |
| static void APIENTRY | debug_callback (GLenum, GLenum type, GLuint, GLenum severity, GLsizei, const GLchar *message, const GLvoid *) |
| void | init_gl_callbacks () |
Error Checking | |
This is only useful for implementation that does not support the KHR_debug extension OR when the implementations do not report any errors even when clearly doing shady things. | |
| void | check_gl_error (const char *info) |
| void | check_gl_resources (const char *info) |
| void | raise_gl_error (const char *info) |
Object Label | |
Useful for debugging through render-doc. Only defined if using --debug-gpu. Make sure to bind the object first so that it gets defined by the GL implementation. | |
| static const char * | to_str_prefix (GLenum type) |
| static const char * | to_str_suffix (GLenum type) |
| void | object_label (GLenum type, GLuint object, const char *name) |
Variables | |
| static blender::ColorTheme4f | GPU_DEBUG_GROUP_COLOR_DEFAULT = {} |
| CLG_LogRef | LOG = {"gpu.debug.metal"} |
| void blender::gpu::debug::check_gl_error | ( | const char * | info | ) |
Definition at line 159 of file gl_debug.cc.
References debug_callback(), error(), ERROR_CASE, G, G_DEBUG_GPU, and SNPRINTF.
| void blender::gpu::debug::check_gl_resources | ( | const char * | info | ) |
Definition at line 192 of file gl_debug.cc.
References blender::StringRefNull::c_str(), debug_callback(), G, G_DEBUG_GPU, blender::gpu::GLContext::get(), i, blender::gpu::Shader::name_get(), blender::gpu::Context::shader, SNPRINTF, and tex_input().
|
static |
Definition at line 53 of file gl_debug.cc.
References APIENTRY, BLI_system_backtrace(), CLG_color_support_get(), CLG_LEVEL_ERROR, CLG_LEVEL_INFO, CLG_LEVEL_WARN, CLG_logf(), CLOG_CHECK, ELEM, GPU_debug_get_groups_names(), GPU_debug_group_match(), GPU_DEBUG_SHADER_COMPILATION_GROUP, GPU_DEBUG_SHADER_SPECIALIZATION_GROUP, GPU_DEVICE_NVIDIA, GPU_DRIVER_OFFICIAL, GPU_OS_ANY, GPU_type_matches(), LOG, STRPREFIX, TRIM_NVIDIA_BUFFER_INFO, and TRIM_SHADER_STATS_INFO.
Referenced by check_gl_error(), check_gl_resources(), init_gl_callbacks(), and raise_gl_error().
|
inlinestatic |
Definition at line 82 of file gpu_backend.hh.
References GPU_DEBUG_GROUP_COLOR_DEFAULT, and name.
Referenced by blender::gpu::VKContext::activate(), blender::gpu::VKContext::debug_group_begin(), and blender::gpu::VKContext::flush_render_graph().
| void blender::gpu::debug::init_gl_callbacks | ( | ) |
This function needs to be called once per context.
Definition at line 136 of file gl_debug.cc.
References debug_callback().
|
static |
Definition at line 217 of file vk_debug.cc.
References CLG_LEVEL_ERROR, CLG_LEVEL_INFO, CLG_LEVEL_WARN, CLOG_AT_LEVEL, CLOG_CHECK, LOG, messenger_callback(), and blender::gpu::debug::VKDebuggingTools::print_labels().
Referenced by blender::gpu::debug::VKDebuggingTools::init_messenger(), and messenger_callback().
| void blender::gpu::debug::mtl_debug_init | ( | ) |
Definition at line 34 of file mtl_debug.mm.
References CLOG_ENSURE, and LOG.
Referenced by blender::gpu::MTLContext::MTLContext().
| void blender::gpu::debug::object_label | ( | GLenum | type, |
| GLuint | object, | ||
| const char * | name ) |
Definition at line 329 of file gl_debug.cc.
References G, G_DEBUG_GPU, name, SNPRINTF, to_str_prefix(), and to_str_suffix().
Referenced by blender::gpu::VKDescriptorBufferUpdator::allocate_new_descriptor_set(), blender::gpu::VKDescriptorSetPoolUpdator::allocate_new_descriptor_set(), blender::gpu::GLStorageBuf::async_flush_to_host(), blender::gpu::VKPixelBuffer::create(), blender::gpu::VKSampler::create(), blender::gpu::VKShader::ensure_and_get_compute_pipeline(), blender::gpu::VKShader::ensure_and_get_graphics_pipeline(), blender::gpu::VKVertexBuffer::ensure_buffer_view(), blender::gpu::VKShaderModule::finalize(), blender::gpu::GLFrameBuffer::GLFrameBuffer(), blender::gpu::GLImmediate::GLImmediate(), blender::gpu::GLShader::init(), blender::gpu::VKDevice::init(), blender::gpu::VKPipelinePool::init(), blender::gpu::GLTexture::init_internal(), blender::gpu::GLTexture::init_internal(), blender::gpu::GLTexture::init_internal(), object_label(), object_label(), blender::gpu::GLTexture::samplers_init(), blender::gpu::VKImageView::VKImageView(), and blender::gpu::VKStagingBuffer::VKStagingBuffer().
| void blender::gpu::debug::object_label | ( | T | vk_object_type, |
| const StringRefNull | name ) |
Definition at line 37 of file vk_debug.hh.
References G, G_DEBUG_GPU, name, object_label(), SNPRINTF, T, and blender::gpu::to_vk_object_type().
| void blender::gpu::debug::object_label | ( | VkObjectType | vk_object_type, |
| uint64_t | object_handle, | ||
| const char * | name ) |
Definition at line 173 of file vk_debug.cc.
References blender::gpu::VKDevice::functions, G, G_DEBUG_GPU, blender::gpu::VKBackend::get(), name, object_label(), blender::gpu::VKDevice::vk_handle(), and blender::gpu::VKDevice::vkSetDebugUtilsObjectName.
| void blender::gpu::debug::raise_gl_error | ( | const char * | info | ) |
Definition at line 276 of file gl_debug.cc.
References debug_callback().
Referenced by blender::gpu::GLTexture::check_feedback_loop(), and blender::gpu::GLTexture::update_sub().
| void blender::gpu::debug::raise_message | ( | int32_t | id_number, |
| VkDebugUtilsMessageSeverityFlagBitsEXT | vk_severity_flag_bits, | ||
| const char * | fmt, | ||
| ... ) |
How to use:
References ATTR_PRINTF_FORMAT.
|
static |
Definition at line 290 of file gl_debug.cc.
Referenced by object_label().
|
static |
Definition at line 315 of file gl_debug.cc.
Referenced by object_label().
|
static |
Definition at line 80 of file gpu_backend.hh.
Referenced by blender::gpu::render_graph::VKRenderGraph::debug_group_begin(), and get_debug_group_color().
| CLG_LogRef blender::gpu::debug::LOG = {"gpu.debug.metal"} |
Definition at line 32 of file mtl_debug.mm.
Referenced by debug_callback(), blender::gpu::MTLContext::debug_group_end(), blender::gpu::debug::VKDebuggingTools::init(), messenger_callback(), and mtl_debug_init().