Skip to content
EntityQ940526· pop 11· linked from 276 articles

Lightweight Java Game Library

Sign in to save

Also known as LWJGL

Java-Bibliothek

Key facts

Software.name
LWJGL
Software.title
Lightweight Java Game Library (LWJGL)
Software.logo
LWJGL logo.svg
Software.author
Caspian Prince
Software.developer
Ioannis Tsakpinis
Software.latest release version
3.4.1
Software.programming language
Java, C, Kotlin
Software.operating_system
Linux, macOS, Windows, FreeBSD
Software.platform
Java platform
Software.genre
Free computer library
Software.license
BSD, some bindings under different licenses

via Wikipedia infobox

Source code

LWJGL ( is a Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL/Vulkan), audio (OpenAL) and parallel computing (OpenCL) applications. This access is direct and high-performance, yet also wrapped in a type-safe and user-friendly layer, appropriate for the Java ecosystem. LWJGL 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. If you'd like to contribute, see doc/README for a quick overview of the project structure, installation instructions and configuration options. As of version 3.4.0 and JDK 25, LWJGL supports the FFM API and is fully functional when running with --sun-misc-unsafe-memory-access=deny . See the FFM documentation for details. The build configurator generates Maven & Gradle declarations that can be added to existing projects. This is the easiest way to use LWJGL while developing. To compile and run an LWJGL application, the base and natives JAR files of the core module and each binding used should be added to the classpath. LWJGL extracts the natives to a temporary folder and loads them automatically, so no further configuration is necessary. If more customization is required (e.g. when creating a platform-specific installer) the natives may be extracted manually and loaded via java.library.path . See the Configuration class for more options. For migrating LWJGL 2 code to LWJGL 3, see the Migration Guide. LWJGLX/debug is a Java Agent that will automatically detect a lot of these issues. It can also generate a trace log that's useful when reporting issues to LWJGL. When asking for help or when you suspect a bug in LWJGL, preparing an MVCE (Minimal, Complete, and Verifiable example) that reproduces the issue will improve the chances of a quick and useful response. EGL An interface between Khronos rendering APIs such as OpenGL ES or OpenVG and the underlying native platform window system. KTX (Khronos Texture) A lightweight container for textures for OpenGL®, Vulkan® and other GPU APIs. OpenCL An open, royalty-free standard for cross-platform, parallel programming of diverse processors found in personal computers, servers, mobile devices and embedded platforms. OpenGL The most widely adopted 2D and 3D graphics API in the industry, bringing thousands of applications to a wide variety of computer platforms. OpenGL ES A royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles. OpenXR A royalty-free, open standard that provides high-performance access to Augmented Reality (AR) and Virtual Reality (VR)—collectively known as XR—platforms and devices. Vulkan A new generation graphics and compute API that provides high-efficiency, cross-platform access to modern GPUs used in a wide variety of devices from PCs and consoles to mobile phones and embedded platforms. GLFW Create multiple windows, handle user input (keyboard, mouse, gaming peripherals) and manage contexts. Also features multi-monitor support, clipboard access, file drag-n-drop, and much more. SDL Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL/Direct3D/Metal/Vulkan. JAWT The AWT native interface. Native File Dialog Extended A small C library that portably invokes native file open, folder select and file save dialogs. tinyfd A native dialog library. FMOD An end-to-end solution for adding sound and music to any game. OpenAL A cross-platform 3D audio API appropriate for use with gaming applications and many other types of audio applications. OpenAL Soft An LGPL-licensed, cross-platform, software implementation of the Open

Excerpt from the source-code README · 14,023 chars · not written by Vinony

Wikidata facts

Official website
www.lwjgl.org
Show 11 more facts
binding of software library
OpenCL
IRC channel URL
irc://irc.freenode.net/#lwjgl
programmed in
Java
software version identifier
3.4.1
copyright license
3-clause BSD License
official blog URL
blog.lwjgl.org
operating system
macOS
source code repository URL
svn://svn.code.sf.net/p/java-game-lib/code/trunk
social media followers
2997
Sources (5)

via Wikidata · CC0

Article · Deutsch

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.5 mit den wichtigsten Extensions unterstützt, OpenAL ist bis Version 1.1 implementiert, OpenCL ist bis Version 2.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 ist LWJGL eine plattformunabhängige Alternative zu Microsoft DirectX. Seit dem 13. November 2014 wird an der komplett neu entwickelten Version LWJGL 3.0 gearbeitet. In dieser wurden unter anderem für die Kontext-, Fenstererstellung und Eingabefunktionen eingebunden, sowie stb für das Laden von Bildern, Schriftarten und Ogg Vorbis. Während der Beta-Phase wurden Bindungen für EGL und OpenGL ES eingefügt. In einem zukünftigen Update sollen noch Bindungen für Vulkan eingefügt werden. Da LWJGL3 modular aufgebaut ist, wird möglicherweise Mantle und Direct3D zusätzlich unterstützt. Die Bibliothek steht unter einer BSD-Lizenz, darf also frei verwendet werden, und wurde von Caspian Rychlik-Prince, einem Mitglied von , initiiert.

Abstract from DBpedia / Wikipedia · CC BY-SA