Screen: resolucion del juego y del overlay independientes
This commit is contained in:
6
main.cpp
6
main.cpp
@@ -33,8 +33,8 @@ int main(int argc, char *argv[])
|
|||||||
initOptions(options);
|
initOptions(options);
|
||||||
options->screen.nativeWidth = 320;
|
options->screen.nativeWidth = 320;
|
||||||
options->screen.nativeHeight = 240;
|
options->screen.nativeHeight = 240;
|
||||||
options->screen.nativeZoom = 1;
|
options->screen.nativeZoom = 2;
|
||||||
options->screen.windowZoom = 2;
|
options->screen.windowZoom = 1;
|
||||||
options->console = false;
|
options->console = false;
|
||||||
|
|
||||||
// Inicializa la lista de recursos
|
// Inicializa la lista de recursos
|
||||||
@@ -98,7 +98,7 @@ int main(int argc, char *argv[])
|
|||||||
sprite->setVelY(2);
|
sprite->setVelY(2);
|
||||||
|
|
||||||
// Bucle principal
|
// Bucle principal
|
||||||
JA_PlayMusic(music, true);
|
//JA_PlayMusic(music, true);
|
||||||
bool should_exit = false;
|
bool should_exit = false;
|
||||||
while (!should_exit)
|
while (!should_exit)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ void Screen::clean(color_t color)
|
|||||||
void Screen::start()
|
void Screen::start()
|
||||||
{
|
{
|
||||||
SDL_SetRenderTarget(renderer, gameCanvas);
|
SDL_SetRenderTarget(renderer, gameCanvas);
|
||||||
|
SDL_RenderSetLogicalSize(renderer, options->screen.nativeWidth, options->screen.nativeHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Vuelca el contenido del renderizador en pantalla
|
// Vuelca el contenido del renderizador en pantalla
|
||||||
@@ -68,6 +69,8 @@ void Screen::blit()
|
|||||||
SDL_SetRenderDrawColor(renderer, borderColor.r, borderColor.g, borderColor.b, 0xFF);
|
SDL_SetRenderDrawColor(renderer, borderColor.r, borderColor.g, borderColor.b, 0xFF);
|
||||||
SDL_RenderClear(renderer);
|
SDL_RenderClear(renderer);
|
||||||
|
|
||||||
|
SDL_RenderSetLogicalSize(renderer, gameWidth, gameHeight);
|
||||||
|
|
||||||
// Copia la textura de juego en el renderizador en la posición adecuada
|
// Copia la textura de juego en el renderizador en la posición adecuada
|
||||||
SDL_RenderCopy(renderer, gameCanvas, nullptr, &dest);
|
SDL_RenderCopy(renderer, gameCanvas, nullptr, &dest);
|
||||||
|
|
||||||
@@ -167,7 +170,7 @@ void Screen::setVideoMode(int videoMode)
|
|||||||
|
|
||||||
// Modifica el tamaño del renderizador
|
// Modifica el tamaño del renderizador
|
||||||
// SDL_RenderSetLogicalSize(renderer, windowWidth, windowHeight);
|
// SDL_RenderSetLogicalSize(renderer, windowWidth, windowHeight);
|
||||||
SDL_RenderSetLogicalSize(renderer, gameWidth, gameHeight);
|
//SDL_RenderSetLogicalSize(renderer, gameWidth, gameHeight);
|
||||||
|
|
||||||
// Actualiza las opciones
|
// Actualiza las opciones
|
||||||
options->screen.mode = videoMode;
|
options->screen.mode = videoMode;
|
||||||
|
|||||||
Reference in New Issue
Block a user