diff options
| author | hachem <im@hachem.wtf> | 2025-08-16 17:36:57 +0200 |
|---|---|---|
| committer | hachem <im@hachem.wtf> | 2025-08-16 17:36:57 +0200 |
| commit | f7334b82e8ab8b4a36847d7f9dd2a56f29dd0cbf (patch) | |
| tree | 75cdf9b8bd802309ffc070a30af0fa72530b6d19 /src/states/config_state.h | |
| parent | 8f906c3139a813b9a829821944b464b3facdad59 (diff) | |
feat: themes and better UI
Diffstat (limited to 'src/states/config_state.h')
| -rw-r--r-- | src/states/config_state.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/states/config_state.h b/src/states/config_state.h index 15aff5c..7a31f8c 100644 --- a/src/states/config_state.h +++ b/src/states/config_state.h @@ -3,6 +3,7 @@ #include "core/state.h" #include "core/event.h" #include "core/log.h" +#include "rendering/renderer.h" namespace Donut { @@ -18,5 +19,29 @@ namespace Donut void on_render() override; void on_im_ui_render() override; void on_event(Event& event) override; + + private: + void apply_settings(); + void reset_to_defaults(); + + private: + RendererAPI::API m_selected_api = RendererAPI::API::OpenGL; + bool m_show_restart_message = false; + float m_restart_message_timer = 0.0f; + + int m_target_fps = 60; + int m_compute_height = 512; + int m_max_steps_moving = 30000; + int m_max_steps_static = 15000; + float m_early_exit_distance = 5e12f; + bool m_gravity_enabled = true; + + bool m_v_sync_enabled = true; + bool m_show_fps = true; + bool m_show_performance_metrics = true; + bool m_show_debug_info = false; + bool m_enable_anti_aliasing = true; + + int m_selected_theme = 0; }; }; |
