Fase 1: Migración inicial a C++20 modules
Implementada la estructura base de módulos para vibe2_modules: - Configurado CMakeLists.txt para soportar C++23 y módulos - Creado módulo core.cppm con tipos básicos (Color, ColorTheme, constantes) - Creado módulo sdl_wrapper.cppm para encapsular SDL3 - Migrado defines.h completamente al módulo core - Actualizado ball.h y ball.cpp para usar el módulo core - Actualizado main.cpp para importar y usar el módulo core - Eliminado defines.h obsoleto El proyecto ahora compila y funciona con módulos C++20. Próximos pasos: crear módulos especializados (physics, rendering, etc.) 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+5
-9
@@ -16,7 +16,7 @@
|
||||
#include <vector> // for vector
|
||||
|
||||
#include "ball.h" // for Ball
|
||||
#include "defines.h" // for SCREEN_WIDTH, SCREEN_HEIGHT, WINDOW_SIZE
|
||||
import vibe2.core; // Módulo con constantes y tipos básicos
|
||||
#include "external/dbgtxt.h" // for dbg_init, dbg_print
|
||||
#include "external/texture.h" // for Texture
|
||||
|
||||
@@ -27,6 +27,9 @@ std::shared_ptr<Texture> texture = nullptr;
|
||||
std::vector<std::unique_ptr<Ball>> balls;
|
||||
std::array<int, 8> test = {1, 10, 100, 500, 1000, 10000, 50000, 100000};
|
||||
|
||||
// Usar namespace del módulo
|
||||
using namespace vibe2;
|
||||
|
||||
bool should_exit = false; // Controla si la aplicación debe cerrarse
|
||||
// ticks eliminado - reemplazado por delta time system
|
||||
int scenario = 0; // Escenario actual basado en el número de bolas
|
||||
@@ -52,14 +55,7 @@ float delta_time = 0.0f; // Tiempo transcurrido desde el último frame en se
|
||||
// Variables para Debug Display
|
||||
bool show_debug = false; // Debug display desactivado por defecto
|
||||
|
||||
// Sistema de temas de colores
|
||||
enum class ColorTheme {
|
||||
SUNSET = 0,
|
||||
OCEAN = 1,
|
||||
NEON = 2,
|
||||
FOREST = 3
|
||||
};
|
||||
|
||||
// El sistema de temas ahora está en el módulo core
|
||||
ColorTheme current_theme = ColorTheme::SUNSET;
|
||||
std::string theme_names[] = {"SUNSET", "OCEAN", "NEON", "FOREST"};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user