|
|
|
@@ -49,8 +49,8 @@ class Screen {
|
|
|
|
|
static void nextPostFXPreset(); // Avanza al siguiente preset PostFX
|
|
|
|
|
static void nextCrtPiPreset(); // Avanza al siguiente preset CrtPi
|
|
|
|
|
static void toggleSupersampling(); // Alterna supersampling
|
|
|
|
|
void toggleFilter(); // Alterna SDL_SCALEMODE_NEAREST ↔ SDL_SCALEMODE_LINEAR
|
|
|
|
|
void applyFilter(); // Aplica Options::video.scale_mode a game_canvas_
|
|
|
|
|
void toggleFilter(); // Alterna SDL_SCALEMODE_NEAREST ↔ SDL_SCALEMODE_LINEAR
|
|
|
|
|
void applyFilter(); // Aplica Options::video.scale_mode a game_canvas_
|
|
|
|
|
void toggleIntegerScale();
|
|
|
|
|
void toggleVSync(); // Alterna entre activar y desactivar el V-Sync
|
|
|
|
|
void setVSync(bool enabled); // Establece el estado del V-Sync
|
|
|
|
@@ -61,8 +61,8 @@ class Screen {
|
|
|
|
|
void show() { SDL_ShowWindow(window_); } // Muestra la ventana
|
|
|
|
|
void hide() { SDL_HideWindow(window_); } // Oculta la ventana
|
|
|
|
|
void getSingletons(); // Obtiene los punteros a los singletones
|
|
|
|
|
[[nodiscard]] static auto getVSync() -> bool { return Options::video.vsync; } // Obtiene el valor de V-Sync
|
|
|
|
|
[[nodiscard]] static auto isHardwareAccelerated() -> bool; // True si SDL3GPU está activo
|
|
|
|
|
[[nodiscard]] static auto getVSync() -> bool { return Options::video.vsync; } // Obtiene el valor de V-Sync
|
|
|
|
|
[[nodiscard]] static auto isHardwareAccelerated() -> bool; // True si SDL3GPU está activo
|
|
|
|
|
[[nodiscard]] auto getText() const -> std::shared_ptr<Text> { return text_; } // Obtiene el puntero al texto de Screen
|
|
|
|
|
|
|
|
|
|
// --- Display Monitor getters ---
|
|
|
|
@@ -236,19 +236,19 @@ class Screen {
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
// --- Métodos internos ---
|
|
|
|
|
auto initSDLVideo() -> bool; // Arranca SDL VIDEO y crea la ventana
|
|
|
|
|
void registerEmscriptenEventCallbacks(); // Registra callbacks nativos para restaurar el canvas en wasm (no-op fuera de emscripten)
|
|
|
|
|
void renderFlash(); // Dibuja el efecto de flash en la pantalla
|
|
|
|
|
void renderShake(); // Aplica el efecto de agitar la pantalla
|
|
|
|
|
void renderInfo() const; // Muestra información por pantalla
|
|
|
|
|
void renderPresent(); // Selecciona y ejecuta el método de renderizado adecuado
|
|
|
|
|
void applyCurrentPostFXPreset(); // Aplica el preset PostFX activo al backend
|
|
|
|
|
void applyCurrentCrtPiPreset(); // Aplica el preset CrtPi activo al backend
|
|
|
|
|
void adjustWindowSize(); // Calcula el tamaño de la ventana
|
|
|
|
|
void getDisplayInfo(); // Obtiene información sobre la pantalla
|
|
|
|
|
void renderOverlays(); // Renderiza todos los overlays y efectos
|
|
|
|
|
void renderAttenuate(); // Atenúa la pantalla
|
|
|
|
|
void createText(); // Crea el objeto de texto
|
|
|
|
|
auto initSDLVideo() -> bool; // Arranca SDL VIDEO y crea la ventana
|
|
|
|
|
void registerEmscriptenEventCallbacks(); // Registra callbacks nativos para restaurar el canvas en wasm (no-op fuera de emscripten)
|
|
|
|
|
void renderFlash(); // Dibuja el efecto de flash en la pantalla
|
|
|
|
|
void renderShake(); // Aplica el efecto de agitar la pantalla
|
|
|
|
|
void renderInfo() const; // Muestra información por pantalla
|
|
|
|
|
void renderPresent(); // Selecciona y ejecuta el método de renderizado adecuado
|
|
|
|
|
void applyCurrentPostFXPreset(); // Aplica el preset PostFX activo al backend
|
|
|
|
|
void applyCurrentCrtPiPreset(); // Aplica el preset CrtPi activo al backend
|
|
|
|
|
void adjustWindowSize(); // Calcula el tamaño de la ventana
|
|
|
|
|
void getDisplayInfo(); // Obtiene información sobre la pantalla
|
|
|
|
|
void renderOverlays(); // Renderiza todos los overlays y efectos
|
|
|
|
|
void renderAttenuate(); // Atenúa la pantalla
|
|
|
|
|
void createText(); // Crea el objeto de texto
|
|
|
|
|
|
|
|
|
|
// --- Constructores y destructor privados (singleton) ---
|
|
|
|
|
Screen(); // Constructor privado
|
|
|
|
|