// debris.hpp - Fragment de línia volant (explosió de formes) // © 2025 Port a C++20 amb SDL3 #pragma once #include "core/types.hpp" namespace Effects { // Debris: un segment de línia que vola perpendicular a sí mateix // Representa un fragment d'una forma destruïda (nau, enemic, bala) struct Debris { // Geometria del segment (2 punts en coordenades mundials) Punt p1; // Punt inicial del segment Punt p2; // Punt final del segment // Física Punt velocitat; // Velocitat en px/s (components x, y) float acceleracio; // Acceleració negativa (fricció) en px/s² // Rotació float angle_rotacio; // Angle de rotació acumulat (radians) float velocitat_rot; // Velocitat de rotació en rad/s // Estat de vida float temps_vida; // Temps transcorregut (segons) float temps_max; // Temps de vida màxim (segons) bool actiu; // Està actiu? // Shrinking (reducció de distància entre punts) float factor_shrink; // Factor de reducció per segon (0.0-1.0) // Rendering float brightness; // Factor de brillantor (0.0-1.0, heretat de l'objecte original) }; } // namespace Effects