Arquitectura de videojuegos¶
Diseñar lo necesario hoy sin bloquear lo que el juego necesitará mañana.
No existe una arquitectura universal. Un plataformas pequeño, un RPG, un RTS y un simulador con miles de NPC comparten algunos problemas, pero sus prioridades y presupuestos son distintos. Esta guía reúne decisiones, patrones y recetas que pueden incorporarse gradualmente, sin obligar a usar ECS o una red de servicios desde el primer día.
La entrada permanente es ¿Por dónde empiezo?. Es una herramienta de consulta para cualquier etapa, no solo para proyectos nuevos.
Quiero…¶
| Necesidad | Empezar por |
|---|---|
| Probar una idea de juego | Empezar un juego sin diseñar un framework |
| Decidir el ritmo de simulación | Elegir un game loop |
| Agregar una mecánica | Agregar una mecánica sin acoplar todo el juego |
| Separar gameplay de presentación | Núcleo de simulación y scheduler |
| Definir quién modifica el mundo | Autoridad: quién puede cambiar el mundo |
| Evitar dependencias descontroladas | Módulos de gameplay y contratos |
| Evaluar composición o ECS | Composición, entidades y ECS |
| Configurar NPC, armas y objetos con YAML | Gameplay dirigido por datos y comportamientos declarativos |
| Single-player, host-and-play o dedicado | Tres topologías: local, host-and-play y servidor dedicado |
| Guardar y restaurar el mundo | Guardado, versionado y replay |
| Medir antes de optimizar | Probar la simulación y medir antes de optimizar |
Una arquitectura evolutiva¶
flowchart LR
I["Jugador / IA / scripts"] --> A["Intenciones"]
A --> R["Autoridad"]
R --> S["Simulación"]
S --> W[("Estado del mundo")]
W --> P["Presentación"]
La simulación autoritativa debe ser identificable, no necesariamente un servidor separado. Single-player puede usar llamadas en memoria, sin sockets. Las mecánicas pueden comenzar con objetos simples y luego migrar selectivamente a composición o ECS.
La guía distingue fundamentos, patrones, recetas y especializaciones opcionales. Cada tema señala condiciones, límites y fuentes. Gracias a los enlaces por ID, también se puede navegar desde una página a otras relacionadas y ver qué páginas la mencionan.
El capítulo profundo de IA composicional, con targeting intercambiable y grafos configurables, se preparará en una entrega posterior. Su base conceptual ya aparece en Gameplay dirigido por datos y comportamientos declarativos. Consulta Hoja de ruta de la documentación.