feat(postfx): redisseny sistema PostFX (X/F5/F6, --postfx CLI)
- X cicla 4 efectes (Vinyeta/Scanlines/Cromàtica/Complet), sempre activa PostFX - F5 fa toggle PostFX on/off mantenint l'efecte seleccionat - F6 hereta el toggle d'integer scaling (abans F5) - Arrencada per defecte sense postprocés (tot a 0) - --postfx <vinyeta|scanlines|cromatica|complet> per activar des de CLI Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -78,6 +78,8 @@ class Engine {
|
||||
|
||||
// PostFX presets
|
||||
void handlePostFXCycle();
|
||||
void handlePostFXToggle();
|
||||
void setInitialPostFX(int mode);
|
||||
|
||||
// Modo kiosko
|
||||
void setKioskMode(bool enabled) { kiosk_mode_ = enabled; }
|
||||
@@ -170,8 +172,9 @@ class Engine {
|
||||
float delta_time_ = 0.0f;
|
||||
|
||||
// PostFX uniforms (passed to GPU each frame)
|
||||
PostFXUniforms postfx_uniforms_ = {1.5f, 0.0f, 0.0f, 0.0f};
|
||||
PostFXUniforms postfx_uniforms_ = {0.0f, 0.0f, 0.0f, 0.0f};
|
||||
int postfx_effect_mode_ = 0;
|
||||
bool postfx_enabled_ = false;
|
||||
|
||||
// Sistema de zoom dinámico
|
||||
int current_window_zoom_ = DEFAULT_WINDOW_ZOOM;
|
||||
@@ -244,6 +247,9 @@ class Engine {
|
||||
void updateShape();
|
||||
void generateShape();
|
||||
|
||||
// PostFX helper
|
||||
void applyPostFXPreset(int mode);
|
||||
|
||||
// GPU helpers
|
||||
bool loadGpuSpriteTexture(size_t index); // Upload one sprite texture to GPU
|
||||
void recreateOffscreenTexture(); // Recreate when resolution changes
|
||||
|
||||
Reference in New Issue
Block a user