Files
vibe3_physics/ROADMAP.md
Sergio Valor 95ab6dea46 Implementar tema MONOCHROME (6º tema visual) - Tecla KP_6
- Fondo negro degradado (similar a NEON)
- 8 tonos de gris: blanco puro a gris muy oscuro
- Estética minimalista monocromática
- Ciclo con tecla B incluye nuevo tema
- Actualizado README con documentación

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-04 06:58:39 +02:00

3.2 KiB

ROADMAP - ViBe3 Physics

Estado Actual

Figuras 3D (8/8 Completadas)

  • Q - SPHERE (Esfera Fibonacci)
  • W - WAVE_GRID (Malla ondeante)
  • E - HELIX (Espiral helicoidal)
  • R - TORUS (Toroide/donut)
  • T - CUBE (Cubo rotante)
  • Y - CYLINDER (Cilindro)
  • U - ICOSAHEDRON (Icosaedro D20)
  • I - ATOM (Núcleo + órbitas)

Temas Visuales (5/6)

  • SUNSET (Atardecer)
  • OCEAN (Océano)
  • NEON (Neón vibrante)
  • FOREST (Bosque)
  • RGB (Círculo cromático matemático)
  • MONOCHROME (Monocromo - próximo)

Mejoras de Presentación 🎨

1. Tema MONOCHROME

Descripción: Tema monocromo con fondo negro degradado y sprites blancos sin colorear Prioridad: Alta Estimación: 30 minutos Detalles:

  • Fondo negro degradado (similar a NEON)
  • Sprites base color blanco (255, 255, 255)
  • Solo modulación de depth (brillo), sin cambio de hue
  • Tecla KP_6 para selección directa

2. Cambio de Tema con LERP

Descripción: Transición suave entre temas sin reiniciar escenario Prioridad: Alta Estimación: 1 hora Detalles:

  • Interpolación lineal (LERP) de colores RGB
  • Transición gradual de 0.5-1.0 segundos
  • Mantener pelotas existentes, solo cambiar colores
  • Fondo degradado también con LERP
  • No llamar a initBalls(), solo actualizar colores

3. Cambio de Textura en Caliente

Descripción: Cambiar sprite/textura sin resetear física Prioridad: Media Estimación: 1 hora Detalles:

  • Sistema de gestión de múltiples texturas
  • Cargar texturas al inicio (ball.png, ball_small.png, etc.)
  • Actualizar collision box dinámicamente según tamaño
  • Tecla dedicada (ej: N) para ciclar texturas
  • Mantener física actual, solo cambiar render

4. Modo DEMO (Auto-play)

Descripción: Modo demostración automática con acciones aleatorias Prioridad: Alta Estimación: 1.5 horas Detalles:

  • Toggle con tecla D
  • Timer que ejecuta acciones cada 3-8 segundos
  • Acciones: cambiar gravedad, activar figura, cambiar tema, impulso
  • Secuencia pseudo-aleatoria pero visualmente coherente
  • Pausable con cualquier tecla de usuario
  • Indicador visual "DEMO MODE" en pantalla

5. Sistema de Release

Descripción: Empaquetado para distribución standalone Prioridad: Media Estimación: 30 minutos Detalles:

  • Crear carpeta release/
  • Script Python pack_resources.py para empaquetar
  • Incluir SDL3.dll
  • Incluir icon.png (si existe)
  • Empaquetar data/ en archivo .dat o .zip
  • Target make release en Makefile
  • README.txt con instrucciones

Futuras Mejoras (Ideas)

Performance

  • Spatial partitioning para colisiones ball-to-ball
  • Level-of-detail para 100K+ pelotas
  • GPU compute shaders para física masiva

Efectos Visuales

  • Trails (estelas de movimiento)
  • Heatmaps de velocidad/energía
  • Bloom/glow para sprites

Física Avanzada

  • Colisiones entre partículas
  • Viento (fuerza horizontal)
  • Campos magnéticos (atracción/repulsión)
  • Turbulencia

Interactividad

  • Mouse: click para aplicar fuerzas
  • Mouse: drag para crear campos
  • Mouse wheel: ajustar intensidad

Última actualización: 2025-10-04