A JavaFX-based game development framework for building 2D games and complex UI applications with a clean, high-level API.
FXGL is a Java and Kotlin game development framework built on JavaFX, designed to simplify the creation of 2D games and complex UI applications. It provides a high-level API that abstracts away low-level details, enabling rapid development and cross-platform deployment without extensive setup.
Java and Kotlin developers interested in game development, educators teaching game programming, and developers building business applications with rich, animated user interfaces.
Developers choose FXGL for its clean, intuitive API that reduces learning curves, its seamless integration with JavaFX for UI development, and its out-of-the-box support for multiple platforms, making it ideal for both hobbyist projects and professional applications.
Java / JavaFX / Kotlin Game Library (Engine)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Runs on Java 8-25 and supports deployment to Windows, macOS, Linux, Android, iOS, and web out of the box with no installation required, as highlighted in the README.
Acts as a superset of JavaFX, so developers can leverage familiar UI APIs without learning a new framework, reducing the learning curve.
Implements real-world game development patterns for flexible game object management, enabling scalable and modular design.
Games can be packaged into a single executable JAR or native images for distribution, simplifying the release process as noted in the features.
The README admits 3D is experimental, making it unsuitable for projects requiring robust 3D graphics compared to dedicated engines.
Tied to JavaFX, which can introduce performance overhead and may not match the capabilities of lower-level graphics libraries for intensive tasks.
Has a smaller community and fewer third-party assets or tools compared to mainstream engines like Unity or Godot, which can slow down development.