Lightweight Java Game Library
Lua error in package.lua at line 80: module 'strict' not found.
Developer(s) | LWJGL team |
---|---|
Stable release | 3.0.0b / 20 November 2015 |
Preview release | 3.0.0b / 20 November 2015 |
Development status | Active |
Written in | Java, C, Kotlin[1]:{{{3}}}[2]:{{{3}}} |
Operating system | Windows, Linux, OS X |
Platform | Java platform |
Type | Free computer library |
License | BSD license[3]:{{{3}}} |
Website | {{ |
The Lightweight Java Game Library (LWJGL) is an open source Java software library for video game developers.
LWJGL exposes high performance cross-platform libraries commonly used in developing video games and multimedia titles, such as OpenGL (Open Graphics Library), OpenAL (Open Audio Library) and OpenCL (Open Computing Language). It further provides access to controllers such as gamepads, steering wheels and joysticks in a platform-neutral way.[4]:{{{3}}}
The primary goal of the project is to provide a way for Java developers to get access to resources that are otherwise unavailable or poorly implemented on the existing Java platform. The main philosophy is to expose underlying technology as a thin wrapper, thus creating a simple API. It is also the basis of many high-level Java game engines and libraries, such as LibGDX or the JMonkeyEngine.
LWJGL is available under a BSD license.[3]:{{{3}}}
On 13 November 2014 version 3 was announced, which was released in alpha version on 27 April 2015 and is a complete rewrite of LWJGL.[5]:{{{3}}}[6]:{{{3}}}[7]:{{{3}}} Many new bindings, including GLFW, EGL and Objective-C, were added.[3]:{{{3}}}[6]:{{{3}}} Support for Oculus Rift development was also added with LibOVR bindings.[3]:{{{3}}}[7]:{{{3}}}
Contents
Bindings
Lua error in package.lua at line 80: module 'strict' not found. The library accesses native C code through the Java Native Interface (JNI). Bindings to each of the native libraries exist as different modules so developers can make custom builds with only the things they need in a certain program.[3]:{{{3}}}[7]:{{{3}}}[8]:{{{3}}}
While utility classes are written in pure Java, most of the binding classes are automatically generated by a custom generator implemented in Kotlin.[1]:{{{3}}}[2]:{{{3}}}
Binding | Description | Notes |
---|---|---|
GLFW | Window management library needed for handling an OpenGL context. | |
OpenGL | 3D graphics specification implemented by most GPU vendors. | Most extensions supported, but less popular ones will be added on request. |
OpenAL | Three-dimensional audio API. | ALC and other extensions are supported. |
OpenCL | API for cross-platform parallel computing. | |
OpenGL ES | OpenGL for embedded systems like mobile phones, tablets or consoles. | |
EGL | ||
Vulkan | Upcoming, as of August 2015[update].[3]:{{{3}}} | |
LibOVR | API of the Oculus Rift. | As of July 2015[update] still in beta status. |
Objective-C | Interface to Apple's Cocoa API. | |
STB | Lightweight single-file library for loading images, sounds and fonts. | |
libffi | Library for calling generic native functions. | |
jemalloc | Low-level memory management. |
See also
- Java OpenGL, another wrapper library that allows OpenGL to be used in the Java programming language
- JMonkeyEngine, game engine using LWJGL
- Minecraft, popular game using LWJGL
- LibGDX, game-development application framework using LWJGL[9]:{{{3}}}
References
<templatestyles src="Reflist/styles.css" />
Cite error: Invalid <references>
tag; parameter "group" is allowed only.
<references />
, or <references group="..." />
External links
- No URL found. Please specify a URL here or add one to Wikidata.
- LWJGL on GitHub
- Lightweight Java Game Library on SourceForge.net (old repository, up to 2.9.3)
- lwjgl on Stack Overflow
- ↑ 1.0 1.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 3.0 3.1 3.2 3.3 3.4 3.5 3.6 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 6.0 6.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 7.0 7.1 7.2 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- Pages with reference errors
- Use dmy dates from October 2015
- Articles using small message boxes
- Articles containing potentially dated statements from August 2015
- Articles containing potentially dated statements from July 2015
- Official website missing URL
- Audio libraries
- Cross-platform free software
- Free 3D graphics software
- Free computer libraries
- Free game engines
- Free graphics software
- Free software programmed in Java (programming language)
- Graphics libraries
- Java APIs
- Java (programming language) libraries
- Oculus Rift
- OpenGL
- Parallel computing
- Video game development software