Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udemy

Flame & Flutter with Dart : Build your First 2D Mobile Game

via Udemy

Overview

Game Development from ground up. Learn to design and code a 2D Mobile Game, using full Architectural approach with UML

What you'll learn:
  • Use Flutter and Dart to write a complete 2D Game on top of the Flame Engine. No prior experience necessary.
  • Create from scratch, a game based on the famous retro-game from ATARI: Asteroids.
  • Learn collision detection, particle physics, frame independent motion, parallax, sound design, and other advanced topics in game development.
  • Master design and coding fundamentals that apply to all 2D Game engines.
  • Think like a Software Architect. Go through the complete process of designing, architecting, and coding the game.
  • Learn how to write once and deploy to iOS, Android, and the Web from a single codebase.
  • Develop a solid foundation for game design and game creation that will empower you to build your own games.
  • Learn how to use Object Oriented Programming practically and effectively using Design Patterns

Have you ever dreamed of creating your own mobile game?

Have you ever wanted to code your own mobile game?

If the answer is YES, then THIS course is for you.


You can learn to code a 2D mobile game from the ground up.

Welcome to the Flame Engine 2D Game Crash Course where you will learn how to design and code a full mobile game in less than 6 hours.


There are so many game enthusiasts who would love to learn how to write mobile games, but do not necessarily have the time to dedicate to it.

Many Game Engines have a steep learning curve, so creating a full mobile game would take considerable time and effort.

We have created this course for all the coders who want to get into creating their own mobile game using a 2D Game Engine, and more importantly, we have created this course to take you from 0 to hero in less than 6 hours.

We have provided core 6 hours of lectures but, we also provided more than 5 extra hours of Bonus Material including Coding Exercises and extra eplainers.



Why Flame Engine

The Flame Engine is a minimalist 2D game engine that runs on top of the Flutter framework. So it is light-weight with a small footprint.

This is perfect for mobile games.



Advantages of The Flutter Framework

You work with one code base but get multiple platform deployment. Basically write once, and deploy to both iOS and Android. This is a huge advantage as it saves you time and effort.

And this is great for mobile games since we do not rely on the specific OS GUI as we basically take over the screen and create our own GUI from scratch.



Crash Course Format

This is a crash course. So we remove all the fluff from the usual approach and we focus and zone in, with laser precision, on the fundamentals that apply to all 2D engines. We explain the necessary fundamentals such as:


  1. Game Loop

  2. Component Rendering

  3. Spritesheet Animation

  4. Game Mechanics

  5. Inter-Component Communication and Messaging

  6. Component Interoperability and Composability

  7. Collision Detection

  8. Particle Physics

  9. Math for Game developers such as:

    1. Vector Math

    2. Velocity Control

    3. Rotational Control

    4. Collision Detection

    5. Boundary Detection

  10. Game Parallax For Creating Complex Background Motion

  11. Sound Design - For Adding Sounds, Sound Effects, and Music to Your Game.

  12. All The needed API will be explored as well.



Focus on Fundamentals

We will spend the first 3 hours focusing on fundamentals with sample code and architectural examples.



Architectural Approach

Our approach to teaching the material is a bit different from most courses. We take the architectural approach. This means that we will also teach you some Software Engineering while we are teaching you about the Flame Engine.

We will use UML diagrams to show you the context of what we are doing. All of this is to give you a better perspective of how everything fits together.

In other words we will not only work with code. The main objective here is to teach you to think like a Software Architect. We do not want you to just code this game. We want you to go through the process of designing and architecting it in a professional manner.



Using Case Studies

Part of how we teach you in this course revolves around practical case studies. Each case study shows you a full solution to a given element of 2D game coding such as for example Joystick control or collision detection.



The Game we will develop

We will develop, from scratch, using our architectural approach, a game based on the famous retro-game from ATARI: Asteroids.

This is a perfect game for learning all the fundamentals.



Why this particular game

This is a perfect game to learn a 2D game engine for the following reasons:


  1. It has great Game Mechanics such as:

    1. Spaceship Control

    2. Spaceship Explosion

    3. Tracking of Score and Player's Lives

    4. Firing of Bullets

    5. Asteroid Motion/Rotation and Splitting up

    6. Occasional UFOBonus Showing up

    7. Deterministic Game Level Generation from a JSONFile

  2. This will lead us to fully explore and understand:

    1. Joystick Control

    2. Game Loop Update And Render

    3. Timer Component Callbacks

    4. Vector Math

    5. Collision Detection

    6. Particle Physics

    7. Refresh-Rate Independent Rendering

    8. Sounds Design and Game Music

    9. Parallax Effects for Background

This game is also great to be played on both a phone as well as a tablet device.



Assumptions

We assume that you have some coding experience and we also assume that you know Flutter/Dart and have worked with it.


But in case you have not worked with Flutter do not fret!


The course is designed to help you with the setup and a solid understanding of the language elements because of the architectural approach.


So in reality all you need is experience with any Object Oriented language such as Java, Swift, C#, C++, or TypeScript and you will be fine!


Practice Makes Perfect

For each Case Study we have provided you with a number of Coding Exercises.

We also provide Solution Videos to explain the solution itself, along with code and some PDFmaterials as well.

Taught by

Piotr Paweska

Reviews

4.5 rating at Udemy based on 202 ratings

Start your review of Flame & Flutter with Dart : Build your First 2D Mobile Game

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.