deanriverson / spacefl

A port of Gerrit Grunwald's SpaceFX game to Flutter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SpaceFL

A simple tiny space game originally written in JavaFX by Gerrit Grunwald (a.k.a hansolo_) and ported to Flutter and Dart. I wanted to see if a (fairly) graphics intensive app really could run at 60 FPS on Android, iOS, web, and desktop; all from a single code base with no changes.

Overview

All Flutter source code is in the lib directory. Platform-specifc build files and source code lives in the ios, android, web, and macos directories.

A few quick pointers to get you started: the Game singleton and its associated GameState class are where you should start if you want to get familiar with the code. The actors package contains all of the ships, torpedoes, explosions, etc. There are also several mixins that provide common behaviors to the actors, such as kinematics and hit testing. The Flutter-specific bits are in the lib/widgets package. The RenderGameBoard class might be of particular interest if you want to see how Flutter RenderObjects work.

Overview

Youtube video

There is a short video that shows the game in action in its mobile, web, and desktop incarnations.

Getting Started with Flutter

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

About

A port of Gerrit Grunwald's SpaceFX game to Flutter

License:Apache License 2.0


Languages

Language:Dart 98.1%Language:Swift 1.2%Language:Kotlin 0.4%Language:HTML 0.2%Language:Objective-C 0.0%