// // Created by rov on 12/26/25. // #include "render.h" #include "window.h" void Render_Frame(const App_t *app) { SDL_Renderer *renderer = Window_GetRenderer(); SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255); SDL_RenderClear(renderer); Render_MainWindowBackground(app); SDL_RenderPresent(renderer); } void Render_MainWindowBackground(const App_t *app) { SDL_Renderer *renderer = Window_GetRenderer(); if (app->bitmap.marbleTexture == NULL) { SDL_SetRenderDrawColor(renderer, 64, 64, 64, 255); SDL_RenderClear(renderer); return; } const int TILE_SIZE = 128; // Calculate how many tiles we need to cover the screen const int tilesX = app->metrics.screenWidth / TILE_SIZE + 1; const int tilesY = app->metrics.screenHeight / TILE_SIZE + 1; for (int y = 0; y < tilesY; y++) { for (int x = 0; x < tilesX; x++) { SDL_FRect destRect = { (float) (x * TILE_SIZE), (float) (y * TILE_SIZE), (float) TILE_SIZE, (float) TILE_SIZE }; SDL_RenderTexture(renderer, app->bitmap.marbleTexture, NULL, &destRect); } } }