Flutter Flame: Desarrollo de juegos
Con Flutter, podemos realizar todo tipo de aplicaciones sobre todo enfocadas al ámbito móvil, pero, también podemos utilizar el mismo proyecto para desarrollar no solamente en Android e iOS, si no, de escritorio para Linux, MacOS y Windows, y también para desarrollo web realizando cambios sutiles en el proyecto a nivel de código. Aunque, Flutter va mucho más allá con Flame.
Flame, es un motor para crear juegos en 2D con Flutter; su instalación es extremadamente sencilla ya que, Flame no es más que un paquete pub; por lo tanto, con esto, podemos crear juegos en 2D con Flame para móvil, escritorio y web.
Con Flame, podemos crear componentes, que vienen siendo los equivalentes a los widgets en Flutter y en donde los componentes no son más que un elemento de nuestro juego, como un jugador, un enemigo, el fondo, un consumible, etc; y cada componente, contiene la implementación para el funcionamiento del mismos; por ejemplo, en el caso de un player o jugador, contiene la lógica para moverlo, cambio de animaciones, control de las vidas, consumibles, etc; y mediante una clase maestra, podemos organizar toda la lógica de estos componentes.
Este libro es mayoritariamente práctico, iremos conociendo los fundamentos de Flame en base a pequeños ejemplos hasta lograr conocer lo suficiente de la librería para crear un juego en 2D sencillo.
Este libro tiene un total de 9 capítulos, se recomienda que leas en el orden en el cual están dispuestos y a medida que vayamos explicando los fundamentos de Flame en base a ejemplos; una vez domines la librería, puedes consultar las secciones en el orden que desees.
- Cearemos un proyecto en Flutter con las dependencias básicas necesarias para crear juegos con Flame en Flutter.
- Este capítulo es mayoritariamente teórico y conoceremos la estructura de Flame, la cual, está basada principalmente en las clases tipo Flame, componentes y métodos del ciclo de vida.
- Vremos un enfoque práctico a las características de Flame, como las clases tipo Game, componentes principales de Flame, entrada de teclado, tap y colisiones.
- Empezaremos creando la estructura de un sencillo juego en 2D de colisiones utilizando como base parte del código visto en el capítulo anterior.
- Presenta el uso de los background para definir el mismo mediante un color sólido o una imagen.
- Presenta el uso de los background tipo tile, usando un software para editar los mapas y utilizándolos en el proyecto en Flutter con Flame.
- Empezaremos creando la estructura de un sencillo juego en 2D de saltos utilizando el sistema de tile presentado anteriormente.
- Realizaremos algunos cambios adicionales sobre el juego anterior como variar el salto, limitar los movimientos del player y definir un fondo.
- Crearemos un nuevo juego cambiando la perspectiva de visualización del mismo y con esto, la jubabilidad.