promo

About

JavaFX Game Development Framework

Maven Central Build Status codecov

Why FXGL?

Good for:

Minimal Example

public class BasicGameApp extends GameApplication {

    @Override
    protected void initSettings(GameSettings settings) {
        settings.setWidth(800);
        settings.setHeight(600);
        settings.setTitle("Basic Game App");
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Getting Started

FXGL 11 supports Java 11+ and has a more scalable architecture, but currently supports only a subset of features from 0.5.4.

Want a quick dive into code? See basic examples. Otherwise, you have the following options:

Maven

Already have pom.xml? Then add: (use 0.5.4 for Java 8-10). Note: make sure to set <release>11</release> for maven-compiler-plugin.

<dependency>
    <groupId>com.github.almasb</groupId>
    <artifactId>fxgl</artifactId>
    <version>11.6</version>
</dependency>

Gradle

Already have build.gradle? Then add: (use 0.5.4 for Java 8-10). Note: in case you have errors, please see templates for Gradle above.

repositories {
    jcenter()
}

dependencies {
    compile 'com.github.almasb:fxgl:11.6'
}

Uber jar

Download the latest uber jar from Releases

Community

If your institution wants to use / is using FXGL, drop me an email to discuss how FXGL can aid your course.

Contribution & Support

If you want to build FXGL from sources or want to contribute, please see the Contribution Guide (including non-code). FXGL is fully modular, so new contributors do not need to understand the entire codebase, only the module to which the contribution is made.

You can support the FXGL development / show interest by simply starring the repo or becoming a sponsor.

Sponsors

Contact