Bonjour,
Voilà un titre qui va faire bondir les modérateurs, et mais je dois tenter le coup.
Pourtant, quand on souhaite se lancer dans le dev de jeux sous Java, c'est une question incontournable qui toutefois ne trouve de réponse que dans des messages qui commencent à dater...
En aparté, j'ai d'abord été séduit par des solutions avancées comme jMonkeyEngine, mais la sortie de la seconde mouture semble des plus comprises, et difficile de trouver un projet du même gabarit. Tant pis pour la productivité, je ferais donc un moteur avec mes petites mains... une cuillère de JInput, une pincée de jBullet, un soupçon de JOAL... et voilà que l'ingrédient le plus important manque...
Un petit coup de google JOGL LWJGL (parce que j'ai tout de même fait des recherches avant de venir vous embêter)... et on trouve des messages qui datent de janvier 2006, juin 2007, enfin, rien de bien frais.
Je suis convaincu que de très bonnes choses sont réalisables avec l'un, comme avec l'autre, mais s'il vous fallait partir de zéro pour bâtir un nouveau moteur de jeu, lequel des deux seriez-vous le plus à même d'adopter?
Je n'ai commencé aucun développement, je ne connais donc pas les deux API.
Toutefois, j'observe:
LWJGL
- dernière mise à jour le 26 novembre 2008, les quatre derniers messages n'ont qu'un mois d'écart
- Prise en charge d'OpenGL3
- Gestion du son
- Gestion des périphériques
- Fonctionne en applet et en Webstart
JOGL
- dernière mise à jour le 22 mai 2008
- Prise en charge de OpenGL2.0
- Uniquement dédié au rendu (ni son, ni périphérique)
- Semble être le projet supporté par Sun Microsystem
- Fonctionne en applet et en Webstart
Des bons points des deux côtés. Mais, LWJGL semble avoir une longueur d'avance grâce à sa gestion d'OpenGL3.0.
TOUTEFOIS, OpenGL3.0 n'est qu'un argument sur le long terme, puisqu'il n'est pas nécessaire d'en disposer pour faire des bons jeux. Et si JOGL semble au point mort, rien ne dit que d'ici la démocratisation d'OpenGL3 il ne sera pas mis à jour.
Le gestion du son de LWJGL n'est un plus que pour ceux qui, comme moi, n'ont pas nécessairement envie de se la taper à la main.
TOUTEFOIS Je n'ai jamais utilisé JOAL, donc je ne sais si l'intervention de LWJGL est nécessaire pour s'en sortir. Peut-être qu'un accès direct à JOAL est tout aussi efficace, et permet, du fait, de pouvoir gérer le son plus librement.
Pour la gestion des périphériques, le développement de Jinput ne semble pas super actif, mais s'il s'agit d'un incontournable, il fera forcément partie du lot, qu'on utilise LWJGL ou JOGL. Donc même remarque que pour JOAL: un accès direct à jinput est peut-être viable sans LWJGL.
JOGL et LWJGL n'intègre pas la physique, donc sur ce point, inutile d'en parler plus longtemps. Même chose pour l'intelligence artificielle.
En effet, LWJGL est vendu (si on veut) comme une librairie de jeu, mais finalement il faudra l'associer, comme JOGL, à un gros développement pour espérer sortir Tomb Raider 42 (ne réagissez pas à cette phrase, pitié, c'est juste pour donner le ton ^^ )
Après tout cela, difficile de s'arrêter sur une API. Il faudrait que des adeptes de l'un et l'autre viennent nous éclairer de leur lanterne, exemples et anecdotes à l'appui, dans un débat bien propre et argumenté. Ne commencez pas à vous envoyer des boulets de canon, le but est ici de guider des âmes perdus, et non de leur forcer la main ^^
Et j'ajoute que je compte adopter une technologie pour produire des jeux commerciaux... mon équipe de développement sera orientée selon ce qui ressortira de cette discussion... je suis pô là pour rigoler![]()
Partager