Lightweight Java Game Library

Lightweight Java Game Library
Lightweight Java Game Library
Lwjgl.svg
Entwickler Caspian Rychlik-Prince
Aktuelle Version 2.8.1
(15. Oktober 2011)
Betriebssystem plattformunabhängig
Programmier­sprache Java
Lizenz BSD-Lizenz
www.lwjgl.org

Die Lightweight Java Game Library (LWJGL) ist eine Programmbibliothek für die Programmiersprache Java mit dem Fokus auf Spieleentwicklung. Mithilfe von LWJGL kann ein Java-Programmierer auf OpenGL-, OpenAL- und OpenCL-Funktionen zugreifen. OpenGL wird bis Version 4.1 mit den wichtigsten Extensions unterstützt, OpenAL ist bis Version 1.1 implementiert, OpenCL ist bis Version 1.0 implementiert. Seit späteren Alpha-Versionen besteht ebenfalls die Möglichkeit zur Verwendung von DevIL zum Laden und Bearbeiten von Bildern und FMOD zum Laden und Abspielen von Musikdateien. Die DevIL- und FMOD-Unterstützung wurde mit LWJGL 1.0 allerdings wieder entfernt. Die Begründung liegt darin, dass DevIL-Methoden auch in Java implementiert werden könnten und für FMOD bereits andere Implementierungen in Java vorliegen. – LWJGL unterstützt außerdem die Behandlung von Tastatur-, Maus- und Controllereingaben (Joystick, Gamepad, Paddle, ...). Damit stellt LWJGL eine plattformunabhängige Alternative zu Microsoft DirectX dar.

Die Bibliothek steht unter einer BSD-Lizenz, darf also frei verwendet werden, und wurde von Caspian Rychlik-Prince, einem Mitglied von PuppyGames, initiiert.

Inhaltsverzeichnis

Ziele

Der Entwurf von LWJGL wurde hinsichtlich folgender Ziele optimiert:[1]

Geschwindigkeit
Beispielsweise durch Entfernung von Methoden die für effiziente C Programmierung gedacht waren aber für Java nicht geeignet sind, wie z. B. glColor3fv. Sicherstellung beim Start, dass Hardware-Beschleunigung verfügbar ist.
Portabilität
Die Bibliothek wurde so entworfen, dass sie sowohl auf kleinen Geräten wie Handys als auch auf Multiprozessor-Rendering-Servern läuft.
Einfachheit
Die Bibliothek wurde so entwickelt, dass sie sowohl für Anfänger leicht zu benutzen ist als auch für Profis, die damit professionelle Anwendungen entwickeln möchten.
Minimalismus
Damit die Portabilität bestehen bleibt, ist es hilfreich wenn die API klein ist. Ein minimaler Umfang an Funktionen ermöglicht eine bessere Übersicht über die Möglichkeiten und führt zu weniger Fehlern im Code. Es wurden nur Methoden in die Library aufgenommen, die nicht direkt mit Java ausgeführt werden können, deshalb wurde auch GLU bis auf einige wichtige Methoden entfernt.
Sicherheit
Es werden keine Pointer sondern Buffer verwendet. Die Buffer-Positionen werden allerdings überprüft um sicherzustellen, dass die Werte innerhalb des erlaubten Bereichs sind.
Robustheit
OpenGL-Fehlerüberprüfung werden im Java-Code abgebildet anstatt in einer separaten DLL. Dabei handelt es sich um Runtime-Exceptions statt Checked-Exceptions (damit weniger Try-Catch-Anweisungen nötig sind).

Alternativen

  • Jogl
  • GL4Java (seit 2001 nicht mehr aktualisiert)

Auf LWJGL aufbauende Software

LWJGL wird von einer Reihe von Programmen, insbesondere Computerspielen verwendet. [2] Dazu zählen Minecraft, Tribal Trouble oder Sokobano.

Weblinks

Einzelnachweise

  1. About LWJGL
  2. LWJGL Projects

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Lightweight Java Game Library — (LWJGL) Тип библиотека Разработчик группа LWJGL Написана на Java Операционная система кроссплатформенное ПО Последняя версия 2.8.5 (4 ноября 2012 года) Тестовая версия 2.9.0 …   Википедия

  • Lightweight Java Game Library — The Lightweight Java Game Library (LWJGL) is an open source Java software library for game developers.LWJGL exposes high performance cross platform libraries commonly used in developing software games and multimedia titles. It exposes OpenGL… …   Wikipedia

  • Java OpenGL — (JSR 231) Скриншот, демонстрирующий …   Википедия

  • Game engine — A game engine is a system designed for the creation and development of video games. There are many game engines that are designed to work on video game consoles and personal computers. The core functionality typically provided by a game engine… …   Wikipedia

  • List of game engines — Many tools called game engines are available for game designers to code a game quickly and easily without building from the ground up. Contents 1 Free and open source 2 Proprietary 2.1 Commercial 2.2 Freeware …   Wikipedia

  • Source (game engine) — Source engine …   Wikipedia

  • Diesel (game engine) — The Diesel engine is a game engine developed and used by GRIN. The engine was originally developed for their game Ballistics and has been used, albeit with modifications, in a number of other games since then. The first installment of the engine… …   Wikipedia

  • Java OpenGL — Infobox Software name = JOGL (JSR 231) caption = A demo screenshot illustrating real time refraction using JOGL on Mac OS X developer = Sun Microsystems Game Technology Group latest release version = 1.1.1 latest release date = May 22, 2008… …   Wikipedia

  • JOGL — Java OpenGL Beispielgrafik Basisdaten Maintainer JogAmp Community Aktuelle …   Deutsch Wikipedia

  • OpenGL — Desarrollador Khronos Group www.opengl.org Información general Diseñador Silicon Graphics …   Wikipedia Español

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”