54 VkDebugUtilsMessageSeverityFlagBitsEXT t_messageSeverity,
55 VkDebugUtilsMessageTypeFlagsEXT t_messageType,
56 const VkDebugUtilsMessengerCallbackDataEXT* t_CallbackData,
62 const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,
63 const VkAllocationCallbacks* pAllocator,
64 VkDebugUtilsMessengerEXT* pDebugMessenger
69 VkDebugUtilsMessengerEXT debugMessenger,
70 const VkAllocationCallbacks* pAllocator
82 "VK_LAYER_LUNARG_standard_validation" 88 VK_KHR_SWAPCHAIN_EXTENSION_NAME
const VkInstance & GetRawVkInstance() const
Definition: Instance.h:19
bool IsValidationEnabled() const
Definition: Instance.h:21
const std::vector< const char * > & GetEnabledValidationLayers() const
Definition: Instance.h:25
const std::vector< const char * > m_ValidationLayers
The validation layers that we want to look for on this instance.
Definition: Instance.h:80
VkResult CreateDebugUtilsMessengerEXT(VkInstance instance, const VkDebugUtilsMessengerCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDebugUtilsMessengerEXT *pDebugMessenger)
Definition: Instance.cpp:167
void SetupDebugMessages()
Create a debug message callback from vulkan and allow us to log errors from it.
Definition: Instance.cpp:125
const std::vector< const char * > & GetEnabledExtensions() const
Definition: Instance.h:27
void CreateInstance()
Create the VkInstance of this object and application information.
Definition: Instance.cpp:18
The instance is a representation of this application graphics instance in Vulkan. ...
Definition: Instance.h:11
VkDebugUtilsMessengerEXT m_DebugMessenger
Debug message handler for Vulkan.
Definition: Instance.h:35
UINT32 EnabledValidationLayerCount() const
Definition: Instance.h:23
VkInstance m_Instance
The Vulkan instance.
Definition: Instance.h:32
void DestroyDebugUtilsMessengerEXT(VkInstance instance, VkDebugUtilsMessengerEXT debugMessenger, const VkAllocationCallbacks *pAllocator)
Definition: Instance.cpp:180
const std::vector< const char * > m_DeviceExtensions
Device extension support for the swap chain.
Definition: Instance.h:86
uint8_t UINT8
Definition: FlingTypes.h:8
Class that removes the copy operator and constructor.
Definition: NonCopyable.hpp:10
std::vector< const char * > GetRequiredExtensions()
Definition: Instance.cpp:109
static VKAPI_ATTR VkBool32 VKAPI_CALL DebugCallback(VkDebugUtilsMessageSeverityFlagBitsEXT t_messageSeverity, VkDebugUtilsMessageTypeFlagsEXT t_messageType, const VkDebugUtilsMessengerCallbackDataEXT *t_CallbackData, void *t_UserData)
Definition: Instance.cpp:142
uint32_t UINT32
Definition: FlingTypes.h:10
bool CheckValidationLayerSupport()
Definition: Instance.cpp:78
UINT8 m_EnableValidationLayers
If this instance has validation layers enabled.
Definition: Instance.h:41
~Instance()
Definition: Instance.cpp:189
Instance()
Definition: Instance.cpp:8