home
themmj.dev

debug messenger

Custom handler for output of validation layers (otherwise written to stdout).

Signature

type PFN_vkDebugUtilsMessengerCallbackEXT

Note: Using VKAPI_ATTR and VKAPI_CALL as such ensures that Vulkan can call it.

VKAPI_ATTR VkBool32 VKAPI_CALL vulkan_debug_callback(VkDebugUtilsMessageSeverityFlagBitsEXT message_severity,
                                                     VkDebugUtilsMessageTypeFlagsEXT message_types,
                                                     const VkDebugUtilsMessengerCallbackDataEXT *callback_data,
                                                     void *user_data);

Register Messenger

struct VkDebugUtilsMessengerCreateInfoEXT

Get function pointer of type PFN_vkCreateDebugUtilsMessengerEXT by calling function vkGetInstanceProcAddr passing in "vkCreateDebugUtilsMessengerEXT" as pName and call it with messenger create info.

Deregister Messenger

Get function pointer of type PFN_vkDestroyDebugUtilsMessengerEXT by calling function vkGetInstanceProcAddr passing in "vkDestroyDebugUtilsMessengerEXT" as pName and call it.