Este programa de ejemplo está basada en esta serie de vídeos de Fran Gallego, también conocido como Profesor Retroman en Youtube:
- GameEngine ECS: Programando un Atari Assault - part 1.
- GameEngine ECS: Programando un Atari Assault - part 2.
- GameEngine ECS: Programando un Atari Assault - part 3.
Este proyecto se ha desarrollado en macOS, pero se supone que en Linux o Windows funcionará de forma similar.
Para construir el proyecto desde cero, teniendo instalada la CPCTelera correctamente, tecleamos make clean && make
.
Para lanzarlo en el emulador WinApe, tecleamos cpct_winape -a
.
Para editar los gráficos hemos usado Aseprite, que implementa tanto píxeles horizontales (2:1) como la paleta de colores del Amstrad CPC. No obstante, cualquier herramienta de edición de gráficos que permita dibujar píxel a píxel es perfectamente válida.
Se explican todas ellas en los vídeos. A continuación se citan las más relevantes (bajo nuestro criterio).
- Por simplicidad, la lectura de teclado se hace desde el sistema de físicas.
- El manager del juego es el encargado de gestionar todas las reglas. Por tanto, también gestionará la creación de entidades, ya que depende de las reglas y de las circunstancias del juego. Los sistemas se hablarán con el manager del juego si necesitan crear entidades.
- Uso del calificador const para indicar variables de sólo lectura y hacer más robusto el código
- Durante el desarrollo aparece la necesidad de diferenciar entre tipos de entidades y componentes de las mismas.
En proceso (al menos falta un vídeo para completar la serie).