#include "graphics.h" #include #include "utils.h" enum graphics_error_e wayc_graphics_init(struct graphics_s* graphics) { wayc_notnull(graphics); memset(graphics, 0, sizeof(*graphics)); VkApplicationInfo appinfo = {}; appinfo.sType = VK_STRUCTURE_TYPE_APPLICATION_INFO; appinfo.apiVersion = VK_API_VERSION_1_3; VkInstanceCreateInfo createinfo = {}; createinfo.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO; createinfo.pApplicationInfo = &appinfo; VkResult result = vkCreateInstance(&createinfo, nullptr, &graphics->instance); if (result != VK_SUCCESS) return GRAPHICS_ERROR_INSTANCE; graphics->instance = VK_NULL_HANDLE; return GRAPHICS_ERROR_NONE; } void wayc_graphics_deinit(struct graphics_s* graphics) { wayc_notnull(graphics); if (graphics->instance == nullptr) return; vkDestroyInstance(graphics->instance, nullptr); }