This repo contains sample games built with FXGL Game Library. Each game focuses on one or two aspects of FXGL, e.g. Drop focuses on bare minimums, Pac-man focuses on AI, etc.
Checkout this commit for Java 8 code for all projects (FXGL 0.5.4). All projects will eventually be upgraded to Java 11 code (FXGL 11.0+).
Run
cd PROJECT_NAME
mvn javafx:run
Build for Mobile
Follow latest instructions from client-samples. A relevant extract is copied below.
For example, to build Breakout for Android (can only build from Linux):
-
Download GraalVM zip:
graalvm-ce-java11-linux-amd64-20.2.0.tar.gz
-
Set
GRAALVM_HOME
andJAVA_HOME
environment variables to the GraalVM installation directory. For example:
export GRAALVM_HOME=/opt/graalvm-ce-java11-20.2.0
export JAVA_HOME=$GRAALVM_HOME
cd Breakout
mvn clean client:build
mvn client:package
// connect your Android device and allow it installation over USB
mvn client:install
You can now run the game from Android, or you can run with logging from Linux: mvn client:run
.
Contribute
These game demos are constantly upgraded, so feel free to fork and add something of your own.
Projects by difficulty
Beginner
- Cannon
- Drop
- Tower Defense
- Bomberman
- OutRun (in Kotlin)
- Shooter
- Space Runner
Intermediate
- GeoJumper (in Kotlin)
- Pong
- Breakout
- TicTacToe
- Battle Tanks
- Flappy Bird
- Slot Machine
Advanced
Community
You are very welcome to contribute to any of these games, or link to your own games. List of community developed games / demos: (Please add links below)
- FXGL based Idle Game by Daniel Künkel.
- Greedy Snake Game by wuzirui