engine/include/vulkan_instance.h
2024-06-01 23:03:39 +01:00

25 lines
565 B
C++

#pragma once
#include <SDL2/SDL_video.h>
#include <volk.h>
namespace engine {
struct Instance {
VkInstance instance = VK_NULL_HANDLE;
VkDebugUtilsMessengerEXT debugMessenger = VK_NULL_HANDLE;
};
enum class MessageSeverity {
SEV_VERBOSE,
SEV_INFO,
SEV_WARNING,
SEV_ERROR // windows.h defines ERROR annoyingly
};
Instance createVulkanInstance(SDL_Window* window, const char* appName, const char* appVersion, bool useValidation, MessageSeverity validationLevel = MessageSeverity::SEV_WARNING);
void destroyVulkanInstance(Instance instance);
}