Descripción y por qué?
- El motor está diseñado para soportar renderizado 2D y 3D a través de OpenGL, con una interfaz de edición moderna y responsive. Es multiplataforma y funciona tanto en Windows como en Linux. Intento depender lo menos posible de código específico de plataformas. Actualmente, el motor admite serialización, renderizado básico y gestión de assets.
- El objetivo principal de este motor es aprender sobre la arquitectura de los motores de juegos y ver cómo funcionan en en realidad.
Capturas
Funciones principales
- Funciona en windows y en linux
- Editor:
- Interfaz de usuario hecha con ImGui
- Al igual que con cualquier aplicación moderna, puedes acoplar y organizar las ventanas
- El panel de jerarquía de escenas se integra perfectamente con el ECS
- Funciones de arrastrar y soltar
- Gráficos:
- Renderizado basado en OpenGL
- Renderizador 2D y 3D
- Sistema de materiales
- ECS:
- Librería ECS (Entity Component System) personalizada
- Implementación que utiliza la caché
- Serialización:
- Todo el estado de la aplicación se escribe en el disco en formato yaml
- Los proyectos, las escenas y los metadatos de los assets se pueden volver a cargar para almacenar el progreso
Detalles técnicos
- Build system:
- Premake5 se usa para generar archivos de proyecto para windows y linux
- Librerías usadas: