Developpez.com - Rubrique Java

Le Club des Développeurs et IT Pro

La bibliothèque Java pour la création de jeux vidéo LWJGL passe en version 3

Et apporte le support de Vulkan

Le 2016-06-06 21:30:37, par LittleWhite, Responsable 2D/3D/Jeux
LWJGL (Light Weight Java Game Library) est une bibliothèque JAVA exposant les fonctionnalités bas niveau comme OpenGL ES, Vulkan, GLFW et ainsi de suite. La bibliothèque fournit le nécessaire pour programmer des jeux vidéo. Après trois ans de développement, la bibliothèque passe de la version 2 à la version 3.


Voici en détail ce que vous apporte LWJGL :
  • EGL : interface entre une bibliothèque de rendu (par exemple OpenGL) et le système de fenêtrage de la plateforme ;
  • OpenCL : spécification d'une bibliothèque pour la programmation parallèle ;
  • OpenGL ES : spécification d'une bibliothèque pour le rendu 3D, pour les mobiles ;
  • Vulkan : nouvelle spécification pour le rendu 3D ;
  • GLFW : bibliothèque de fenêtrage et de création de contexte OpenGL ;
  • JAWT : interface AWT native ;
  • LibOVR : bibliothèque du SDK pour l'Oculus Rift ;
  • nfd : petite bibliothèque C pour ouvrir des fenêtres pour sélectionner des fichiers ;
  • OpenAL : bibliothèque pour jouer des sons dans un monde 3D ;
  • NanoVG : bibliothèque au-dessus d'OpenGL pour le rendu vectoriel ;
  • stb : ensemble d'outils C++ pour charger des fichiers images, charger des sons... ;
  • dyncall : permet aux programmeurs d'appeler de manière dynamique des fonctions en C ;
  • jemalloc : implémentation de malloc visant à éviter la fragmentation ;
  • xxHash : algorithme de hashage rapide.


Vous pouvez obtenir la liste complète des évolutions sur le dépôt GitHub ou télécharger la bibliothèque à partir du site officiel.

Votre opinion

Que pensez-vous de la bibliothèque ? L'avez vous déjà testée ?
Quels sont les outils dont vous avez le plus besoin pour programmer un jeu vidéo ?

Source

Blog officiel
  Discussion forum
9 commentaires
  • super_navide
    Nouveau Candidat au Club
    LWJGL est une super librairie et simple d'utilisation , et le suport de vulkan est une bonne nouvelle (beaucoup de boulot en perspective pour l'utiliser )
    Voila ce qu'on peut faire avec la LWJGL avec ( la version 1 de Java Monkey engine aussi ) :
    Il manque juste une biblilotheque pour gérer plus facilement la camera , et se passer de l'utilisation des glRotatef et glTranslatef (ca existe peut-etre je suis pas passé encore a la version 3 )


  • Traroth2
    Membre émérite
    Concernant Android, j'ai trouvé ça : http://stackoverflow.com/questions/4...ort-to-android
  • Songbird
    Membre expert
    Mais est-ce que l'équipe qui supporte LWJGL mettra enfin à jour la documentation quand il y a des modifications du côté de la bibliothèque ? Parce que la version 2 était une catastrophe à installer.
  • alves1993
    Membre éclairé
    Votre moteur paraît vraiment cool . Ce moteur est-il en open source ?
    Ce sera vraiment plaisant d'y jeter un coup d’œil surtout pour un junior.
  • paladice
    Membre habitué
    Petite question Je crois savoir que LibGdx utilise en quelque sorte LWJGL. Donc est-ce que la performance ou l'utilisation de Libgdx va être impactée ? Merci.
  • LittleWhite
    Responsable 2D/3D/Jeux
    Depuis la version 1.8, LibGDX supporte LWJGL 3. Donc, oui, les améliorations apportées dans LWJGL permettront aux développeurs LibGDX d'aller plus loin. Attention, il semblerai que LWJGL ne soit utilisé que pour cibler les PC. Sur mobiles, ils utilisent d'autres bibliothèques.
  • jwar0
    Membre actif
    J'utilise LWJGL pour un petit moteur graphique/scenegraphe/physique en cours de dev.
    L’intérêt c'est que c'est assez bas niveau pour en faire ce qu'on veux, par contre il faut de bonne base en géométrie 3D, calcule matricielle.

    A la question ce qu'il me faut pour faire un jeux vidéo(Java ou autre) :
    Au minimum un IDE et mon cerveau , je préfère limiter au maximum les appli tierce (moteur, bibliothèque etc...)
    En java pas le choix, il faut une librairie tel que LWJGL pour touché à la 3D matérielle(CG)
  • hotcryx
    Membre extrêmement actif
    Y a t'il un support Android?

    Avec plusieurs milliards d'appareils, c'est incontournable.