| Tipus | Java software library(en) |
|---|---|
| Versió estable | |
| Llicència | llicència BSD de 3 clàusules |
| Característiques tècniques | |
| Sistema operatiu | Microsoft Windows,Linux imacOS |
| Plataforma | plataforma Java |
| Escrit en | C,Java iKotlin |
| Equip | |
| Desenvolupador(s) | Ioannis Tsakpinis(en) |
| Més informació | |
| Lloc web | lwjgl.org (anglès) |
| Blog | Blog oficial |
| Stack Exchange | Etiqueta |
| SourceForge | java-game-lib |
| Seguiment d'errors | Seguiment d'errors |
LWJGL (en anglès,Lightweight Java Game Library) és una llibreria de codi obert per aJava destinada adesenvolupadors de videojocs. Proporciona llibreries multiplataforma d'alt nivell generalment utilitzades en desenvolupament de videojocs i títols multimèdia, com araOpenGL,Vulkan,OpenAL iOpenCL. A més, proporciona accés multiplataforma a controladors, com aracontroladors de videojoc (gamepads), volants ipalanques de control (ojoysticks).
L'objectiu principal del projecte és proporcionar una manera de que els desenvolupadors de Java, tinguin accés a recursos que són altrament inutilitzables o mal implementats en la plataforma actual de Java. La filosofia principal és proporcionar tecnologia subjacent com un embolcall prim, i així es crea unaAPI propera a l'original. També es la base d'altres motors de jocs d'alt nivell, com aralibGDX ojMonkeyEngine.
LWJGL es troba disponible sotallicència BSD.
El 13 de novembre de 2014, es va anunciar la versió 3, alliberada com a versió alfa el 27 d'abril de 2015. És una reescriptura completa de LWJGL. Es van incloure molts enllaços nous comGLFW,EGL iObjective-C[5]. El suport per al desenvolupament d'Oculus Rift es va afegir amb enllaços a LibOVR. La nova versió va ser alliberada el 4 de juny de 2016, després de més de 3 anys i mig de desenvolupament.[1]
La biblioteca accedeix a codiC natiu a través de la Interficie Nativa de Java (JNI). Les vinculacions de cada llibreria nativa existeixen com a diferents mòduls, d'aquesta manera els desenvolupadors poden generar programes només amb les coses que necessiten.
Mentre que les classes d'utilitat estan escrites enJava pur, la majoria de les classes vincluades són automàticament generades per un generador implementat a Kotlin.
Des de la versió 3.1 LWJGL està dividida en uns 20 mòduls que es poden descarregar i usar separadament. Per fer aquest procés més fàcil, el projecte proporciona un configurador en línia, el qual permet als usuaris descarregar combinacions de mòduls i automàticament genera arxius Maven i Gradle de configuració per alleujar el seu ús amb projectes existents.[2][3]Nuklear (Llibreria)
| Vincle | Descripció | Notes |
|---|---|---|
| EGL | Interfície entre la renderització de les APIs de Khronos i la finestra de plataforma nativa subjacent al sistema. | |
| OpenCL | API multiplataforma percomputació paral·lela. | |
| OpenGL | 3D especificació de gràfics implementada per la majoria de venedors deGPU. | La majoria d'extensions suportades, però les menys populars seran afegides a sol·licitud. |
| OpenGL ES | OpenGL Perembedded sistemes com telèfons mòbils, tauletas o consoles. | |
| Vulkan | Properament una API de gràfics en 3D multi plataforma. | |
| GLFW | Biblioteca d'administració de la finestra necessitada per manejar OpenGL i Vulkan així com l'entrada d'usuari. | |
| JAWT | interficie nativa d'AWT. | |
| nfd | Petita biblioteca multiplataforma nativa de diàlegs d'arxius. | |
| tinyfd | Petita llibreria de diàleg natiu. | |
| OpenAL | API d'àudio tridimensional. | ALC i altres extensions són donats suport. |
| OpenAL Soft | Implementació de codi lliure d'OpenAL. | |
| bgfx | Biblioteca multiplataforma de renderització que dona suport a múltiples mòduls posteriors gràfics. | |
| LibOVR | API d'Oculus Rift SDK. | |
| NanoVG | Llibreria de renderització de vectors en 2D fent servir OpenGL. | |
| Biblioteca senzilla deGUIs. | ||
| par shapes | Generador per paramètric i altres formes senzilles. | |
| STB | Biblioteca d'arxiu sol lleugera per carregar imatges, sons i fonts. | |
| dyncall | Biblioteca per cridar dinàmicament funcions C d'una manera portable. | |
| jemalloc | Llibreria de baix nivell per al management de la memòria. | |
| LMDB | Biblioteca de base de dades ràpida que utilitzamemory-mapped files. | |
| xxHash | Algoritme ràpid dehash. |