Ca devient très génant de centrer le débat sur le développement de jeux, sachant à ma connaissance java est principalement utilisé soit pour le développement d'applications d'entreprises distribuées (déjà très nombreuses), soit pour les applications embarquées (très nombreuses aussi).La bonne question étant plutot dans quel cadre d'applications utiliser tel langage ou tel plateforme, et dans quel but c'est cela là vrai question "utile".Tu as raison, mais ce n'est pas hors sujet non plus. "c++ vs java" : le sujet est assez vaste pour pouvoir donner son avis sur tous les domaines de la programmation.Merci aux développeurs de jeux en C++ d'arreter de polluer ce sujet, parce que quelque messages sur le sujet développement de jeux ca va bien, mais de là à porter tout le débat là dessus cela n'à vraiment aucun intéret, ou il va falloir scinder le sujet en 2.
Et surtout de donner des arguments afin d'éviter les préjugés sur tel ou tel langage.
non personne, mais certains ont qd même dit que le java ne permet pas de faire des jeux vidéos. Cet a-priori est non fondé car dans l'esprit de la plupart des gens, la capacité d'affichage d'un jeu dépend du langage, ce qui n'est plus vrai depuis l'arrivée des cartes accélérée opengl ou direct3D (ca fait plus de 5 ans...). Bon ce thème est bien traité dans la thèse citée plus haut, donc inutile d'y revenir.Qui à dit "désormais arretez de faire des jeux en C++ faites les en Java " ? personne à dis cela
de plus pendant l'execution la jvm charge du serveur les classes qui sont utiles uniquement à l'instant t, d'où un amortissement du chargement sur plusieurs secondes sans affecter le client.Je dirais meme plus il y à certainement une raison de faire des jeux en java ? l'utilisateur mobile peux télécharger le jeux sous forme SOURCE, donc quelques Ko, c'est impossible à faire avec en source C++, car il ne va pas recompiler le jeux sur son mobile. Donc dans ce cadre d'utilisation en mobile ou PDA, Java apporte un PLUS : Le téléchargement rapide.
on peut faire des composants com ou com+ en c++, qui sont des composants serveurs comme les ejb, il me semble (enfin pas tout à fait). IIS est le serveur d'application de microsoft non? Je serais intéressé par les possibilités d'un tel serveur vu qu'il est certainement repris dans .NET.Et d'autre part les serveurs d'applications comme Webshpere, Weblogic, Jboss, etc sont des serveurs d'applications java, pas C++, alors ces 2 langages sont bien souvent TOTALEMENT distincts dans leur véritable utilisation.
alors le débat va devenir .NET versus J2EE dans pas longtemps...D'autre part Java est utilisé principalement en ENTREPRISE, alors que les développeurs amateurs particuliers qui ne comprenent pas l'interet de cette plateforme arretent aussi de venir polluer ce sujet, sujet désormais réservé aux professionnels en entreprise merci.![]()
Oui moi aussi j'ai écrit des routines d'affichage assembleur MMX et FPU qui faisaient mieux que directX en software (en 1998). C'etait fantastique, d'ailleurs je vais recoder certaines partie de la jvm directement avec JNI en passant par l'assembleur.Je suis en train de créer un jeu 2 D développé en... C (aucune classe C++ !) et me demande si je ne vais pas programmer en assembleur certaines parties
rien ne t'empeche de coder le mapping toi même en jni. bon courage. Mais tu vas perdres deux choses :Ah bon ! je peux pas faire de jeu avec Java utilisant Direct X.
Bon ben tant pis
1) la portabilité car sous linux, pas de directX
2)ton temps, car opengl est bien supérieur et qu'il existe une librairie
(GL4JAVA)
Ah non, pas l'infame java3D. C'est une couche équivalente à l'ancien retained-mode de directX, hyper-lent donc. Il vaut mieux attendre la version 1.4 qui proposera une refonte de l'architecture. En attendant : GL4JAVA et LWJGLPourquoi pas?? Tu peux télécharger la bibliothèque java3D sous directX et OpenGL, elle est encore en beta, mais devrait bientot sortir en version finale (stable).
100% d'accord : en java tu as effectivement 100% de l'accélération matérielle (c'est le opengl natif qui s'en charge).Je ne suis pas d'accord, La couche matérielle ralentit vraiment les appli de gestion parce JAVA dessine tous les objets graphiques, quand à l'accélération matérielle, une interface native est utilisée, l'écart de performances entre JAVA et C++ diminue fortement.
En revanche je suis d'accord avec le fait que JAVA ne soit pas approprié pour des jeux 3D nécessitant de hautes performances
Partager