IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Le langage Java est-il adapté pour les jeux vidéo ? [Débat]


Sujet :

Développement 2D, 3D et Jeux

  1. #161
    Membre expérimenté
    Avatar de Patriarch24
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    1 047
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2003
    Messages : 1 047
    Points : 1 640
    Points
    1 640
    Par défaut
    Pour recadrer sur le jeu vidéo :
    - langage de DirectX ? C++
    - langage de OpenGL ? C++
    - langage de SDL ? C++

    Ce n'est pas le fruit du hasard.
    Petite précision : OpenGl est une spec, pas une API. La plupart des implémentations sont en C ou C++.
    Ce n'est pas un hasard, car à l'époque où les spécifications d'OpenGL, SDL et DirectX sont parues, Java n'existait qu'à l'état embryonnaire voire pas du tout.

    La principale raison pour laquelle C++ est encore et toujours LE langage des jeux vidéos (après que ce fut l'assembleur puis C) est une raison historique : compatibilité avec les sources et plateformes existantes.
    Quand au problème de jvm, il existe des jvm pour faire de l'embarqué, donc moins "grosse".

    Je ne suis pas un spécialiste des jeux, mais il me semble que JNI permet d'accéder à une code natif et donc de pallier les éventuels manques de Java.

    Justement, Java ira écrire dans un fichier ou quoi alors que C++ aura une fonction de lecture et une fonction d'écriture générique qui enregistre soit en XML ( standard Mac ) soit dans le registre ( standard Windows ) soit dans un fichier texte ( standard Linux ) . Un appel de fonction ( méthode statique plutôt ) seulement, pas une usine à gaz.
    Faut. L'API Preference fait exactement ce qui est décrit ici.

  2. #162
    Rédacteur

    Avatar de loka
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    2 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 672
    Points : 5 509
    Points
    5 509
    Par défaut
    Message de Kurisu 28/07/2008 à 17h39:

    Au grand risque de me repeter:

    Le grand défaut de Java par rapport à C++, c'est qu'il faut la JVM pour faire tourner un programme Java.
    Or il y a des plateformes pour lesquelles il n'existe pas de JVM (genre, Wii, DS et je parle là de mon expérience), donc ce débat ne se pose même pas.

    Un programme C++ compilé de facon native pour une plateforme ne tournera, certes, que sur cette plateforme, mais il tournera. Et s'il est bien concu, il pourra facilement être recompilé pour tourner sur une autre plateforme.
    Un programme Java par contre ne tournera que sur sa JVM, de préférence de la même version pour laquelle il a été concu. Il tournera sur d'autres plateformes, à condition que sa JVM existe. Donc pas de JVM, pas moyen de faire tourner le programme.
    (Ok, on pourrait maintenant retorquer qu'il faut un compilateur C++ pour compiler son code en executable pour une plateforme donnée, mais un compile C++, ca se trouve plus facilement qu'une JVM).

    Pour l'argument de la taille du code binaire, ca ne peut pas compter. Certes un objet C++ est gros. Il peut même devenir très gros si on inclut du code complètement inutile (ou des libs totalement inutilisées comme MSVC le sait si bien faire), mais une grosse partie du code binaire superflu va jarter pendant le passage dans le linker.


    Pour ce qui est de ce débat, on pourrait aussi poser le même genre de questions pour d'autres languages... D, C#, Python, Perl, Ruby, Moo... Ca ne nous avancerait pas plus de toutes facons.
    La seule question à se poser en début de projet reste de savoir si les coûts engendrés par le choix de telle ou telle technologie valent le profit à en tirer.
    Donc si tel ou tel language permet d'économiser une certaine somme d'argent ou permettrait, à même coûts, de faire plus de profit, cela vaudra le coup de l'utiliser. Sinon, c'est de la peine perdue.

    Je ne stopperai aucun développeur amateur de faire son jeu en Java ou en Brainfuck s'il le veut. Mais s'il veut devenir professionnel, il faudra s'adapter à démande du marché.

  3. #163
    Rédacteur

    Avatar de loka
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    2 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 672
    Points : 5 509
    Points
    5 509
    Par défaut
    Message de kpouer 28/07/2008 à 18h09:

    Citation Envoyé par Kurisu Voir le message
    Au grand risque de me repeter:

    Le grand défaut de Java par rapport à C++, c'est qu'il faut la JVM pour faire tourner un programme Java.
    Or il y a des plateformes pour lesquelles il n'existe pas de JVM (genre, Wii, DS et je parle là de mon expérience), donc ce débat ne se pose même pas.

    Un programme C++ compilé de facon native pour une plateforme ne tournera, certes, que sur cette plateforme, mais il tournera. Et s'il est bien concu, il pourra facilement être recompilé pour tourner sur une autre plateforme.
    Un programme Java par contre ne tournera que sur sa JVM, de préférence de la même version pour laquelle il a été concu. Il tournera sur d'autres plateformes, à condition que sa JVM existe. Donc pas de JVM, pas moyen de faire tourner le programme.
    (Ok, on pourrait maintenant retorquer qu'il faut un compilateur C++ pour compiler son code en executable pour une plateforme donnée, mais un compile C++, ca se trouve plus facilement qu'une JVM).

    Pour l'argument de la taille du code binaire, ca ne peut pas compter. Certes un objet C++ est gros. Il peut même devenir très gros si on inclut du code complètement inutile (ou des libs totalement inutilisées comme MSVC le sait si bien faire), mais une grosse partie du code binaire superflu va jarter pendant le passage dans le linker.


    Pour ce qui est de ce débat, on pourrait aussi poser le même genre de questions pour d'autres languages... D, C#, Python, Perl, Ruby, Moo... Ca ne nous avancerait pas plus de toutes facons.
    La seule question à se poser en début de projet reste de savoir si les coûts engendrés par le choix de telle ou telle technologie valent le profit à en tirer.
    Donc si tel ou tel language permet d'économiser une certaine somme d'argent ou permettrait, à même coûts, de faire plus de profit, cela vaudra le coup de l'utiliser. Sinon, c'est de la peine perdue.

    Je ne stopperai aucun développeur amateur de faire son jeu en Java ou en Brainfuck s'il le veut. Mais s'il veut devenir professionnel, il faudra s'adapter à démande du marché.
    Tu as en partie raison sur la portabilité, que la JVM n'existant pas sur les consoles par exemple java est finalement moins portable que le C++ dans certaines conditions. Mais bon de là a dire que l'on recompile le même code c++ sur une PS3 et un PC sans difficultés, c'est un doux rêve, a part ptet un "hello world".

    Pour la portabilité, java a ses avantages, Wakfu est moitié java moitié flash, et il est ainsi compatible avec a peu près tous les ordinateurs quelque soit l'OS et le browser.
    On parle beaucoup des différences entre les JVM, mais il ne faut pas exagérer, le comportement reste quand même assez proche dans la plupart des cas.
    Tiens Civilization 4 était bien développé en python pour une grande partie, pourtant il est adapté sur Xbox 360 ... Ont ils un interpreteur python sur Xbox ? Ont ils recodé Civilization ?

  4. #164
    Rédacteur

    Avatar de loka
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    2 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 672
    Points : 5 509
    Points
    5 509
    Par défaut
    Message de Kurisu 28/07/2008 à 18h20:

    Je pense qu'ils ont un interpreteur Python, vu que c'est assez facile à recompiler. Chez nous, on l'a porté sur Wii. Idem avec Lua d'ailleurs. Du bon code C++ est portable. (On a même fait un test avec Bullet, mais c'était trop lent).
    Le point principal d'un language interpreté ou de script comme Python, c'est que la logique peut plus facilement être écrite. (Le moteur sera toujours codé et compilé en natif).

  5. #165
    Rédacteur

    Avatar de loka
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    2 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 672
    Points : 5 509
    Points
    5 509
    Par défaut
    Message de Mat.M 28/07/2008 à 18h24:

    Citation Envoyé par eclesia Voir le message
    visiblement aucun utilisateur de c++ ne veut admettre que le cout memoire de la machine virtuelle est faible.

    Et bien on va le demontrer

    Voici le code utilisé :
    Un peu de bon sens et pas de mauvaise foi merci !
    Quelques lignes de code ne font pas tout un projet de jeu ou autre.
    Tout un projet de milliers de lignes de code qu'est ce que cela nécessiterait comme cout mémoire ?

    Citation Envoyé par eclesia Voir le message
    Les jeux se basent sur des normes, OpenGL ou DirectX pour la pluspart.
    Je crois qu'il y a confusion...
    DirectX ou Open GL ce sont des parties intermédiaires d'un programme de jeu ni plus ni moins que des briques logicielles.
    Pas forcément des normes.
    On peut très bien un jeu avec une application fenêtrée GUI.
    Direct X ou Open GL sont là pour accéler le rendu via la carte jouer des sons.
    L'erreur la plus fréquente de 99% des gens de ce forum et d'autres c'est qu'ils pensent qu'il suffit de maitriser Direct X ou Open GL pour faire un jeu..
    Or Dx ou Open GL je le répète c'est qu'un maillon de la chaine et en aucun cas cela suffit pour faire un bon jeu...

    Citation Envoyé par DzzDDzzD Voir le message
    donc voila un jeu qui n'a pas demandé bcp de ressource (1 dev + 1 designer) qui fonctionne sur le Web, et qui peu toucher trois type de platformes cibles (win/mac/lin). si fallait refaire ca en C++, ca serait galère ou pas ? pour que ca demarre dans le navigateur, que ca s'nstall tout seul, que prog et données tiennent dans 80 Mo, que ca fonctionne sur Mac, Linux et Window, et tout ca avec un seul dev ?
    1- sur ma machine ça fonctionne pas ; moi je suis un utilisateur bête il faut télécharger un plug-in ce qui est irritant.
    Donc c'est un gros désavantage pour un jeu fait avec Java.
    Si j'achète un jeu à la FNAC je l'installe je clique et ça marche.
    C'est pour cela qu'il n'y aura jamais de titres commerciaux développés avec Java.
    C'est comme tous ces projets Open Source que j'appelle en kit ou il faut installer 50 dlls avant de pouvoir les faire fonctionner...suivez mon regard

    2-je ne comprends pas cette comparaison : tu sembles dire que faire un jeu avec Java avec un programmeur et un graphiste cela est suffisant et que pour un jeu C++ il faudrait plus de personnes.
    Là dessus je ne comprends pas la majorité des bibliothèques, moteurs de jeu ( comme Ogre , Irrlicht ) sont prévus de s'interfacer avec C++ ( bien que cela soit possible avec d'autres langages )

  6. #166
    Rédacteur

    Avatar de loka
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    2 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 672
    Points : 5 509
    Points
    5 509
    Par défaut
    [Fin de la reprise des messages avant rollback]

    Vous pouvez reprendre le débat, bon débat

  7. #167
    Nouveau Candidat au Club

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    452
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Afghanistan

    Informations forums :
    Inscription : Juin 2003
    Messages : 452
    Points : 0
    Points
    0
    Billets dans le blog
    1
    Par défaut
    je pense que dans ce débat on se retrouve dans une situation déjà connu
    entre le C et l'assembleur
    le C++ et le C
    et maintenant Java et C++

    Donc moi je pense que dans 10 ans on dira Heureusement qu'il y a des gens qui on cru en java pour des jeux videos car sinon rien aurait été fait.

  8. #168
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 72
    Points : 289
    Points
    289
    Par défaut Et sur le marché
    Salut à tous,

    Bon je vais pas troller, mais en tout cas aujourd'hui si on regarde le marché des "poids lourds" des jeux, tous -a 99%- sont faits en C++ (parfois C a la sauce plus ou moins ++)
    Wow, les jeux consoles, les engines DOOM, Unreal, tout est sous C++.

    Je fais bcp de Java pour mon boulot et de toute facon, meme si ce dernier s'améliore de + en + en terme de perf. il sera toujours un cran en dessous de C++.

    Voila, juste une opinion a 2€

  9. #169
    Membre actif Avatar de tim974
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    175
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 175
    Points : 222
    Points
    222
    Par défaut
    Le langage Java est-il adapté pour les jeux vidéo ?

    Sincèrement, je pense que non. Java est un langage formidable, mais il n'est pas fait pour les jeux vidéo. Un jeu en C++ codé moyennement peut se comparer avec un jeu excellemment codé en Java. Il est où l'intérêt ? Il est vrai que ce n'est pas le langage qui prime, mais la façon de programmer blablabla ... mais autant concentré ses efforts sur un langage adapté.

  10. #170
    Membre averti
    Homme Profil pro
    Game Graphics Programmer
    Inscrit en
    Août 2006
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Game Graphics Programmer
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 408
    Points : 392
    Points
    392
    Par défaut
    Franchement, toute cette discussion est fatiguante et inutile, et pas franchement d'un niveau très élévé.
    Un programmeur habitué au C++ préféra utiliser le C++ et un programmeur Java va préférer Java comme langage de son jeu. De même qu'un programmeur Objective-C préféra l'ObjC au C++ en termes de POO.

    Seulement, si on dépasse le cadre personnel ou amateur et que l'on regarde le cadre professionnel, on constatera que:

    1. Il y a beaucoup plus de bibliothèques codées en C/C++ facilitant la conception d'un jeu, et celles-ci sont souvent déjà optimisées pour utiliser au mieux une ou différentes plateformes (je pense à OpenGL, SDL, irrLicht et Ogre, notamment, en plus des bilbiothèques non-open-source). Si on ne veut pas refaire un moteur mais se concentrer sur le contenu du jeu, on est bien avisé de prendre un moteur existant et de se faciliter le travail, ou plutôt de le concentrer sur l'essentiel.

    2. Il y a des plateformes ne supportant pas Java. Il n'y a donc même pas de discussion si tel ou tel système n'est pas supporté. C'est tout aussi simple.

    3. En dehors d'un projet personnel ou d'un trip egocentrique, le but du développement d'un jeu, c'est le jeu lui-même, pas la technologie utilisée.

    4. En dehors d'un projet personnel ou d'un trip egocentrique, le but du programmeur, c'est d'être efficace et d'avoir un rendement optimal. Si un langage comme Java permet d'être plus efficace, pourquoi s'en priver? Mais si ca n'est pas le cas, autant passer son chemin.

    5. Il y a certes un choix technologique à faire en début de développement (en phase de pré-production), choix qui doit aussi inclure les capacités et préférences des programmeurs, mais aussi les possibilités qu'offre telle ou telle technologie.

    6. Même si Java n'est pas utilisé dans un jeu vidéo, il pourra toujours être utilisé pour construire les outils spécifiques au jeu.


    J'espère que ceci incrementera un peu le niveau de toute cette discussion.

  11. #171
    screetch
    Invité(e)
    Par défaut
    le langage Java est il adapté => non
    est-ce possible => oui bien sur.

  12. #172
    Membre averti
    Homme Profil pro
    Game Graphics Programmer
    Inscrit en
    Août 2006
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Game Graphics Programmer
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 408
    Points : 392
    Points
    392
    Par défaut
    Citation Envoyé par Screetch
    le langage Java est il adapté => non
    est-ce possible => oui bien sur.
    C'est pas ce genre de commentaire qui apporte quelque chose à la discussion...


    Citation Envoyé par Kurisu Voir le message
    6. Même si Java n'est pas utilisé dans un jeu vidéo, il pourra toujours être utilisé pour construire les outils spécifiques au jeu.
    Je voulais un peu développer ce point, souvent mésestimé: les outils.
    Un jeu n'étant pas que du code, mais aussi des ressources, il faut souvent écrire des outils pour créer des ressources ou pour les adapter à un format spécifique au jeu. Par exemple des convertisseurs COLLADA -> format 3d optimisé du jeu ou un éditeur de niveaux.
    Dans ce genre de scénario parce qu'il permet d'avoir des outils tournant à la fois sur le Mac des artistes et sur le PC des développeurs (ou vice versa). Ou alors un petit utilitaire qui permet de créer les shaders, ce qui facilitera le travail des artistes. Java ayant son lot de bonnes bibliothèques à tout faire (notamment réseau, xml, gui), il y a moyen de lui trouver une place dans l'assistance de développement d'un jeu.

  13. #173
    Expert confirmé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2007
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 895
    Points : 4 551
    Points
    4 551
    Par défaut
    Citation Envoyé par kpouer
    Tiens Civilization 4 était bien développé en python pour une grande partie, pourtant il est adapté sur Xbox 360 ... Ont ils un interpreteur python sur Xbox ? Ont ils recodé Civilization ?
    Oups, non.

    Civ4 a été développé en C++ et intègre un interpréteur python, qu'ils n'ont pas eu besoin de redévelopper - puisqu'il l'était déja. Il est peu connu, je l'admets. Il s'appelle boost.python.

    je pense que dans ce débat on se retrouve dans une situation déjà connu
    entre le C et l'assembleur
    le C++ et le C
    et maintenant Java et C++

    Donc moi je pense que dans 10 ans on dira Heureusement qu'il y a des gens qui on cru en java pour des jeux videos car sinon rien aurait été fait.
    Je ne suis pas sûr que la non-maturité de Java ait le temps de se transformer en maturité d'ici 10 ans. 10 ans, c'est court dans le domaine de l'Open Source...

    6. Même si Java n'est pas utilisé dans un jeu vidéo, il pourra toujours être utilisé pour construire les outils spécifiques au jeu.
    Mais Java est déjà utilisé dans le domaine du jeu vidéo, tout comme C# et d'autres langages (lua, python, etc.) Seulement, sauf dans de très rares occasions, il n'est pas utilisé pour les tâches critiques sur les clients. Cependant, et je vais continuer à le rappeler, il est de plus en plus utilisé pour le développement de serveurs de jeu, notamment lorsque ces serveurs sont basés sur des architectures matérielles performantes. Dans ce cas, on prète plus d'attention à des problèmes comme les possibilités d'évolutions, la fiabilité des échanges réseau, etc.

    Le fait est qu'il n'est pas utilisé pour développer l'entièreté de ce qu'on va nommer gentillement des clients riches de premier plan (cad des jeux AAA).

    Le débat porte sur la viabilité de l'utilisation de Java dans les jeux vidéo: comme plusieurs l'ont déjà dit (ainsi que moi), il est possible et même viable d'utiliser Java pour effectuer certaines tâches particulières (serveur, scripting, ...); de là à utiliser Java pour coder entièrement un jeu AAA, il y a une marge.

    Cela va-t-il changer dans le moyen terme ? Pas possible de la savoir, mais je pencherais pour une réponse négative: il y a eu trop d'investissement sur des plateformes C++ pour tout changer, même à moyen terme. D'autant plus que d'ici là, C++ aura un successeur dont les caractéristiques sont interessantes.

    A long terme, la question se pose encore moins: le paradigme objet atteint ses limites, et le paradigme fonctionnel est de plus en plus mis en avant par les sociétés hi-tech. Il n'est pas improbable que des langages nouveaux mixant ces deux paradigmes voient le jour, de manière à assurer une transition vers une programmation plus fonctionnelle. Java est, dans une certaine mesure, fait office de précurseur dans ce domaine. Le problème est qu'en tant que précurseur, il est relativement limité. C# est un poil plus évolué au niveau syntaxique, ce qui permet de plus s'amuser. De plus, la compatibilité assurée par la norme CIL permet de mixer C# avec (par exemple) F#, permettant la fusion des paradigmes à un degré jamais atteint auparavent.

    J'ai peut être tort, et peut-être serais-je maudit sur les 8 générations qui suivent pour oser le dire, mais je ne pense pas que Java s'imposera un jour dans le domaine de la programmation de jeux vidéo. Cela ne veut pas dire que Java est un mauvais langage - c'est juste qu'à l'heure actuelle et pour les quelques années à venir, il y a des alternatives plus adaptées, et que dans un futur lointain d'autres solutions verrons probablement le jour.

  14. #174
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2008
    Messages : 59
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Traroth2 Voir le message
    L'argument de la lenteur a déjà été démonté plusieurs fois, franchement. C'est fatiguant de relire toujours les mêmes erreurs concernant Java...
    Les benchmarks le montrent: un algorithme codé en C++ et en Java selon la même logique tourne en moyenne plus rapidement en C++, la différence de temps étant dépendante du type de l'algorithme et de la configuration de la JVM.

    Maintenant, je continue à penser que le Java n'est pas un mauvais langage pour développer un jeu vidéo, tant que celui-ci n'est pas censé fonctionner pas à la limite de la puissance de calcul de la machine hôte.
    Mais je disais aussi que le C# apportait un confort de développement quasiment équivalent au Java, avec en plus le XNA qui offre un support de bien meilleure qualité en comparaison aux bibliothèques qui sont disponibles pour le Java dans le domaine des jeux vidéos.

    dstar

  15. #175
    Nouveau Candidat au Club

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    452
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Afghanistan

    Informations forums :
    Inscription : Juin 2003
    Messages : 452
    Points : 0
    Points
    0
    Billets dans le blog
    1
    Par défaut
    Je rappel qu'on parle de jeux videos.
    Le but d'un jeux videos est de distraire le joueur,pas de faire voir au joueur que le jeux est super optimisé pour la machine sur laquel il tourne.
    Il y a des jeux qui demande peut de puissance de calcul mais qui sont le fruit d'un concept de jeux intéressant.

    Donc java est aussi adapté pour faire des jeux videos.
    Un jeux c'est d'abord un concept puis une implémentation sur une machine.

  16. #176
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 531
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 531
    Points : 5 210
    Points
    5 210
    Par défaut
    merci super_navide, c'est exactement le raisonnement en matière de jeux vidéo qui a du mal à passer, surtout dans l'industrie où la majorité des jeux sont basé sur l'expérience graphique et nécessitent une puissance croissante

    il n'y a qu'à voir du côté des consoles, beaucoup d'éditeurs sortent des jeux intéressants graphiquement sur la ps3 et la sbox360, par contre des éditeurs tiers qui d'exploitent un minimum correctement la wii des jeux au concept intéressants sortent mais comparé aux autres consoles c'est dommage de ne pas voir plus de créativité, d'inventivité, d'originalité

    c'est un domaine où il reste énormément de place et où le langage n'a que peu d'importance

  17. #177
    screetch
    Invité(e)
    Par défaut
    mais les outils existants sont en C++ et donc le langage Java est moins riches de composants JV que le C++, rendant le codage Java plus lourd (besoin de réinventer la roue, ou forcé a utiliser des composants vu que le choix n'existe pas)

  18. #178
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 522
    Points
    2 522
    Par défaut
    Java dispose énormément de librairies déjà toutes prêtes pour faire plein de choses dont on a besoin en matière de jeu vidéo : 3D (de Java3D à LWJGL en passant par JOGL), couche réseau simple et efficace, un système de scriptage pluggable, qui permet de scripter des programmes Java avec à peu près tout les langages de scriptages existants (Python, Ruby, Javascript, Lua, Groovy...)
    Manque encore des librairies mutlimédia (son, vidéo) pure Java, mais ça vient : les JMC.
    Sans parler de systèmes serveurs qui sont déjà largement utilisés pour les MMO (EJB).

  19. #179
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par screetch Voir le message
    mais les outils existants sont en C++ et donc le langage Java est moins riches de composants JV que le C++, rendant le codage Java plus lourd (besoin de réinventer la roue, ou forcé a utiliser des composants vu que le choix n'existe pas)
    Plusieurs membres dont moi-même avons déjà cité un grand nombre d'outils et de librairies pour faire des jeux vidéo en Java, tu nous obliges à radoter. Il suffit de regarder déjà toutes les librairies qui sont regroupées au sein de LWJGL. Bon, je vais donner quelques exemples, ce sera plus parlant :
    - JOGL
    - JOGL-utils
    - JOGL-ES
    - LWJGL
    - SDLJava
    - FengGUI
    - Project Darkstar
    - JGN
    - JOGG
    - JORBIS
    - JOAL
    - JInput
    - JBullet
    - JME
    - JPCT
    - DevIL (binding)
    - Genuts API
    - ODEJava
    - GTGE
    - .... (j'en oublie plein, désolé)

    Alors, non, c'est faux, on n'est pas obligé de réinventer la roue en Java.

  20. #180
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Ce qui est dommage, c'est quand un développeur C++ parle avec un développeur java, ça part toujours en troll... Pourquoi ?

    Développeur java : c++ c'est vieux, dépassé, moche ... Java est beaucoup mieux et ne veut rien savoir d'autre

    Développeur C++ : C++ c'est super, mais utiliser un autre language plus adapté pourquoi pas. C++ vs Java vs C# vs ruby vs python est un faux débat.

    C'est dommage d'être obtus comme cela. Ça fait 5 pages et ça tourne en rond.

    Pour moi, tu pourras toujours avec du C ou C++ avoir les même performances ou mieux qu'en JAVA, ruby .... Mais parfois à quel prix!!!!

    Pour revenir sur le sujet:
    Faire un jeux sympa en java, ou est le problème? j'en voie pas.

    Faire un gros jeux de la mort qui tue en java.... J'y crois moins... Surtout pour tirer partie, des leur sortie, des proc (muti coeur + GPU intégré...) et GPU de demain.

    Utiliser un moteur écrit avec un langage proche hardware (C/c++ ou autre) couplet avec d'autre langage (python, java, ruby, C#) oui
    [edit]
    j'avais pas lue avant (5 pages ça fait beaucoup). Ça doit être l'une des réponses les plus réalistes
    http://www.developpez.net/forums/sho...&postcount=122

Discussions similaires

  1. Réponses: 39
    Dernier message: 13/07/2018, 04h48
  2. L’interview technique est-il adapté pour les recrutements ?
    Par Cedric Chevalier dans le forum Actualités
    Réponses: 103
    Dernier message: 08/07/2013, 09h38
  3. [Autre] HTML5 est-il adapté pour les jeux sur le Web ?
    Par Hinault Romaric dans le forum Publications (X)HTML et CSS
    Réponses: 42
    Dernier message: 22/01/2012, 12h17
  4. HTML5 est-il adapté pour les jeux sur le Web ?
    Par Hinault Romaric dans le forum Balisage (X)HTML et validation W3C
    Réponses: 42
    Dernier message: 22/01/2012, 12h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo