Kennt ihr eine gute Game Engine für Java?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Die Anzahl frei verfügbarer Game Engines, die Java für die Beschreibung der Spiellogik nutzen, ist ziemlich überschaubar.

Konkret fallen mir nur diese ein:

  • jMonkeyEngine
  • jPCT (für Android)
  • LITIEngine
  • OpenRTS

Es gibt zudem einige Projekte, auf denen man vermutlich aufbauen könnte (jake2, JGameEngine, WobaniEngine, WurfelEngine), falls du auf so etwas Lust haben solltest.

Ansonsten gibt es mehrere Bibliotheken/Frameworks (Slick2D, FXGL, PlayN, LWJGL, libGDX) und bekanntermaßen kann man mit Spigot/Bukkit an Minecraft herumwerkeln.

Kennt ihr diese? Würdet ihr sie empfehlen?

LWJGL ist die Grundlage vieler Java Spiele-Engines/Frameworks. Sie stellt Bindings zu verschiedenen Graphic APIs bereit (Vulkan, OpenGL) und die Wahrscheinlichkeit, Support oder Referenzen zu finden, ist höher, als bei einigen der anderen genannten Tools. Eine Anlaufstelle wäre da bspw. dieses gitbook (3D Game Development with LWJGL).

Als einfach würde ich diese Bibliothek dennoch nicht einstufen, falls du darauf aus bist. In dem Fall würde ich eher auf libGDX oder die jMonkeyEngine verweisen.

LibGDX ist soziemlich die go-to library für Java. Ansonsten wenn es wirklich eine Engine sein soll würde ich auch zu Unity greifen. C# ist nicht sehr weit weg von Java, und Unity ist wesentlich mehr "engine" als LibGDX.

Woher ich das weiß:Berufserfahrung

jmonkey habe ich mal benutzt, ist ok.

Aber, kannst auch mal unity versuchen, c# ist vom syntax und funktionsweise sehr ähnlich zu java, wirst du schnell verstehen.

PrincPersia  19.08.2020, 08:16

Und mit diese Engine hat Notch Minecraft Programmiert?

0
jort93  19.08.2020, 08:33
@PrincPersia

Nein, habe ich doch nie behauptet.

Kommt aber auch nicht besonders auf die engine an was für ein spiel draus wird. Macht wenig sinn eine engine zu benutzen weil sie jemand anderes erfolgreich benutzt hat.

0
jort93  19.08.2020, 08:39
@PrincPersia

Notch hat übrigens die Lightweight Java Game Library direkt benutzt, das ist aber keine engine, sondern eine library. Wie man vielleicht vom namen vermuten kann.

Die Jmonkey engine verwendet die Lightweight Java Game Library intern übrigens. Nur muss man eben nicht manuell mit der library interagieren.

Aber die sagen schon auf ihrer website

LW JGL is an enabling technology and provides low-level access. It is not a framework and does not provide higher-level utilities than what the native libraries expose. As such, novice programmers are encouraged to try one of the  frameworks or  game engines that make use of LWJGL, before working directly with the library.

Und da findet man dann auch als einen vorschlag jmonkey.

Einem anfänger würde ich jmonkey oder vielleicht libGDX empfehlen.

0

LibGDX ist einfach und relativ gut dokumentiert.