stringtranslate.com

LWJGL

La biblioteca ligera de juegos Java ( LWJGL ) es una biblioteca de software de código abierto que proporciona enlaces a una variedad de bibliotecas C para desarrolladores de videojuegos en Java . Expone bibliotecas multiplataforma que se usan comúnmente en el desarrollo de videojuegos y títulos multimedia, como Vulkan , OpenGL , OpenAL y OpenCL .

El objetivo principal del proyecto es proporcionar a los desarrolladores de Java una forma de acceder a recursos que de otro modo no estarían disponibles o que estarían mal implementados en la plataforma Java existente. La filosofía principal es exponer la tecnología subyacente como un envoltorio fino, creando así una API cercana a la original. También es la base de muchos motores y bibliotecas de juegos Java de alto nivel, como libGDX o jMonkeyEngine .

Historia

El desarrollo de la biblioteca comenzó en 2002 con el lanzamiento de J2SE 1.4 , haciendo uso de las operaciones de E/S no bloqueantes recientemente agregadas y el acceso a memoria fuera del montón . Estas incorporaciones al JDK permitieron un mejor acceso a la memoria nativa y a las bibliotecas que no forman parte del JDK. El primer lanzamiento oficial de la biblioteca fue el 4 de febrero de 2007. [1]

El 13 de noviembre de 2014 se anunció la versión 3, que se lanzó en versión alfa el 27 de abril de 2015 y es una reescritura completa de LWJGL. [5] [6] [7] Se agregaron muchos enlaces nuevos, incluidos GLFW , EGL y Objective-C . [4] [6] También se agregó soporte para el desarrollo de Oculus Rift con enlaces LibOVR. [4] [7] La ​​nueva versión se lanzó el 4 de junio de 2016, después de más de 3 años y medio de desarrollo. [8]

Encuadernaciones

La biblioteca accede al código C nativo a través de la interfaz nativa de Java (JNI). Los enlaces a cada una de las bibliotecas nativas existen como módulos diferentes para que los desarrolladores puedan crear compilaciones personalizadas solo con lo que necesitan en un programa determinado. [4] [7] [9]

Si bien las clases de utilidad están escritas en Java puro , la mayoría de las clases de enlace se generan automáticamente mediante un generador personalizado implementado en Kotlin . [2] [3]

Desde la versión 3.1, LWJGL está completamente dividido en 51 módulos que se pueden descargar y utilizar por separado. Para facilitar este proceso, el proyecto proporciona un configurador de compilación en línea, que permite a los usuarios descargar combinaciones personalizadas de módulos y genera automáticamente archivos de configuración de Maven y Gradle para facilitar su uso con proyectos existentes. [10] [11] [12]

Usos notables

Referencias

  1. ^ ab Matzon, Brian (4 de febrero de 2007). "Lanzamiento de LWJGL 1.0". Foro LWJGL . Consultado el 23 de julio de 2016 .
  2. ^ abcd "LWJGL/lwjgl3". github.com . Consultado el 13 de agosto de 2016 .
  3. ^ ab "lwjgl3/doc – Generador". github.com . 11 de agosto de 2015 . Consultado el 30 de agosto de 2015 .
  4. ^ abcde «Sitio web oficial» . Consultado el 14 de agosto de 2015 .
  5. ^ Tsakpinis, Ioannis (13 de noviembre de 2014). "Bienvenidos a LWJGL 3". blog.lwjgl.org .
  6. ^ ab "LWJGL 3 Roadmap". github.com . Consultado el 2 de junio de 2015 .
  7. ^ abc Tsakpinis, Ioannis (27 de abril de 2015). "Lanzamiento de LWJGL 3.0.0a". blog.lwjgl.org .
  8. ^ "¡Lanzamiento de LWJGL 3.0.0!". blog.lwjgl.org . 4 de junio de 2016 . Consultado el 4 de junio de 2016 .
  9. ^ "Preguntas frecuentes sobre enlaces". github.com . 27 de diciembre de 2014 . Consultado el 27 de julio de 2015 .
  10. ^ "¡Lanzamiento de LWJGL 3.1.0!". blog.lwjgl.org . 30 de octubre de 2016 . Consultado el 11 de noviembre de 2016 .
  11. ^ "Minecraft desbloqueado" . Consultado el 16 de noviembre de 2023 .
  12. ^ "Descargar – LWJGL". lwjgl.org . Consultado el 11 de noviembre de 2016 .
  13. ^ "Atribuciones de Minecraft | Minecraft". Minecraft.net . Consultado el 9 de julio de 2020 .
  14. ^ "APZDTISA #3: ¡Esta vez con MULTIJUGADOR EN VIVO!". Project Zomboid . 17 de febrero de 2014 . Consultado el 25 de enero de 2022 .

Enlaces externos