add RendererSDL3

This commit is contained in:
2025-05-05 16:16:56 -05:00
parent b8654659c7
commit 0fb63352a2
8 changed files with 143 additions and 44 deletions

View File

@@ -39,6 +39,10 @@ void ImguiModule::onLoad() {
}
window = wm->aquireWindow();
#if WINDOW == 2
renderer = window->getRenderer().renderer;
#endif
IMGUI_CHECKVERSION();
context = ImGui::CreateContext();

View File

@@ -10,6 +10,10 @@
#include "backends/imgui_impl_opengl3.h"
#elif RENDERER == 2
#include "backends/imgui_impl_sdlrenderer3.h"
#endif
#if WINDOW == 1
@@ -69,6 +73,13 @@ class ImguiModule : public Archimedes::Module {
void rendererNewFrame() { ImGui_ImplOpenGL3_NewFrame(); }
void rendererRenderDrawData() { ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); }
#elif RENDERER == 2
SDL_Renderer* renderer;
auto rendererInit() { return ImGui_ImplSDLRenderer3_Init(renderer); }
void rendererShutdown() { ImGui_ImplSDLRenderer3_Shutdown(); }
void rendererNewFrame() { ImGui_ImplSDLRenderer3_NewFrame(); }
void rendererRenderDrawData() { ImGui_ImplSDLRenderer3_RenderDrawData(ImGui::GetDrawData(), renderer); }
#endif
#if WINDOW == 1
@@ -83,6 +94,8 @@ class ImguiModule : public Archimedes::Module {
#elif WINDOW == 2
#if RENDERER == 1
auto windowInit() { return ImGui_ImplSDL3_InitForOpenGL(window->getWindowImpl().getWindow(), window->getWindowImpl().getContext()); }
#elif RENDERER == 2
auto windowInit() { return ImGui_ImplSDL3_InitForSDLRenderer(window->getWindowImpl().getWindow(), renderer); }
#endif
void windowShutdown() { ImGui_ImplSDL3_Shutdown(); }