LibGDX

libGDX

Basisdaten

Entwickler Mario Zechner
Erscheinungsjahr 20. April 2014
Aktuelle Version 1.14.2[1]
(5. Juni 2026)
Betriebssystem plattformunabhängig
Programmier­sprache Java
Lizenz Apache 2.0 Lizenz
libgdx.com

libGDX ist ein Java-Framework für plattformunabhängige Spieleentwicklung. Die Programmbibliothek erlaubt es, das gleiche Projekt auf Windows, Linux, macOS, Android, iOS und im Webbrowser auszuführen.[2] libGDX wurde von Mario Zechner erschaffen und auf GitHub als Open-Source-Software unter Verwendung der Apache-2.0-Lizenz freigegeben.[3] Der Name libGDX hat laut Mario Zechner keine bestimmte Bedeutung,[4] wird aber von der Community beispielsweise als „Library for Game Development - Xtreme“ bezeichnet.[5]

Geschichte

2009

libGDX[6] entstand im Jahr 2009 als privates Android-Framework-Projekt von Mario Zechner unter dem Namen AFX (Android Effects). Der erste Schritt zur Plattformunabhängigkeit ist auf die Art und Weise zurückzuführen, wie Android-Applikationen entwickelt werden. Im Normalfall wird ein Android-Endgerät für Debugging verwendet. Ist solch ein Tablet oder Smartphone nicht verfügbar, wird ein Emulator verwendet. Um die Applikationen nativ auf Desktop testen zu können, wurde der Kern in ein eigenständiges Projekt ohne Android-Bezug abstrahiert.

2010

Am 6. März 2010 wurde libGDX auf Google Code als Open-Source-Projekt veröffentlicht. In dieser Zeit wurde der bestehende Code versioniert, Tutorials verfasst, das Forum eröffnet, die Lizenz auf Apache 2.0 geändert, das Buch „Beginning Android Games“ begonnen, und das erste Spiel, welches auf libGDX basiert, veröffentlicht. Ende des Jahres 2010 ist die Version 0.9 der Library fast fertig geworden.

2011

In diesem Jahr haben viele weitere Unterstützer begonnen, bei libGDX mitzuarbeiten. Mario Zechner hat im Februar sein Buch „Beginning Android Games“ veröffentlicht und hat die ersten Präsentationen über sein Spieleentwicklungs-Framework gehalten. Im September wurde Version 0.9.2 veröffentlicht.

2012

2012 wurde libGDX von Google Code auf GitHub migriert und Maven integriert. Außerdem, inspiriert von Googles PlayN, wurde der Web-Support in libGDX eingebaut, damit die Applikation auch im Webbrowser verfügbar ist. Durch Michael Bayne wurde mittels IKVM der Java-Code in .Net-Framework-Byte-Code übersetzt und dieser schließlich in nativen Code für iOS. Ende des Jahres wurden die ersten libGDX Spiele Tropical Stormfront und Desert Stormfront von Noblemaster Games im iOS-App-Store veröffentlicht. libGDX erreichte die Version 0.9.7 in diesem Jahr.

2013

2013 ist Support für Ouya in libGDX implementiert worden. In diesem Jahr ist die Unterstützung für iOS auf RoboVM umgestellt worden. Außerdem wurde die 3D-Programmierschnittstelle von Xoppa und Bach komplett überarbeitet und mit Autodesk FBX Datei-Unterstützung erweitert. Die Entwicklung der Java-Projekte wurde auf das Build-Management-Automatisierungs-Tool Gradle umgestellt und libGDX in der Maven Zentrale veröffentlicht. Im November wurde die Version 0.9.9 von libGDX freigegeben.

2014

Nach vier Jahren Entwicklung wurde die Version 1.0 veröffentlicht.

Architektur und Projektstruktur

libGDX erlaubt ein Projekt mit demselben Code auf unterschiedlichen Plattformen als plattformunabhängiges Programm auszuführen. Die Abstraktion ermöglicht, dass Plattform-spezifischer Code außerhalb des Entwicklungskernes bleibt. Die Struktur trennt das Kernprojekt in den Ordner „core“ und erstellt für jede Plattform ein eigenes Unterprojekt wie beispielsweise „desktop“, „android“, oder „html“. In den Unterprojekten werden einzelne Starter-Klassen angelegt, welche eine neue Instanz des Kernprojektes erstellen und die notwendigen Unterstützungen für die jeweiligen Plattformen bereitstellen. Somit kann neben dem gemeinsamen Code im Kernprojekt auch plattformspezifischer Code in den Unterprojekten angelegt und instanziiert werden.[3]

Leeres Projekt

Ein neues Projekt wird anhand eines Java-Programmes erzeugt. Dieses bietet ein Benutzerinterface, in welchem die gewünschten Plattformen und zusätzliche Programmbibliotheken ausgewählt werden können.[7] Als Beispiel sieht die Ordnerstruktur eines leeren Projektes mit Desktop- und Android-Plattform wie folgt aus:

android/
  res/
  src/../AndroidLauncher.java
assets/
core/
  src/../Game.java
desktop/
  src/../DesktopLauncher.java
gradle

Das Projekt kann mit einer beliebigen Entwicklungsumgebung verwaltet werden, wie beispielsweise Eclipse, IntelliJ, oder NetBeans mit etwaigen Plugins für Gradle-Unterstützung.[8] Die Applikation wird dann über die plattformspezifischen Unterprojekte ausgeführt.

Anwendungen mit libGDX

Im Android-Bereich hat libGDX einen gesamten Marktanteil von 1,69 %, unter Top-Apps einen von 3,26 %, und unter neuen Apps einen von 1,95 % (Stand: 5. Juni 2015).[9] Außerdem ist das Framework auf Platz #3 unter den Top-Spiele-Frameworks für Android-Apps.[10]

Spiele

Vertreter für Spiele, die libGDX als Framework verwenden, sind beispielsweise Ingress, Halfway, Alchemist's Awakening, Delver, Grandpa's Table, Gunslugs 2 und Nubs' Adventure.[11]

Third-party-libraries

libGDX benutzt mehrere Programmbibliotheken um die benötigte Funktionalität anzubieten. Dazu gehören nothings.org, OpenGL, FreeType, Mpg123, xiph.org, soundtouch, box2d, LWJGL, OpenAL und KissFFT.[12]

Einzelnachweise

  1. Release 1.14.2. 5. Juni 2026 (abgerufen am 5. Juni 2026).
  2. https://libgdx.com
  3. a b https://libgdx.com/wiki/
  4. Jason Brownlee: Mobile Game Engines – Interviews with Mobile Game Engine Developers (Memento vom 2. November 2013 im Internet Archive). 2013 (englisch).
  5. @1@2Vorlage:Toter Link/badlogicgames.com (Seite nicht mehr abrufbar, festgestellt im März 2026. Suche im Internet Archive) ( Info: Der Link wurde automatisch als defekt markiert. Bitte prüfe den Link gemäß Anleitung und entferne dann diesen Hinweis.)
  6. Mario Zechner: libGDX 1.0 released (Memento vom 13. Februar 2021 im Internet Archive). 20. April 2014 (englisch).
  7. https://libgdx.com/wiki/start/project-generation
  8. Set Up a Dev Env. Abgerufen am 18. Januar 2022 (englisch).
  9. https://www.appbrain.com/stats/libraries/details/libgdx/libgdx
  10. https://www.appbrain.com/stats/libraries/tag/game-framework/android-game-frameworks
  11. Showcase. Abgerufen am 18. Januar 2022 (englisch).
  12. https://github.com/libgdx/libgdx/wiki/Introduction

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.