vk_instance: Address small issues

This commit is contained in:
GPUCode
2022-12-25 23:20:19 +02:00
parent f7cb308243
commit 618c80c803
2 changed files with 3 additions and 41 deletions

View File

@ -15,21 +15,6 @@ namespace Vulkan {
vk::DynamicLoader Instance::dl;
inline std::string_view GetType(vk::DebugUtilsMessageTypeFlagBitsEXT type) {
switch (type) {
case vk::DebugUtilsMessageTypeFlagBitsEXT::eGeneral:
return "General";
case vk::DebugUtilsMessageTypeFlagBitsEXT::eValidation:
return "Validation";
case vk::DebugUtilsMessageTypeFlagBitsEXT::ePerformance:
return "Performance";
case vk::DebugUtilsMessageTypeFlagBitsEXT::eDeviceAddressBinding:
return "DeviceAddressBinding";
default:
return "";
};
}
static VKAPI_ATTR VkBool32 VKAPI_CALL
DebugHandler(VkDebugUtilsMessageSeverityFlagBitsEXT severity, VkDebugUtilsMessageTypeFlagsEXT type,
const VkDebugUtilsMessengerCallbackDataEXT* callback_data, void* user_data) {
@ -223,7 +208,7 @@ Instance::Instance(Frontend::EmuWindow& window, u32 physical_device_index)
// Calling this after CreateSurface to ensure the function has been loaded
if (enable_validation) {
CreateDebugMessenger();
debug_messenger = instance.createDebugUtilsMessengerEXT(MakeDebugUtilsMessengerInfo());
}
// Pick physical device
@ -244,6 +229,7 @@ Instance::Instance(Frontend::EmuWindow& window, u32 physical_device_index)
CreateDevice();
CreateFormatTable();
CollectTelemetryParameters();
}
Instance::~Instance() {
@ -252,7 +238,7 @@ Instance::~Instance() {
device.destroy();
instance.destroySurfaceKHR(surface);
if (enable_validation) {
if (debug_messenger) {
instance.destroyDebugUtilsMessengerEXT(debug_messenger);
}
}
@ -496,21 +482,6 @@ void Instance::CreateAllocator() {
}
}
void Instance::CreateDebugMessenger() {
const vk::DebugUtilsMessengerCreateInfoEXT debug_info = {
.messageSeverity = vk::DebugUtilsMessageSeverityFlagBitsEXT::eInfo |
vk::DebugUtilsMessageSeverityFlagBitsEXT::eError |
vk::DebugUtilsMessageSeverityFlagBitsEXT::eWarning |
vk::DebugUtilsMessageSeverityFlagBitsEXT::eVerbose,
.messageType = vk::DebugUtilsMessageTypeFlagBitsEXT::eGeneral |
vk::DebugUtilsMessageTypeFlagBitsEXT::eValidation |
vk::DebugUtilsMessageTypeFlagBitsEXT::eDeviceAddressBinding |
vk::DebugUtilsMessageTypeFlagBitsEXT::ePerformance,
.pfnUserCallback = DebugHandler};
debug_messenger = instance.createDebugUtilsMessengerEXT(debug_info);
}
void Instance::CollectTelemetryParameters() {
const vk::StructureChain property_chain =
physical_device

View File

@ -173,18 +173,9 @@ private:
/// Creates the VMA allocator handle
void CreateAllocator();
/// Creates the debug messenger
void CreateDebugMessenger();
/// Collects telemetry information from the device.
void CollectTelemetryParameters();
/// Collects information about attached tools.
void CollectToolingInfo();
/// Collects information about the device's local memory.
void CollectPhysicalMemoryInfo();
private:
static vk::DynamicLoader dl;
vk::Device device;