// playfield.hpp - Configuració del fons del playfield (graella, sub-graella, animació) // © 2026 JailDesigner #pragma once namespace Defaults::Playfield { // Estructura de la graella (cel·les omplen tota la PLAYAREA) constexpr int COLUMNS = 16; // cell_w = PLAYAREA.w / 16 constexpr int ROWS = 8; // cell_h = PLAYAREA.h / 8 constexpr int SUBDIVISIONS = 5; // cada cel·la principal es divideix en N subcel·les // Brillo respecte al color global (border = 1.0) constexpr float GRID_BRIGHTNESS = 0.15F; constexpr float SUBGRID_BRIGHTNESS = 0.05F; // Animació de creació amb timer intern del Playfield. // L'animació total cobreix tot l'INIT_HUD (3 s). Cada línia es pinta en // LINE_GROWTH_DURATION_S; els spawns es distribueixen amb sweep des del // centre perquè verticals i horitzontals propaguen cap als extrems. constexpr float LINE_GROWTH_DURATION_S = 0.4F; constexpr float TOTAL_ANIMATION_DURATION_S = 3.0F; // = Defaults::Game::INIT_HUD_DURATION // Cap brillant de la línia mentre creix (extrem que avança). constexpr float HEAD_LENGTH_PX = 8.0F; // longitud en píxels lògics del tram brillant constexpr float HEAD_BRIGHTNESS = 0.0F; // brillo del cap (= border) } // namespace Defaults::Playfield