feat: further reorganizing of project structure

This commit is contained in:
Sara Gerretsen 2025-09-04 10:51:47 +02:00
parent 3fad9ffda3
commit ae27a50dbd
2 changed files with 27 additions and 12 deletions

View file

@ -1,5 +1,16 @@
#include <imgui.h> #include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
#include <imgui-SFML.h> #include <imgui-SFML.h>
#include <imgui.h>
sf::String const window_name{ "mywindow" };
void configure(sf::Window &window) {
window.setTitle("MYPROJECT");
// choose one or the other, both doesn't really do much
//window.setFramerateLimit(0);
window.setVerticalSyncEnabled(true);
}
void setup() { void setup() {
} }
@ -7,6 +18,9 @@ void setup() {
void loop() { void loop() {
} }
void draw_scene(sf::RenderTarget &target) {
}
void draw_gui() { void draw_gui() {
// draw your GUI // draw your GUI
ImGui::ShowDemoWindow(); ImGui::ShowDemoWindow();

View file

@ -1,16 +1,15 @@
#include "imgui.h"
#include "imgui-SFML.h"
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp> #include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
#include <imgui-SFML.h>
static sf::RenderWindow window{}; static sf::RenderWindow window{};
static sf::Clock deltaClock{}; static sf::Clock deltaClock{};
extern void configure(sf::Window &window);
void initialize_window() { void initialize_window() {
window.create(sf::VideoMode({ 1280, 720 }), "My window"); window.create(sf::VideoMode({ 1280, 720 }),"UNNAMED WINDOW");
window.setFramerateLimit(60); configure(window);
window.setVerticalSyncEnabled(true);
} }
void initialize_imgui() { void initialize_imgui() {
@ -19,7 +18,7 @@ void initialize_imgui() {
} }
void poll_events() { void poll_events() {
while (const std::optional event = window.pollEvent()) while (std::optional const event{ window.pollEvent() })
{ {
ImGui::SFML::ProcessEvent(window, *event); ImGui::SFML::ProcessEvent(window, *event);
// "close requested" event: we close the window // "close requested" event: we close the window
@ -28,9 +27,10 @@ void poll_events() {
} }
} }
extern void setup(); extern void setup(void);
extern void loop(); extern void loop(void);
extern void draw_gui(); extern void draw_scene(sf::RenderTarget &target);
extern void draw_gui(void);
int main() { int main() {
initialize_window(); initialize_window();
@ -41,6 +41,7 @@ int main() {
poll_events(); poll_events();
// Update // Update
loop(); loop();
draw_scene(window);
ImGui::SFML::Update(window, deltaClock.restart()); ImGui::SFML::Update(window, deltaClock.restart());
draw_gui(); draw_gui();
// Render // Render