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

Working with components

As with any growing code base, it's important to have a structure. This is so that the code is easy to maintain as we add more features to the game.

Currently, our code contains a simple example of how to render and update a square on the screen, using the Game mixin to override these functions.

Using the Game mixin gives us a lot of control over our code, but we would have to write a lot of extra code to support the game as the game grows. This is great once you become more familiar with Flame and games programming and want that level of control. However, to begin, it's better to extend from the FlameGame class.

Components provide us with a structured way to organize our game as our game increases in complexity.

FlameGame

The FlameGame class builds on the Game mixin and adds a lot of useful functionality to help us manage the complexity of our game as it grows. This includes the following:

  • Flame Component System
  • Collision...