2D Game Entwickler und Java. Andere Möglichkeiten als OpenGL? [geschlossen]

12

Ich habe kürzlich angefangen, einige grundlegende OpenGL-Sachen in Java zu programmieren, aber OpenGL und DirectX sind zu viel, um damit umzugehen und sie zu verstehen, und ich langweile mich sehr schnell.

Jetzt frage ich mich, ob es außer OpenGL (oder DirectX) noch andere Möglichkeiten gibt, einfache 2D-Grafiken zu erstellen und in die Spieleentwicklung einzusteigen, auch wenn diese begrenzt sind. Ich werde wahrscheinlich trotzdem OpenGL verwenden, wenn ich erfahrener bin.

Simiil
quelle

Antworten:

13

Es gibt auch die Bibliothek Slick , die die gängigsten Funktionen für die Entwicklung von 2D-Spielen (Bilder, Animationen, Sounds, Gameloop ...) bietet. Es hat den Vorteil gegenüber der Java 2D-Bibliothek, dass es spezifischer für Videospiele ist, da es Kollisionsprüfungen und eine Physik-Engine enthält.

Mr_Qqn
quelle
3
Slick wickelt OpenGl ein und versteckt das "harte Zeug"
David Young
Slick ist eine großartige Bibliothek und ich kann es nur empfehlen. Im Gegensatz zu vielen Game-Engines, die Sie dazu zwingen, Dinge auf ihre Weise zu tun, geht Slick Ihnen aus dem Weg und Sie können sich darauf konzentrieren, Dinge zu erledigen.
Alex Schearer
Ich werde es auf jeden Fall versuchen, es scheint wirklich gut zu sein
Simiil
Ich empfehle Slick
Bryan Denny
Slick ist seit Jahren ab 2018 veraltet.
Uhr
9

Natürlich! Java verfügt über eine integrierte Java 2D-Bibliothek, für die keine OpenGL- oder DirectX-Kenntnisse erforderlich sind. Ich empfehle dringend, damit zu beginnen! In der Tat hat es ziemlich gute Leistung.

Der wesentliche Ausgangspunkt besteht darin, eine eigene Klasse zu definieren, die Frame (oder Applet) erweitert, und dann die paint(Graphics g)Methode zu überschreiben und gzum Zeichnen auf dem Bildschirm zu verwenden.

Ricket
quelle
1
In der Tat nichts falsch mit Java 2D. Wirf g aber einfach auf Graphics2D um, oder du wirfst alle Dinge weg, die es gut machen.
Bart van Heukelom
Diese Antwort (+1) gefällt mir, weil sie eine reine Java-Lösung vorschlägt, für die keine Bibliotheken von Drittanbietern erforderlich sind, die keine Java-Komponenten enthalten (z. B. solche, die in ASM / C / C ++ geschrieben und kompiliert wurden).
Randolf Richardson
Ja, das macht es 100% portabel (plattformübergreifend), stabil (da die Java 2D-Bibliothek vermutlich besser getestet wurde als viele Bibliotheken von Drittanbietern), gut unterstützt und einfach zu entwickeln und bereitzustellen. Ich empfehle auch das Buch "Developing Games in Java" von David Brackeen; Darin entwickelt er eine Software-3D-Engine, die nur Java 2D verwendet, und das Buch erklärt sie natürlich Schritt für Schritt, einschließlich der Mathematik und der Entscheidungen und Optimierungen, die dabei getroffen werden. Es ist sehr beeindruckend und aufgeschlüsselt, so dass es leicht zu verstehen ist.
Ricket
3

Warum benutzt du nicht einfach Swing oder Awt (für 2D)? Wenn Sie Ihr Spiel richtig designen (ich meine, ein gut durchdachtes MVC-Design), können Sie Ihr Spiel später mit einer besseren Game-Display-Engine aufrüsten. Das Hauptziel, wenn Sie alleine arbeiten, ist es, schnell zu erreichen, dass etwas auf dem Bildschirm angezeigt wird, nicht wahr? Es steigert Ihre Begeisterung ...

Pierre Watelet
quelle
3

Nicht speziell für Spiele gedacht, aber die Verarbeitung ist sehr beliebt für 2D-Canvas-Grafiken. Es könnte interessant sein, dies zu überprüfen.

CeeJay
quelle
2

Probieren Sie grundlegende Canvas-Bibliotheken aus, wenn Sie nur 2D-Spiele entwickeln möchten. Ich lerne eigentlich nicht, 2D-Canvas zu verwenden, indem ich ein Spiel genau zu dem Zeitpunkt aufbaue, an dem diese Frage gestellt wurde :) Jetzt mache ich meinen Abschluss bei webGL.

Shouvik
quelle