aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorfschildt <florian.schildt@protonmail.com>2025-09-29 13:20:43 +0200
committerfschildt <florian.schildt@protonmail.com>2025-09-29 13:20:43 +0200
commit9d72ed2d5801b1506158082f08bd0b47e58db17f (patch)
tree1fe30ab6dae55db5a3faaac6b8d54f67a31255d3 /src/main.cpp
parentd793b79dea7d5e19982128528276cf05d6c23b5d (diff)
renderer: major refactor; vectors: now aggregates
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp35
1 files changed, 14 insertions, 21 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 91192b4..bdd5a18 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,7 +1,5 @@
#include <basic/defs.hpp>
-#include <cstdlib>
#include <memory>
-#include <renderer/RenderGroup.hpp>
#include <renderer/Renderer.hpp>
#include <games/Game.hpp>
@@ -14,13 +12,13 @@
#include <imgui_impl_opengl3.h>
#include <imgui_impl_sdl3.h>
-#include <stdlib.h>
-#include <assert.h>
#include <iostream>
+#include <cstdlib>
+#include <assert.h>
Game::GameType
-do_menu(RenderGroup &render_group)
+do_menu()
{
Game::GameType type = Game::NO_GAME;
@@ -41,8 +39,8 @@ do_menu(RenderGroup &render_group)
Color clear_color = {0.4f, 0.4f, 0.4f, 1.0f};
- render_group.SetCameraSize(4.0f, 3.0f);
- render_group.Clear(clear_color);
+ g_renderer.SetCameraSize(4.0f, 3.0f);
+ g_renderer.Clear(clear_color);
return type;
@@ -105,18 +103,15 @@ main(int argc, char **argv)
ImGui_ImplOpenGL3_Init(glsl_version);
- std::unique_ptr<Game> game = nullptr;
- Renderer renderer {window};
- if (!renderer.Init()) {
- return EXIT_FAILURE;
- }
+ g_renderer.Init(window);
- RenderGroup render_group;
- SDL_GetWindowSize(window, &render_group.m_ScreenWidth, &render_group.m_ScreenHeight);
+
+ std::unique_ptr<Game> game = nullptr;
std::vector<SDL_Event> game_events;
game_events.reserve(32);
+
for (;;) {
ImGui_ImplOpenGL3_NewFrame();
ImGui_ImplSDL3_NewFrame();
@@ -148,9 +143,7 @@ main(int argc, char **argv)
int w, h;
SDL_GetWindowSize(window, &w, &h);
- render_group.m_ScreenWidth = w;
- render_group.m_ScreenHeight = h;
- renderer.ResizeCanvas(w, h);
+ g_renderer.SetScreenSize(w, h);
if (game) {
@@ -160,9 +153,9 @@ main(int argc, char **argv)
}
}
else {
- Game::GameType type = do_menu(render_group);
+ Game::GameType type = do_menu();
if (type != Game::NO_GAME) {
- game = Game::Select(type, render_group);
+ game = Game::Select(type);
}
}
game_events.clear();
@@ -177,11 +170,11 @@ main(int argc, char **argv)
ImGui::End();
- renderer.Draw(render_group);
+ g_renderer.Draw();
ImGui::Render();
ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData());
SDL_GL_SwapWindow(window);
- render_group.Reset();
+ g_renderer.Reset();
}
QUIT: