Implementar transiciones suaves de temas con LERP

Características:
- Sistema LERP para interpolar colores de fondo y sprites
- Transiciones de 0.5 segundos sin interrumpir física
- Variables de estado: target_theme, transitioning, transition_progress
- getInterpolatedColor() para colores en tiempo real
- Actualización automática de colores al finalizar transición
- setColor() añadido a Ball class
- Teclas B y Numpad 1-6 activan transiciones suaves
- Ya no reinicia pelotas al cambiar tema

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-10-04 07:31:05 +02:00
parent 95ab6dea46
commit 6bb814e61c
3 changed files with 132 additions and 52 deletions

View File

@@ -73,9 +73,10 @@ class Ball {
bool isOnSurface() const { return on_surface_; }
bool isStopped() const { return stopped_; }
// Getters para batch rendering
// Getters/Setters para batch rendering
SDL_FRect getPosition() const { return pos_; }
Color getColor() const { return color_; }
void setColor(const Color& color) { color_ = color; }
// Funciones para modo RotoBall
void setRotoBallPosition3D(float x, float y, float z);