From 54cee2088332b5fa2f4b6d70bd9ade3fcbc4e1b5 Mon Sep 17 00:00:00 2001 From: Sergio Valor Martinez Date: Tue, 15 Nov 2022 13:11:56 +0100 Subject: [PATCH] =?UTF-8?q?Las=20notificaciones=20ya=20se=20renderizan=20a?= =?UTF-8?q?=20su=20propia=20resoluci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/common/screen.cpp | 20 +++++++++++++++----- source/common/screen.h | 3 +++ 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/source/common/screen.cpp b/source/common/screen.cpp index 3eea34f..f3b6ac2 100644 --- a/source/common/screen.cpp +++ b/source/common/screen.cpp @@ -75,7 +75,7 @@ void Screen::blit() SDL_RenderCopy(renderer, gameCanvas, nullptr, &dest); // Dibuja las notificaciones - notify->render(); + renderNotifications(); // Muestra por pantalla el renderizador SDL_RenderPresent(renderer); @@ -101,14 +101,16 @@ void Screen::setVideoMode(int fullScreenMode) else { - screenWidth = gameCanvasWidth; - screenHeight = gameCanvasHeight; + screenWidth = gameCanvasWidth * options->windowSize; + screenHeight = gameCanvasHeight * options->windowSize; dest = {0, 0, gameCanvasWidth, gameCanvasHeight}; } // Modifica el tamaño del renderizador y de la ventana - SDL_RenderSetLogicalSize(renderer, screenWidth, screenHeight); - SDL_SetWindowSize(window, screenWidth * options->windowSize, screenHeight * options->windowSize); + // SDL_RenderSetLogicalSize(renderer, screenWidth, screenHeight); + // SDL_SetWindowSize(window, screenWidth * options->windowSize, screenHeight * options->windowSize); + SDL_RenderSetLogicalSize(renderer, gameCanvasWidth, gameCanvasHeight); + SDL_SetWindowSize(window, screenWidth, screenHeight); } // Si está activo el modo de pantalla completa añade el borde @@ -381,4 +383,12 @@ void Screen::updateNotifier() void Screen::showText(std::string text) { notify->showText(text); +} + +// Dibuja las notificaciones +void Screen::renderNotifications() +{ + SDL_RenderSetLogicalSize(renderer, screenWidth, screenHeight); + notify->render(); + SDL_RenderSetLogicalSize(renderer, gameCanvasWidth, gameCanvasHeight); } \ No newline at end of file diff --git a/source/common/screen.h b/source/common/screen.h index d3ce36f..db068a9 100644 --- a/source/common/screen.h +++ b/source/common/screen.h @@ -69,6 +69,9 @@ private: // Dibuja el spectrum fade void renderSpectrumFade(); + // Dibuja las notificaciones + void renderNotifications(); + public: // Constructor Screen(SDL_Window *window, SDL_Renderer *renderer, Asset *asset, options_t *options, int gameInternalResX, int gameInternalResY);