Friends of OpenJDK Today

FXGL Game Engine 11.16 Release

May 25, 2021

Author(s)

  • Avatar photo
    Almas Baimagambetov

    Principal Lecturer, Computing Department Lead at the University of Brighton. Author of #FXGL game engine. #Java #JavaFX #Kotlin open sourcerer. PhD in Computer Science.

FXGL is a JavaFX game engine: https://github.com/AlmasB/FXGL

Release Highlights

  1. The restored Multiplayer Service allows easy replications of input, events and entities on a remote machine. For example, by just adding a single line of code (see MultiplayerService API), any key or mouse inputs that occur on one end of the connection can be replicated on the other end.
  2. The new FPS camera allows easy control of the player (or their "line of sight") in the context of a first-person 3D game.
  3. There is no longer a transitive dependency on the javafx.swing module. This means FXGL users will not need an extra module in their module graph.

Release Notes

  • Restored and refactored MultiplayerService
  • Added ReplicationEvent (javafx event that can be replicated on a remote machine)
  • FPS camera (camera3D.setFPSCamera(true))
  • Mouse sensitivity setting
  • Removed dependency on javafx.swing module, thanks to @FDelporte
  • Performance improvements in Tiled map loading, thanks to @adambocco
  • isExperimental3D -> 3D
  • isExperimentalNative -> isNative
  • Model3D can be loaded from an .obj
  • Model3D now has a copy()
  • Added Cuboid shape
  • EntityGroup::size(), thanks to @adambocco
  • Allow providing a custom default cursor for all scenes
  • Internal physics refactoring
  • Entity no longer throws an exception when adding a duplicate Component (warns instead), thanks to @Zhack47
  • JavaFX 15 -> 16
  • Compile target for Kotlin: 1.8 -> 11

Video

Author(s)

  • Avatar photo
    Almas Baimagambetov

    Principal Lecturer, Computing Department Lead at the University of Brighton. Author of #FXGL game engine. #Java #JavaFX #Kotlin open sourcerer. PhD in Computer Science.

Comments (0)

Your email address will not be published. Required fields are marked *

Highlight your code snippets using [code lang="language name"] shortcode. Just insert your code between opening and closing tag: [code lang="java"] code [/code]. Or specify another language.

Save my name, email, and website in this browser for the next time I comment.

Subscribe to foojay updates:

https://foojay.io/feed/
Copied to the clipboard