Java / JavaFX / Kotlin Game Library (Engine)
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.travis add up-server info May 7, 2018
fxgl-base "release.sh 0.5.4" Aug 25, 2018
fxgl-samples animation refactor Aug 15, 2018
fxgl "release.sh 0.5.4" Aug 25, 2018
.gitignore ignore hiscore.dat Feb 4, 2017
.travis.settings.xml added GPG Feb 3, 2018
.travis.yml added Travis oraclejdk10 Jul 27, 2018
CONTRIBUTING.md added a note about java 8 API May 26, 2018
LICENSE updated year to include 2018 Jan 3, 2018
README.md added IFRS community user Nov 5, 2018
_config.yml Set theme jekyll-theme-cayman Dec 24, 2016
pom.xml "release.sh 0.5.4" Aug 25, 2018

README.md

promo

About

JavaFX Game Development Framework

Maven Central Javadoc CI codecov

Why FXGL?

  • No native libraries, no installation, no setup required
  • "Out of the box": Java 8/9/10, Win/Mac/Linux/Android 5.0+(Sample)/iOS(alpha)/Web(alpha)
  • Simple and clean API, higher level than other engines
  • Superset of JavaFX: no need to learn new UI API
  • Real-world game development techniques: Entity-Component, Event System, Scripting, etc.
  • Games are easily packaged into a single executable .jar

Good for:

  • Any 2D genre (side-scroller / platformer / arcade / RPG)
  • Complex UI controls
  • Hobby / academic / commercial projects
  • Teaching / learning / improving game development skills
  • Fast prototyping of game ideas

Features

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

Maven

  • Maven project if you use Java
  • Maven project if you use Kotlin

Already have pom.xml? Then add:

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

Gradle

  • Gradle project if you use Java
  • Gradle project if you use Kotlin

Already have build.gradle? Then add:

repositories {
    jcenter()
}

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

Uber jar

Download the latest uber jar from Releases

Community

  • University of Brighton, UK
  • University of Nottingham, UK
  • Walton High School, USA
  • Zealand Institute of Business and Technology, Denmark
  • Federal Institute of Education, Science and Technology of Rio Grande do Sul, Brazil

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).

You can support the FXGL development via PayPal or simply star the repo to show interest.

Contact

  • Ask questions on StackOverflow with tags javafx and fxgl
  • Tweet with #fxgl
  • Chat with the friendly FXGL community
  • Email