Skip to content
This repository was archived by the owner on Sep 22, 2026. It is now read-only.

Latest commit

 

History

128 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Motivo de archivo: El editor no he conseguido llevarlo a buen puerto y tengo mejores cosas que hacer. Sin embargo lo dejo público y archivado a modo de referencia. Tal vez lo retome en un futuro.

Alca.MonoGame — Librería y Editor

Framework de juegos 2D/3D para MonoGame construido sobre .NET 10 y C# 14, con un editor visual en desarrollo.


¿Qué es esto?

Este repositorio contiene dos proyectos principales:

Alca.MonoGame.Kernel — La librería

Alca.MonoGame.Kernel es un framework de alto nivel que extiende MonoGame con todos los sistemas necesarios para desarrollar juegos completos sin partir de cero:

  • ECS — entidades, componentes (GameBehaviour), jerarquías padre-hijo y pools zero-alloc
  • Escenas — gestor de escenas con transiciones fade y overlays apilables
  • Gráficos 2D/3D — cámaras, sprites, animación, partículas, shaders, post-procesado, Tiled
  • UI — más de 20 controles listos para usar, 5 tipos de layout, foco con teclado/gamepad
  • Audio — mixer por canales, audio 3D espacial, pools y crossfade de música
  • Input — action maps remapeables con soporte de teclado, ratón y gamepad
  • Física 2D — integración con Aether.Physics2D: rigid bodies, colliders, joints y queries
  • Iluminación 2D — luces CPU/GPU: ambiental, direccional, puntual y spot
  • Navegación — A* sobre NavGrid, NavAgent autónomo y steering behaviors
  • Networking — servidor/cliente UDP (LiteNetLib), replicación de campos con NetFields
  • Módulos auxiliares — persistencia, FSM, tweening, event bus, localización, timers y más

Todo el game loop es zero-alloc: sin LINQ, sin new de clases en Update/Draw.

MonoGame Editor — El editor (en desarrollo)

Editor visual de MonoGame construido con .NET MAUI, orientado a facilitar la creación de escenas, configuración de entidades y ajuste de propiedades sin necesidad de recompilar.

Actualmente en fase de desarrollo — los proyectos relevantes son:

  • src/Editor/MonoGame.Editor.Core — lógica central del editor (sin dependencias de UI)
  • src/Editor/MonoGame.Editor.Maui — interfaz de usuario MAUI (Windows)
  • src/Editor/MonoGame.Editor.SourceGenerator — generador de código Roslyn (AOT)

Estructura del repositorio

src/
├── Library/
│   ├── Alca.MonoGame.Kernel/          ← librería principal
│   ├── Alca.MonoGame.Kernel.UnitTests/← tests xUnit (~700 tests)
│   └── Wiki/                          ← documentación completa
├── Editor/
│   ├── MonoGame.Editor.Core/          ← núcleo del editor
│   ├── MonoGame.Editor.Maui/          ← UI del editor (MAUI, Windows)
│   └── MonoGame.Editor.SourceGenerator/ ← generador de código Roslyn
└── Demo/
    └── Alca.MonoGame.Demo/            ← proyecto de demostración

Requisitos

Componente Versión
.NET 10.0
MonoGame.Framework.DesktopGL 3.8.x
MonoGame.Extended 6.0.x
Aether.Physics2D.MG 2.2.x
LiteNetLib 1.3.x
Microsoft.Extensions.DependencyInjection 10.0.x

Documentación

La documentación completa de Alca.MonoGame.Kernel está disponible en la wiki integrada:

→ Wiki / Documentación

Incluye inicio rápido, referencia de API con ejemplos de código y notas de rendimiento para todos los módulos.

About

My custom monogame library implementation and custom monogame editor (WIP)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages