feat(trail): estela daurada de partícules quan la nau accelera

This commit is contained in:
2026-05-21 19:29:32 +02:00
parent a9593a0fd9
commit 74d855357d
6 changed files with 288 additions and 0 deletions
+1
View File
@@ -25,6 +25,7 @@
#include "core/defaults/rendering.hpp"
#include "core/defaults/ship.hpp"
#include "core/defaults/title.hpp"
#include "core/defaults/trail.hpp"
#include "core/defaults/window.hpp"
#include "core/defaults/zones.hpp"
// IWYU pragma: end_exports
+35
View File
@@ -0,0 +1,35 @@
// trail.hpp - Configuració de l'estela de partícules de la nau
// © 2026 JailDesigner
#pragma once
namespace Defaults::Trail {
constexpr int POOL_SIZE = 200;
constexpr float SPEED_THRESHOLD_PX_S = 54.0F; // 30% de Physics::MAX_VELOCITY (180)
constexpr float EMIT_INTERVAL_S = 0.04F; // ~25 Hz nominal
constexpr float EMIT_JITTER_S = 0.015F; // ±15 ms al cooldown
constexpr float POSITION_JITTER_PX = 2.5F; // jitter al punt de naixement
constexpr float REAR_OFFSET_PX = 10.0F; // distància darrere center_ (cua)
constexpr float LIFETIME_BASE_S = 0.65F;
constexpr float LIFETIME_JITTER_S = 0.15F;
constexpr float SCALE_MIN = 0.7F; // × estrella starfield (3 px punta)
constexpr float SCALE_MAX = 1.2F;
constexpr float OSCILLATION_AMP_PX = 1.8F;
constexpr float OSCILLATION_FREQ_HZ = 6.0F;
constexpr float PULSE_FREQ_HZ = 2.5F;
// Colors del pulse (interpolats sinusoïdalment per partícula)
constexpr unsigned char COLOR_A_R = 255;
constexpr unsigned char COLOR_A_G = 255;
constexpr unsigned char COLOR_A_B = 0; // #FFFF00 — groc viu
constexpr unsigned char COLOR_B_R = 218;
constexpr unsigned char COLOR_B_G = 165;
constexpr unsigned char COLOR_B_B = 32; // #DAA520 — daurat clàssic
} // namespace Defaults::Trail