feat(fireworks): infraestructura (manager + pool + render, sin spawn aún)

This commit is contained in:
2026-05-21 17:22:46 +02:00
parent 5aab26f2ca
commit 56ce1a3236
7 changed files with 364 additions and 0 deletions
+39
View File
@@ -0,0 +1,39 @@
// effects.hpp - Constants per a efectes visuals (fireworks, etc.)
// © 2026 JailDesigner
#pragma once
namespace Defaults::FX::Firework {
// Velocitat inicial radial al spawn (px/s) i variació entre punts.
constexpr float SPEED = 140.0F;
constexpr float SPEED_VARIATION = 30.0F; // ±
// Quantitat de línies per burst (per defecte).
constexpr int N_POINTS = 8;
// Distribució angular: jitter aleatori sobre el repartiment uniforme.
constexpr float ANGULAR_JITTER_DEG = 12.0F;
// Fase 1 (creixement): la línia neix amb longitud 0 i creix fins a max.
constexpr float GROW_DURATION = 0.08F; // s
constexpr float MAX_LENGTH = 14.0F; // px
// Fricció lineal (px/s²). Negativa per frenar.
constexpr float FRICTION = -180.0F;
// Llindar de mort: per sota d'aquesta longitud (px) o brillor, la
// partícula es marca inactiva.
constexpr float MIN_LENGTH = 0.5F;
constexpr float MIN_BRIGHTNESS = 0.02F;
// Brillor inicial per defecte.
constexpr float INITIAL_BRIGHTNESS = 1.0F;
// Restitució en rebot contra els límits del PLAYAREA (mateix patró que debris).
constexpr float RESTITUTION_BOUNDS = 0.7F;
// Mida del pool. 8 punts × ~25 bursts simultanis.
constexpr int POOL_SIZE = 200;
} // namespace Defaults::FX::Firework