Java 3d Spiele programmieren?
Hallo Gutefrage,
Ich würde gerne 3d Spiele mit Java programmieren ( Minecraft wurde ja auch mit Java programmiert ). Ich habe mal was von LWJGL und/oder OpenGL gehört. Kann mir jemand weiter helfen wie ich das lernen kann.
Grüße
3 Antworten
Für die Entwicklung von 3D-Spielen mit Java eignen sich LWJGL oder die jMonkeyEngine am besten. Letztere baut auf LWJGL auf, ist aber noch weiter entwickelt bzw. mit mehr Features ausgestattet. Daher würde ich dir zu dieser Option am stärksten raten.
Ein weiteres Tool, welches ebenso LWJGL als Basis nimmt, ist libGDX. Es gibt einen Basissupport für 3D-Programmierung, das Projekt Mundus hat damit einen 3D-Scene Editor gebaut, den du evt. adaptieren könntest.
Auf einer tieferen Ebene als LWJGL anzusetzen (dafür wäre dann JOGL geeignet), kann ich nicht empfehlen, denn es bringt dich viel mehr vom eigentlichen Ziel (der Entwicklung eines Spiels) ab. Du müsstest dich um viele Funktionalitäten (z.B- Input- und Audiomanagement) selbst kümmern.
Die ersten Anlaufstellen sollten wie üblich die jeweiligen Online-Dokumentationen darstellen. Ansonsten sind Lernquellen dazu tatsächlich leider etwas dünn gesät.
JME:
- jMonkeyEngine Dokumentation
- YouTube: jMonkeyEngine
- jMonkeyEngine 3.0 Game Development: A Practical Guide - R. Reese & J. Johnson
LWJGL:
- Gitbook 3D Game Development with LWJGL 3 von Bejarano
- GitHub-Projektseite (verweist auf Tutorials, Beispiele und das Wiki)
- Offizielle Webseite
Der Typ programmiert 3D Spiele mit Java und LWJGL. Der hat auch Tutorials gemacht
https://www.youtube.com/c/ThinMatrix
Verfolge den seit einiger Zeit.
Nein, auf deutsch gibt es da nicht viel. Software Entwicklung ist was, wo du englisch können MUSST. Alle Dokumentationen zu APIs und sowas gibt es fast ausschließlich in englisch.
Ich kann zwar Englisch, aber in Deutsch währe es leichter gewesen. Ist aber auch kein Problem in Englisch
YouTube Tutorials, kleine Projekte. Java würde ich aber nochmal überdenken
Gibt‘s da auch was auf Deutsch? Ein Buch einen Kurs oder so?