xo-imgui: refactor: streamline create_surface()

This commit is contained in:
Roland Conybeare 2025-11-11 00:47:41 -05:00
commit af1a2adbde
2 changed files with 27 additions and 16 deletions

View file

@ -3,7 +3,8 @@
#include "VulkanApp.hpp"
void
MinimalImGuiVulkan::run() {
MinimalImGuiVulkan::run()
{
this->init_sdl_window();
this->init_vulkan();
this->init_imgui();
@ -12,7 +13,8 @@ MinimalImGuiVulkan::run() {
}
void
MinimalImGuiVulkan::init_sdl_window() {
MinimalImGuiVulkan::init_sdl_window()
{
if (SDL_Init(SDL_INIT_VIDEO) != 0) {
throw std::runtime_error("Failed to initialize SDL!");
}
@ -31,7 +33,8 @@ MinimalImGuiVulkan::init_sdl_window() {
}
void
MinimalImGuiVulkan::init_vulkan() {
MinimalImGuiVulkan::init_vulkan()
{
this->create_instance();
this->create_surface();
this->pick_physical_device();
@ -47,7 +50,8 @@ MinimalImGuiVulkan::init_vulkan() {
}
void
MinimalImGuiVulkan::create_instance() {
MinimalImGuiVulkan::create_instance()
{
VkApplicationInfo appInfo{};
appInfo.sType = VK_STRUCTURE_TYPE_APPLICATION_INFO;
appInfo.pApplicationName = "ImGui Vulkan App";
@ -91,4 +95,12 @@ MinimalImGuiVulkan::create_instance() {
}
}
void
MinimalImGuiVulkan::create_surface()
{
if (!SDL_Vulkan_CreateSurface(window_, instance_, &(this->surface_))) {
throw std::runtime_error("Failed to create SDL Vulkan surface!");
}
}
/* end VulkanApp.cpp */