window: max_zoom derivat del display via Screen::detectMaxZoom()
This commit is contained in:
@@ -21,7 +21,9 @@ class Screen {
|
||||
public:
|
||||
// Constantes
|
||||
static constexpr int WINDOW_ZOOM_MIN = 1;
|
||||
static constexpr int WINDOW_ZOOM_MAX = 4;
|
||||
// Pixels reservats per a la barra de títol/decoracions a l'hora de
|
||||
// calcular el zoom màxim windowed (mateix valor que CCAE/jaildoctors).
|
||||
static constexpr int WINDOWS_DECORATIONS = 35;
|
||||
#ifdef __EMSCRIPTEN__
|
||||
// En WASM el tamaño de ventana está fijado a 1x, así que escalamos el
|
||||
// renderizado por 3 aprovechando el modo NEAREST de la textura del juego
|
||||
@@ -34,6 +36,12 @@ class Screen {
|
||||
static void destroy(); // Libera la instancia
|
||||
static auto get() -> Screen *; // Obtiene el puntero a la instancia
|
||||
|
||||
// Detecta el zoom màxim windowed segons la resolució del display actual.
|
||||
// Cal cridar-la després de SDL_Init(VIDEO) i abans de crear la finestra.
|
||||
// Escriu a `Options::window.max_zoom` i clampa `Options::window.zoom`.
|
||||
// En Emscripten és no-op (el tamany del canvas el controla el browser).
|
||||
static void detectMaxZoom();
|
||||
|
||||
// Destructor (público por requisitos de `delete` desde destroy())
|
||||
~Screen();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user