Repolode
AlmasB

AlmasB/FXGL

基于 JavaFX 的 Java/Kotlin 游戏框架,用于开发 2D 游戏和复杂界面应用。

Star
4,874
Fork
711
未关闭 Issue
144
最近提交
22天前

这是什么?

FXGL 是一个基于 JavaFX、面向 Java 和 Kotlin 的游戏开发框架。它在 JavaFX 之上提供更高层的 API,用于开发 2D 游戏,内置实体-组件设计、插值动画和粒子效果等常用机制。由于它是 JavaFX 的超集,开发者可以直接沿用 JavaFX 的界面控件来制作游戏界面或普通应用。

框架支持 Windows、macOS、Linux、Android、iOS 和 Web 平台,兼容 Java 8 至 25。游戏可以打包成单个可执行 JAR 或原生镜像,并可通过 Maven Central 或 Gradle 引入,同时支持 Java 模块化开发。

项目提供示例代码、教程和 Wiki,适用于教学、个人项目和商业游戏开发,也包含实验性的 3D 支持。

核心功能

  • 01实体-组件架构组织游戏对象
  • 02支持插值动画和粒子效果
  • 03作为 JavaFX 超集,可直接使用 JavaFX 界面控件
  • 04支持 Windows、macOS、Linux、Android、iOS 和 Web
  • 05可打包为单个可执行 JAR 或原生镜像

适用场景

  • 使用 Java 或 Kotlin 开发 2D 横版、平台跳跃、街机或 RPG 游戏
  • 开发带有复杂界面控件和动画的桌面业务应用
  • 用 JavaFX 学习或教授游戏开发
  • 快速原型验证应用或游戏创意

快速上手

  1. 1

    在项目中添加 FXGL 的 Maven 依赖(版本 25)

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

    或者使用 Java/Kotlin 的 Maven/Gradle 模板项目起步

  3. 3

    创建 GameApplication 子类并运行其 main 方法

使用前须知

  • 需要具备 Java 和 JavaFX 的基础知识,并非面向其他语言的通用引擎。
  • README 中的 Gradle 示例使用了已弃用的 jcenter 仓库和 compile 配置。

收录于专题

标签

#game-engine#javafx#java#kotlin#2d#game-development#gamedev#2d-framework#2d-game-engine#2d-game-framework

常见问题

FXGL 是什么?
基于 JavaFX 的 Java/Kotlin 游戏框架,用于开发 2D 游戏和复杂界面应用。 FXGL 是一个基于 JavaFX、面向 Java 和 Kotlin 的游戏开发框架。它在 JavaFX 之上提供更高层的 API,用于开发 2D 游戏,内置实体-组件设计、插值动画和粒子效果等常用机制。由于它是 JavaFX 的超集,开发者可以直接沿用 JavaFX 的界面控件来制作游戏界面或普通应用。
FXGL 可以免费使用吗?用的什么许可证?
FXGL 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
FXGL 还在维护吗?
活跃维护中。FXGL 最近一次提交是在 2026年10月16日。
FXGL 适合用来做什么?
使用 Java 或 Kotlin 开发 2D 横版、平台跳跃、街机或 RPG 游戏 开发带有复杂界面控件和动画的桌面业务应用 用 JavaFX 学习或教授游戏开发 快速原型验证应用或游戏创意
FXGL 怎么安装和运行?
在项目中添加 FXGL 的 Maven 依赖(版本 25): <dependency> <groupId>com.github.almasb</groupId> <artifactId>fxgl</artifactId> <version>25</version> </dependency> 或者使用 Java/Kotlin 的 Maven/Gradle 模板项目起步 创建 GameApplication 子类并运行其 main 方法
在哪里获取 FXGL?
源代码和安装说明在 GitHub 上:https://github.com/AlmasB/FXGL

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目