About

JavaFX Game Development Framework

Why FXGL?

No installation or setup required

“Out of the box”: Java 8-14, Win/Mac/Linux/Android 5.0+/iOS 11.0+/Web

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, interpolated animations, particles, and many more

Games are easily packaged into a single executable .jar or native images

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

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

For a quick dive into code, see standalone basic examples. Otherwise, see:

Maven

Maven template project if you use Java and/or Kotlin (Java 11+)

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.11</version> </dependency>

Gradle

Gradle template project if you use Java and/or Kotlin (Java 11+)

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.11' }

Uber jar

Download the latest uber jar from Releases

Community

University of Brighton, UK

University of Nottingham, UK

kidOYO, USA

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 be added to the list.

Community tutorials:

Space Ranger at journaldev

Geometry Wars at webtechie

Community projects (identified using fxgl topic):

If you’d like your project featured here, just add a note in the Chat.

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.

@Marsl10

@SergeMerzliakov

@mbains

@sabit86