feat(title): seqüència d'intro temporitzada amb slide-in del peu

This commit is contained in:
JailDesigner committed 2026-05-07 13:08:13 +02:00
1 parent fceeb11cdd
commit 243ced7498
7 files changed
+226 -75

No files matched your search

+19 -6
View File
@@ -319,12 +319,25 @@ namespace Defaults {
// veurà què en fa.
constexpr int ATTRACT_FADE_TO_BLACK_MS = 800;
// Fade-in inicial de l'escena: capa negra al començament que
// s'esvaeix cap a la imatge de fons. Lineal, sense mosaic —
// mateixa convenció que el `room_intro.fade_in_ms` del joc
// perquè l'arribada a la TITLE i l'arribada a una sala de
// joc tinguin el mateix ritme visual.
constexpr int INTRO_FADE_IN_MS = 500;
// Seqüència d'aparició dels elements de la TITLE en fase IDLE.
// Tots els temps són absoluts des de l'entrada a l'escena.
// `FADE_IN_MS` és la capa negra inicial que s'esvaeix cap al fons
// (mateixa convenció que `room_intro.fade_in_ms` del joc perquè
// l'arribada a la TITLE i a una sala de joc tinguin el mateix
// ritme). Els altres temps marquen quan apareix cada element;
// `SLIDE_*` defineixen el slide-in des del marge inferior amb
// la corba `SLIDE_CURVE`. Si l'usuari prem START durant la
// seqüència, aquesta es completa instantàniament.
namespace Intro {
constexpr int FADE_IN_MS = 500;
constexpr int GAME_LOGO_AT_MS = 1500;
constexpr int MINI_LOGO_AT_MS = 2000;
constexpr int MINI_LOGO_SLIDE_MS = 500;
constexpr int COPYRIGHT_AT_MS = 2200;
constexpr int COPYRIGHT_SLIDE_MS = 500;
constexpr const char* SLIDE_CURVE = "outCubic";
constexpr int PRESS_START_AT_MS = 3000;
} // namespace Intro
// Distorsió sinusoidal horitzontal de l'imatge de fons
// (efecte de calor del desert). `amplitude_px` és el