Book Image

Building Games with Flutter

By : Paul Teale
Book Image

Building Games with Flutter

By: Paul Teale

Overview of this book

With its powerful tools and quick implementation capabilities, Flutter provides a new way to build scalable cross-platform apps. In this book, you'll learn how to build on your knowledge and use Flutter as the foundation for creating games. This game development book takes a hands-on approach to building a complete game from scratch. You'll see how to get started with the Flame library and build a simple animated example to test Flame. You'll then discover how to organize and load images and audio in your Flutter game. As you advance, you'll gain insights into the game loop and set it up for fast and efficient processing. The book also guides you in using Tiled to create maps, add sprites to the maps that the player can interact with, and see how to use tilemap collision to create paths for a player to walk on. Finally, you'll learn how to make enemies more intelligent with artificial intelligence (AI). By the end of the book, you'll have gained the confidence to build fun multiplatform games with Flutter.
Table of Contents (17 chapters)
1
Part 1: Game Basics
5
Part 2: Graphics and Sound
11
Part 3: Advanced Games Programming

Wrapping up the game

In this section, we will add three new screens and navigate between these screens.

These screens are as follows:

  • Menu screen: The first screen the player will see, with options to play the game, view the settings, or exit the game.
  • Settings screen: The settings allow us to change the music volume via a Slider widget or go back to the menu screen.
  • Game over screen: We will show this screen when the player's health is 0 and allow them to go back to the menu screen to play again.

These three screens will use standard Flutter widgets; we will use Flutter navigation routes to navigate between them and our game widget to play the game.

Let's get started by adding each of these screens.

Adding a menu screen

In this section, we will add a menu screen to help us navigate between each of the game's screens by following these steps:

  1. In the project's lib directory, create a new folder called widgets to hold our...