Implementar sistema completo de temas visuales con 4 temas de colores
- Añadir enum ColorTheme con 4 temas: SUNSET, OCEAN, NEON, FOREST - Implementar fondos degradados temáticos con SDL_RenderGeometry - Crear paletas de 8 colores únicos por tema para las pelotas - Añadir controles F1-F4 para selección directa de temas - Añadir tecla T para ciclado secuencial entre temas - Mostrar nombre de tema temporalmente en pantalla con colores temáticos - Mejorar debug display con líneas separadas y números formateados - Actualizar README con documentación completa del sistema de temas - Corregir texto debug para compatibilidad ASCII con dbgtxt 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -6,9 +6,10 @@
|
||||
|
||||
- **Simulacion de fisica**: Gravedad, rebotes y colisiones con perdida de energia
|
||||
- **Multiples escenarios**: 8 configuraciones predefinidas (1 a 100,000 pelotas)
|
||||
- **Sistema de temas visuales**: 4 temas de colores con fondos degradados y paletas tematicas
|
||||
- **Interactividad**: Controles de teclado para modificar el comportamiento
|
||||
- **Renderizado batch optimizado**: Sistema de batch rendering con SDL_RenderGeometry para 50K+ sprites
|
||||
- **Colores aleatorios**: Cada pelota tiene un color unico generado proceduralmente
|
||||
- **Colores tematicos**: Paletas de 8 colores por tema aplicadas proceduralmente
|
||||
- **Monitor de rendimiento**: Contador FPS en tiempo real
|
||||
- **Control V-Sync**: Activacion/desactivacion dinamica del V-Sync
|
||||
|
||||
@@ -18,6 +19,8 @@
|
||||
|-------|--------|
|
||||
| `H` | **Alternar debug display (FPS, V-Sync, valores fisica)** |
|
||||
| `V` | **Alternar V-Sync ON/OFF** |
|
||||
| `F1-F4` | **Seleccion directa de tema de colores (Atardecer/Oceano/Neon/Bosque)** |
|
||||
| `T` | **Ciclar entre temas de colores** |
|
||||
| `1-8` | Cambiar numero de pelotas (1, 10, 100, 500, 1K, 10K, 50K, 100K) |
|
||||
| `ESPACIO` | Impulsar todas las pelotas hacia arriba |
|
||||
| `G` | Alternar direccion de la gravedad |
|
||||
@@ -26,14 +29,43 @@
|
||||
## 📊 Informacion en Pantalla
|
||||
|
||||
- **Centro**: Numero de pelotas activas en **blanco** (temporal)
|
||||
- **Centro**: Nombre del tema activo en **color tematico** (temporal, debajo del contador)
|
||||
|
||||
### Debug Display (Tecla `H`)
|
||||
|
||||
Cuando se activa el debug display con la tecla `H`:
|
||||
|
||||
- **Esquina superior izquierda**: Estado V-Sync (VSYNC: ON/OFF) en **cian**
|
||||
- **Esquina superior izquierda**: Estado V-Sync (VSYNC ON/OFF) en **cian**
|
||||
- **Esquina superior derecha**: Contador FPS en tiempo real en **amarillo**
|
||||
- **Linea 3**: Valores fisica primera pelota (GRAV, VY, FLOOR) en **magenta**
|
||||
- **Lineas 3-5**: Valores fisica primera pelota (GRAV, VY, FLOOR) en **magenta**
|
||||
- **Linea 6**: Tema activo (THEME SUNSET/OCEAN/NEON/FOREST) en **amarillo claro**
|
||||
|
||||
## 🎨 Sistema de Temas de Colores
|
||||
|
||||
**ViBe1 Delta** incluye 4 temas visuales que transforman completamente la apariencia del simulador:
|
||||
|
||||
### Temas Disponibles
|
||||
|
||||
| Tecla | Tema | Descripcion | Fondo | Paleta de Pelotas |
|
||||
|-------|------|-------------|-------|-------------------|
|
||||
| `F1` | **ATARDECER** | Colores calidos de puesta de sol | Degradado naranja-rojo | Tonos naranjas, rojos y amarillos |
|
||||
| `F2` | **OCEANO** | Ambiente marino refrescante | Degradado azul-cian | Azules, cianes y verdes agua |
|
||||
| `F3` | **NEON** | Colores vibrantes futuristas | Degradado magenta-cian | Magentas, cianes y rosas brillantes |
|
||||
| `F4` | **BOSQUE** | Naturaleza verde relajante | Degradado verde oscuro-claro | Verdes naturales y tierra |
|
||||
|
||||
### Controles de Temas
|
||||
|
||||
- **Seleccion directa**: Usa `F1`, `F2`, `F3` o `F4` para cambiar inmediatamente al tema deseado
|
||||
- **Ciclado secuencial**: Presiona `T` para avanzar al siguiente tema en orden
|
||||
- **Indicador visual**: El nombre del tema aparece temporalmente en el centro de la pantalla con colores tematicos
|
||||
- **Regeneracion automatica**: Las pelotas adoptan automaticamente la nueva paleta de colores al cambiar tema
|
||||
|
||||
### Detalles Tecnicos
|
||||
|
||||
- **Fondos degradados**: Implementados con `SDL_RenderGeometry` usando vertices con colores interpolados
|
||||
- **Paletas tematicas**: 8 colores unicos por tema aplicados aleatoriamente a las pelotas
|
||||
- **Rendimiento optimizado**: El cambio de tema solo regenera los colores, manteniendo la fisica
|
||||
- **Compatibilidad completa**: Funciona con todos los escenarios (1 a 100,000 pelotas)
|
||||
|
||||
## 🏗️ Estructura del Proyecto
|
||||
|
||||
|
||||
Reference in New Issue
Block a user