Agregar comentarios descriptivos a defines.h

- Comentar todas las constantes, structs y enums
- Organizar en secciones: ventana, zoom, física, interfaz, rebotes, masa
- Documentar valores y unidades (píxeles, ms, factores)
- Explicar propósito de cada tema de colores

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-09-18 18:49:33 +02:00
parent 8a05f69442
commit 9908165104

View File

@@ -1,21 +1,24 @@
#pragma once
// Configuración de ventana y pantalla
constexpr char WINDOW_CAPTION[] = "vibe3_physics";
constexpr int SCREEN_WIDTH = 640;
constexpr int SCREEN_HEIGHT = 480;
constexpr int SCREEN_WIDTH = 640; // Ancho de la pantalla lógica (píxeles)
constexpr int SCREEN_HEIGHT = 480; // Alto de la pantalla lógica (píxeles)
constexpr int WINDOW_ZOOM = 2; // Zoom inicial de la ventana
constexpr int BALL_SIZE = 10;
constexpr int BALL_SIZE = 10; // Tamaño de las pelotas (píxeles)
// Configuración de zoom dinámico de ventana
constexpr int WINDOW_ZOOM_MIN = 1; // Zoom mínimo (320x240)
constexpr int WINDOW_ZOOM_MAX = 10; // Zoom máximo teórico (3200x2400)
constexpr int WINDOW_DESKTOP_MARGIN = 10; // Margen mínimo con bordes del escritorio
constexpr int WINDOW_DECORATION_HEIGHT = 30; // Altura estimada de decoraciones del SO
constexpr float GRAVITY_FORCE = 0.2f;
// DEMO_SPEED eliminado - ya no se usa con delta time
constexpr Uint64 TEXT_DURATION = 2000;
// Configuración de física
constexpr float GRAVITY_FORCE = 0.2f; // Fuerza de gravedad (píxeles/frame²)
// Configuración de interfaz
constexpr Uint64 TEXT_DURATION = 2000; // Duración del texto informativo (ms)
// Configuración de pérdida aleatoria en rebotes
constexpr float BASE_BOUNCE_COEFFICIENT = 0.75f; // Coeficiente base IGUAL para todas las pelotas
@@ -30,8 +33,9 @@ constexpr float GRAVITY_MASS_MAX = 1.3f; // Factor máximo de masa (pe
constexpr float GRAVITY_CHANGE_LATERAL_MIN = 0.04f; // Velocidad lateral mínima (2.4 px/s)
constexpr float GRAVITY_CHANGE_LATERAL_MAX = 0.08f; // Velocidad lateral máxima (4.8 px/s)
// Estructura para representar colores RGB
struct Color {
int r, g, b;
int r, g, b; // Componentes rojo, verde, azul (0-255)
};
// Enum para dirección de gravedad
@@ -42,10 +46,10 @@ enum class GravityDirection {
RIGHT // → Gravedad hacia la derecha
};
// Enum para temas de colores
// Enum para temas de colores (seleccionables con teclado numérico)
enum class ColorTheme {
SUNSET = 0,
OCEAN = 1,
NEON = 2,
FOREST = 3
SUNSET = 0, // Naranjas, rojos, amarillos, rosas
OCEAN = 1, // Azules, turquesas, blancos
NEON = 2, // Cian, magenta, verde lima, amarillo vibrante
FOREST = 3 // Verdes, marrones, amarillos otoño
};