diff --git a/source/defines.h b/source/defines.h index 5dbb31f..6d28913 100644 --- a/source/defines.h +++ b/source/defines.h @@ -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 }; \ No newline at end of file