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. #521
    Membre habitué Avatar de Rapha222
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 128
    Points : 168
    Points
    168
    Par défaut
    En effet, ces derniers temps, les developpeurs de Mono, avec l'aide d'entre autres Unity3D, se sont assez portés sur l'utilation d'un langage managé (donc Mono ou Java) dans la réalisation d'un jeu video.

    La plupart des jeux actuels utilisent un language interpretté (Lua souvent) pour gérer des petits script comme ceux de l'IA, cependant c'est relativement lent. Il y a quelques mois, Second Life a commencé à remplacer son language de script par une solution basée sur Mono, ce qui a permit d'améliorer pas mal les performances. C'est une avancée au niveau des performances tout en gardant la meme facilité de conception.

    Depuis 2 mois, Mono intégre, apparement pour la première fois dans une plateforme managée, le support des SIMD (SSE, 3DNow, ...), extremement utilisés dans les jeux. Et grace à ceux-ci, on peut améliorer les performances du language managé dans la gestion d'un moteur de jeu video (jeu, physique, ...): l'utilisation d'un language managé est possible, sans trop grosse pertes de performances dans la réalisation d'un moteur de jeu, mais avec une productivité des programmeurs largement améliorée

    Cependant, le moteur graphique, devrait, dans l'idéal, toujours etre programmé dans un language compilé.




    Contrairement à Java, qui est disponible sur GPL, Mono est distribueé sous LGPL, ce qui permet de l'utiliser dans des projets sans avoir besoin de distribuer leurs sources.

    Un autre avantage de Mono, c'est d'avoir des outils pour créer une version allegée personnalisé (un Compact Framework perso ): vous avez besoin de System.IO, mais vous n'en avez rien à faire de System.Net ?

    Ensuite, depuis quelques semaine on sait faire de la compilation statique avec Mono, ce qui le rends compatible avec la charte de Apple pour les applications de l'iPhone (qui ne permet pas de distribuer sur son appareil des applications ayant une interpretteur ou une machine virtuelle) puisqu'il n'y aurais plus de machine virtuelle.

    Mono est porté officiellement (et autorisé) sur Wii, iPhone et bientot sur Xbox360, certains jeux sur ces plateformes sont déjà conçu avec.

    A la question "Le langage Java est-il adapté pour les jeux vidéo ?":
    Oui, mais de là à construire un gros jeu complet axé performances avec ... De plus, j'aurais une préférence pour Mono avec sa licence, les SIMD et ses ports sur console .

    Plus d'infos:
    http://www.google.com/cse?cx=0177409...game&sa=Search
    http://tirania.org/blog/archive/2008/Nov-03.html
    Fedora 12 x64 (laptop) - OpenSuSe 11.2 (desktop)
    Hébergeur d'images et de fichiers (< 75Mio) gratuit et sans pub

  2. #522
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Le code source de JAva est peut-être GPL, mais ça n'a aucun impact sur ce que tu crées, comme pour .Net

  3. #523
    Membre habitué Avatar de Rapha222
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 128
    Points : 168
    Points
    168
    Par défaut
    En temps normal oui, mais comment tu fais sur iPhone ?
    Fedora 12 x64 (laptop) - OpenSuSe 11.2 (desktop)
    Hébergeur d'images et de fichiers (< 75Mio) gratuit et sans pub

  4. #524
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Citation Envoyé par Rapha222 Voir le message
    En temps normal oui, mais comment tu fais sur iPhone ?
    Comprend pas ce que tu veux. Si tu as une JVM sur iPhone, c'est bon, aucun souci.

  5. #525
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    le fait que Java soit en GPL empêche d'en faire un portage sur console mainstream à cause des licences des kit de dev et autre...
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  6. #526
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par bafman Voir le message
    le fait que Java soit en GPL empêche d'en faire un portage sur console mainstream à cause des licences des kit de dev et autre...
    Il n'y a que l'implémentation de Sun qui est sous cette licence
    Les spécifications de Java sont ouvertes, n'importe qui peut réecrire une JVM/JDK ou bien acheter des licences à Sun (comme IBM) qui permettent de modifier le code et de ne pas le publier. La JVM/JDK d'IBM utilise beaucoup le code de Sun mais n'est pas sous GPL
    Je ne répondrai à aucune question technique en privé

  7. #527
    Membre habitué Avatar de Rapha222
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 128
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par bafman Voir le message
    le fait que Java soit en GPL empêche d'en faire un portage sur console mainstream à cause des licences des kit de dev et autre...
    En effet, mais moi je pensais plus au fait qu'il soit difficile d'intégrer la VM directement dans un programme non-opensource alors qu'il n'y a pas de probleme avec Mono.
    Fedora 12 x64 (laptop) - OpenSuSe 11.2 (desktop)
    Hébergeur d'images et de fichiers (< 75Mio) gratuit et sans pub

  8. #528
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par yan Voir le message
    On peut faire un parallèle avec C# qui est très proche de java.

    Voici ce que je constate (je me trompe peut être) :

    Contrairement à java, C# semble être de plus en plus utilisé pour les jeux vidéo. On pourrais dire microsoft et xbox oblige avec xna. Mais l'implémentation mono est aussi très apprécié dans l'univers autre que microsoft.
    Par exemple unity3D qui est basé sur mono et permet de développer entre autre sur iPhone et Wii.
    http://arstechnica.com/open-source/n...ne-and-wii.ars
    Non, clairement, C# n'est pas Java, je ne vais pas redire ce que j'ai déjà expliqué pendant le débat C#/Java, Mono pose des problèmes de légalité et bien d'autres, ça n'a rien à voir avec la JVM qui sort et qui de fait marche sur 4 familles de système d'exploitation différentes sans compter tout ce qui se fait dans l'embarqué.

    Citation Envoyé par yan Voir le message
    Juste pour dire que le problème est autre que "on doit changer de langage".
    Dans ce cas on peut se demander "pourquoi pas java"?
    Oui c'est en partie comme ça que je vois la chose.

    Citation Envoyé par ash.ice.loky Voir le message
    Je suis assez d'accord.
    XNA, slimdx, Silverlight, bindingOGL, ..., il y a l'embarras du choix.
    Du plus C# évolue assez rapidement et propose des choses vraiment intéressante (encore une fois tout ceci est subjectif).

    Mais ça mérite un autre post
    Quand je vois les mauvaises performances de Tao Framework par rapport à JOGL, je me dis que c'est très discutable.

    Citation Envoyé par Rapha222 Voir le message
    Contrairement à Java, qui est disponible sur GPL, Mono est distribueé sous LGPL, ce qui permet de l'utiliser dans des projets sans avoir besoin de distribuer leurs sources.
    Je te rappelle que Java est distribué sous plusieurs licences, pas seulement sous GPL alors ton argument ne tient pas la route une seule seconde.

    Citation Envoyé par Matthieu Brucher Voir le message
    Comprend pas ce que tu veux. Si tu as une JVM sur iPhone, c'est bon, aucun souci.
    Officiellement, il n'y a pas de JVM sur IPhone et les règles strictes imposées par Apple ne s'y prêtent guère.

    Citation Envoyé par bafman Voir le message
    le fait que Java soit en GPL empêche d'en faire un portage sur console mainstream à cause des licences des kit de dev et autre...
    Ca ne tient pas la route comme tu peux encore obtenir Java avec une licence autre que la GPL. J'utilise Java au boulot pour un logiciel commercial closed source en toute légalité.

  9. #529
    Membre habitué Avatar de Rapha222
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 128
    Points : 168
    Points
    168
    Par défaut
    Citation Envoyé par gouessej Voir le message
    Non, clairement, C# n'est pas Java, je ne vais pas redire ce que j'ai déjà expliqué pendant le débat C#/Java, Mono pose des problèmes de légalité et bien d'autres, ça n'a rien à voir avec la JVM qui sort et qui de fait marche sur 4 familles de système d'exploitation différentes sans compter tout ce qui se fait dans l'embarqué.
    La question est est-ce que Java est adapté à la création d'un jeu video. Mais cette question peut très facilement etre interprettée comme Est-ce que un language managé est adapté aux jeux video, car c'est ça la source de problème (perte de performances par rapport à du compilé). Dans ce sens, nous soulignons juste que pas mal de jeux (meme si ça fait une très petite proportion) utilisent Mono et que ça fonctionne très bien. Il n'est pas question d'une comparaison entre les deux languages.

    Ca ne tient pas la route comme tu peux encore obtenir Java avec une licence autre que la GPL. J'utilise Java au boulot pour un logiciel commercial closed source en toute légalité.
    Dans ton programme, tu utilises une machine virtuelle installée sur l'OS et qui n'est pas fournie avec ton logiciel (en tout cas si tu veux respecter la charte de la GPL). Si tu souhaitais créer un jeu pour XBox 360 ou Wii par exemple, tu serais obligé de le fournir sous GPL car tu ne pourrais pas intégrer la VM dans la boite de ton jeu alors que avec la LGPL de Mono bien. C'est pour ça que je dit que Mono, et par extension .NET, est plus adapté à la création d'un jeu video que Java, loin de là de vouloir comparer les deux plateformes. Et pour obtenir Java dans une autre licence que la GPL, il faut mettre la main sur la carte de crédits . Le jour ou les principales plateformes de jeux (Nintendo, Microsoft et Sony) intégrerons une VM java, ça sera intéressant.

    De plus, Mono a quelques avantages techniques sur Java dans ce domaine (SIMD, framework modulaire, autorisé sur iPhone, ...).
    Fedora 12 x64 (laptop) - OpenSuSe 11.2 (desktop)
    Hébergeur d'images et de fichiers (< 75Mio) gratuit et sans pub

  10. #530
    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
    Citation Envoyé par gouessej Voir le message
    Non, clairement, C# n'est pas Java, je ne vais pas redire ce que j'ai déjà expliqué pendant le débat C#/Java, Mono pose des problèmes de légalité et bien d'autres, ça n'a rien à voir avec la JVM qui sort et qui de fait marche sur 4 familles de système d'exploitation différentes sans compter tout ce qui se fait dans l'embarqué.
    j'ai rien compris à ta réponse....
    ou je peut trouver le débat C#/Java?

    Mono pose des problèmes de légalité et bien d'autres
    c'est à dire?

  11. #531
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    Citation Envoyé par gouessej Voir le message
    Ca ne tient pas la route comme tu peux encore obtenir Java avec une licence autre que la GPL. J'utilise Java au boulot pour un logiciel commercial closed source en toute légalité.
    Comme il n'existe pas d'implémentation de la JVM sur console, tu va être obligé d'en faire une version modifié que tu devra obligatoirement distribuer sous une forme compilable,et c'est ici que repose le problème car les licences d'utilisation des dev kit sur console interdisent ce genre de pratiques... Alors que le LGPL est plus souple sur la forme compilable des modifications.
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  12. #532
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par bafman Voir le message
    tu va être obligé d'en faire une version modifié que tu devra obligatoirement distribuer sous une forme compilable
    Pourquoi on devrait le distribuer sous forme compilable ?
    Je ne répondrai à aucune question technique en privé

  13. #533
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    tu peut le distribuer sous forme compilé bien entendu, mais (et ça c'est pas moi qui le dit mais la GPL), tu doit aussi fournir les sources compilables par tout le monde, ce qui n'est pas possible car pour les compiler, il faut une licence de dev kit
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  14. #534
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par bafman Voir le message
    tu peut le distribuer sous forme compilé bien entendu, mais (et ça c'est pas moi qui le dit mais la GPL), tu doit aussi fournir les sources compilables par tout le monde, ce qui n'est pas possible car pour les compiler, il faut une licence de dev kit
    Mais il me semble que l'on peut acheter des licences spéciales à Sun pour faire ça (sans avoir à redistribuer les sources).
    C'est ce qu'IBM font avec leur JDK (AIX, z/os...)
    Je ne répondrai à aucune question technique en privé

  15. #535
    Membre habitué Avatar de Rapha222
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    128
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 128
    Points : 168
    Points
    168
    Par défaut
    Et à quel prix
    Si le prix de la licence fait que ca revient plus cher que la productivité que tu as gagné en utilisant Java, y'a plus d'intérret (je n'ai aucune idée du prix d'une telle licence celà-dit).
    Fedora 12 x64 (laptop) - OpenSuSe 11.2 (desktop)
    Hébergeur d'images et de fichiers (< 75Mio) gratuit et sans pub

  16. #536
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par Rapha222 Voir le message
    Et à quel prix
    Si le prix de la licence fait que ca revient plus cher que la productivité que tu as gagné en utilisant Java, y'a plus d'intérret (je n'ai aucune idée du prix d'une telle licence celà-dit).
    J'ai pas dit que c'était rentable (en temps et en argent). Je ne connais pas les prix (qui ne sont pas public d'ailleurs). Mais que c'était possible.

    De toute façon, rien que de migrer le JDK, ce doit être un boulot monstre...
    Je ne répondrai à aucune question technique en privé

  17. #537
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    Citation Envoyé par millie Voir le message
    Mais il me semble que l'on peut acheter des licences spéciales à Sun pour faire ça (sans avoir à redistribuer les sources).
    C'est ce qu'IBM font avec leur JDK (AIX, z/os...)
    Je n'ai pas dit le contraire, j'ai juste dit que le GPL sur console, c'est pas possible
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  18. #538
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 943
    Points : 1 156
    Points
    1 156
    Par défaut
    Citation Envoyé par yan Voir le message
    ou je peut trouver le débat C#/Java?
    idem ?

  19. #539
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Citation Envoyé par ash.ice.loky Voir le message
    idem ?
    Dans le forum : Débat sur le développement : http://www.developpez.net/forums/d20...p-versus-java/
    et là : http://www.developpez.net/forums/d84...e-net-vs-java/ (pour .NET vs java)
    Je ne répondrai à aucune question technique en privé

  20. #540
    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
    Citation Envoyé par millie Voir le message
    Dans le forum : Débat sur le développement : http://www.developpez.net/forums/d20...p-versus-java/
    et là : http://www.developpez.net/forums/d84...e-net-vs-java/ (pour .NET vs java)

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