hachem.wtf
aboutsummaryrefslogtreecommitdiff
path: root/src/core/application.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/application.cpp')
-rw-r--r--src/core/application.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/core/application.cpp b/src/core/application.cpp
index 30194de..9d2278e 100644
--- a/src/core/application.cpp
+++ b/src/core/application.cpp
@@ -1,6 +1,7 @@
#include "application.h"
#include "rendering/renderer.h"
+#include "settings_manager.h"
#include "states/simulation_state.h"
#include "states/config_state.h"
@@ -98,7 +99,12 @@ namespace Donut
{
Logger::init();
- RendererAPI::set_api(RendererAPI::API::OpenGL);
+ SettingsManager::initialize();
+
+ const auto& settings = SettingsManager::get_settings_const();
+ RendererAPI::API api = (settings.graphics.render_api == "Vulkan") ? RendererAPI::API::Vulkan : RendererAPI::API::OpenGL;
+ RendererAPI::set_api(api);
+
Renderer::init();
m_window->init_im_gui();
@@ -117,6 +123,7 @@ namespace Donut
m_state_manager->shutdown();
Renderer::shutdown();
+ SettingsManager::shutdown();
Logger::shutdown();
}