Developpez.com - Rubrique 2D-3D-Jeux

Le Club des Développeurs et IT Pro

Le moteur de jeux vidéo Unity devient gratuit

Pour la création de jeux indépendants

Le 2009-10-29 09:54:04, par Pat_AfterMoon, Membre averti
Le moteur de jeux vidéo Unity devient gratuit pour la création de jeux indépendants

Le Unity Game Engine vient de devenir gratuit pour la version indie (anciennement 200 USD).

Pour info il s'agit d'un moteur de jeu 3D qui permet de faire des exécutables Windows/Mac ou de s'intégrer dans une page web comme un plugin. L'environnement de développement est très "graphique". La partie scripting utilise Mono et peut se faire en C#, javascript compilé ou Boo (python).

Liste des "features":
Unity Version Comparison

La version Pro reste chère, mais il y a beaucoup à faire avec la version indie.

A la base il y a une grosse communauté de développeurs professionnels (jeux publicitaires, jeux iphone), mais avec la version gratuite Unity devrait devenir une référence chez les hobbyistes. Personnellement j'adore cet "engine" car je le trouve très ludique et simple à utiliser.

Téléchargement de Unity

Que pensez vous de cette annonce ?
Comment la placez vous face à ces concurrents ? (Ogre par exemple)
  Discussion forum
10 commentaires
  • J'ai testé la démo il y'a quelques mois et c'est vrais que c'est un véritable plaisir de travailler sur Unity. Trés facile à prendre en main, agréable, stable...
    Il souffre quand même de gros points noirs :

    1. extrêmement cher pour faire un jeu sur Iphone
    2. la version indie manque de choses essentielles pour un jeu d'envergure, comme les ombres
    3. la couche réseau est quasiment absente
    4. aucun optimisation réelle de l'environnement (BSP, LOD)

    Bref, c'est un excellent moteur qui gagnerait énormément à changer un peu de stratégie marketing.
  • Mat.M
    Expert éminent sénior
    Bonjour,

    Envoyé par Acropole

    -la couche réseau est quasiment absente
    -aucun optimisation réelle de l'environnement (BSP, LOD)
    Même en version pro à 1499 dollars ?

    Il y a aussi un truc qui me chagrine c'est qu'il faut .NET pour le faire tourner cela ne nuit-il pas aux performances ( je veux pas refaire un débat .NET est il adapté aux jeux c'est juste une question ) ?
    Merci pour les comparaisons en tout cas

    Envoyé par Pat_AfterMoon

    A la base il y a une grosse communauté de développeurs professionnels (jeux publicitaires, jeux iphone), mais avec la version gratuite Unity devrait devenir une référence chez les hobbyistes. Personnellement j'adore cet "engine" car je le trouve très ludique et simple à utiliser.
    Merci pour l'information
    est-ce que c'est facile d'importer des objets 3ds,X ?
    Pour les scripts c'est en C# ou Javascript je crois ?
  • Pat_AfterMoon
    Membre averti
    Envoyé par Mat.M
    Il y a aussi un truc qui me chagrine c'est qu'il faut .NET pour le faire tourner
    En fait, tel que je le comprend, ils utilisent Mono pour la partie scripting au même titre qu'ils auraient pu utiliser LUA ou Python. Ensuite tu peux écrire les scripts en C#, javascript ou Boo, il n'y a pratiquement que la syntaxe qui change, tout est compilé et exécuté à travers Mono. D'après le forum et la doc, javascript est le plus utilisé, mais C# monte.

    Pour ce qui est des formats d'objets 3D, le FBX sert de référence mais 3DS est lu en natif :
    http://unity3d.com/support/documenta...ortObject.html

    Pour ce qui est du format X de direct X il y a l'air d'y avoir cela :
    http://forum.unity3d.com/viewtopic.php?t=30768

    Pour la partie réseau, je m'y attaque en janvier donc je ne peux pas dire grand chose. Il y a pas mal de jeux multiplayer fait avec Unity. Il y a plusieurs exemples dans la doc, mais pas de gros exemple complet du style "FPS multiplayer".

    Envoyé par Acropole
    aucun optimisation réelle de l'environnement (BSP, LOD)
    La démo de l'ile tropicale gére pas mal de choses au niveau optimisation, il suffit de la voir tourner sur différentes cartes graphiques pour s'en rendre compte. Par contre il n'y a pas vraiment de gestion des intérieurs style BSP.
    http://unity3d.com/gallery/live-demo...pical-paradise
  • Lucyberad
    Membre du Club
    Enfin on dit du C#, moi qui suis un fan inconditionnel de C# j'ai préféré utiliser Javascript.
    Pour la simple raison que l'implémentation est totalement différente et que le coté "fourre-tout" de Javascript s'y prête mieux.
    Je ne conteste pas l'implémentation mais de C# il n'en prenne que la sémantique (syntaxe) et non les pratiques.

    En tout cas, bien joué de la part d'Unity qui frappe 2 grand coup consécutifs (support de Windows et de l'iPhone puis maintenant la gratuité).
    Un coup pour contrer dans l'oeuf WebGL? probablement !
  • Aranoth
    Membre à l'essai
    Comment la placez vous face à ces concurrents ? (Ogre par exemple)
    Attention aux amalgames, Ogre n'est pas un concurrent à Unity, les deux n'ont rien à voir (l'un est un moteur 3D et l'autre un moteur de jeu).

    ShiVa en revanche est un concurrent d'Unity (http://www.stonetrip.com/) ainsi que Torque (http://www.garagegames.com/).

    Mais c'est une super nouvelle, aucun doute là dessus. Même si je ne pense pas l'utiliser pour nos projets en cours et à venir (à cause des limitations de la version Indy), cela fera certainement un merveilleux outil de prototyping.

    Au passage la même news annonce aussi la venue d'une version pour XBox 360, en plus de l'iPhone et de la Wii.
  • Lucyberad
    Membre du Club
    Il y a quelque temps, alors que je travaillait sur la version iPhone, j'avais demandé par mail si ils comptait faire PS3, Wii, 360.
    Ils m'avaient répondu que Wii c'était imminent, que 360 ca serait un peu plus tard et PS3 ca demanderait pas mal de temps (pour l'architecture spécifique de la PS3) mais c'était réellement prévu.
  • Rapha222
    Membre habitué
    Envoyé par Pat_AfterMoon
    En fait, tel que je le comprend, ils utilisent Mono pour la partie scripting au même titre qu'ils auraient pu utiliser LUA ou Python. Ensuite tu peux écrire les scripts en C#, javascript ou Boo, il n'y a pratiquement que la syntaxe qui change, tout est compilé et exécuté à travers Mono. D'après le forum et la doc, javascript est le plus utilisé, mais C# monte.
    Même pas. Tout Unity a été réécrit en C# (au départ, ils utilisaient juste Mono pour les langages de script).

    Le problème, c'est que l'iPhone n'autorise que du code natif : il est interdit, selon les CGU des développeurs d'utiliser un interpréteur, une VM ou une JIT, donc Mono ne pouvait pas être utilisé.
    Mais depuis un petit temps, Mono supporte la compilation en code natif du CIL, donc plus besoin de JIT. Je sais pas trop comment ils ont réussis à faire ce truc avec les génériques, car la JIT, normalement, recompile le code de la classe pour chaque type utilisé, mais le fait est qu'ils y sont arrivés (si quelqu'un peut m'expliquer comment ils ont fait, je lui serrait reconnaissant à vie ).
    En plus, puisque c'est du code natif, ça devrait être aussi rapide que de l'objective C (ou alors légèrement plus lent puisque il y a des trucs comme le garbage collector).

    Voici l'article de Miguel de Icaza après sa présentation sur la compilation statique sur iPhone avec Mono et Unity:
    http://tirania.org/blog/archive/2008/Nov-05.html
  • jmini
    Membre éprouvé
    Envoyé par Lucyberad
    Un coup pour contrer dans l'oeuf WebGL? probablement !
    Hum... Si ce standard prend de l'importance, rien ne leur empêchera d'écrire un "compilateur" vers ce type de "programme".
  • Lucyberad
    Membre du Club
    "Hum... Si ce standard prend de l'importance, rien ne leur empêchera d'écrire un "compilateur" vers ce type de "programme"."
    Dans le même genre d'idée: m'étonnerait sérieusement que Adobe ait envie de rendre du flash lisible par le plugin SVG... si tu voit ce que je veux dire. Même si un jour ils se font bouffer par SVG (ce que je t'accorde, est mal barré pour l'instant puisque la seule condition à ca serait que Silverlight s'impose...).

    "En plus, puisque c'est du code natif, ça devrait être aussi rapide que de l'objective C"
    Oulaa tu t'emporte ! Alors premièrement un code managé restera un poil plus lent que du compilé (mais le rapport performances perdue/vitesse de dev et reductions des erreurs est avantageux à mon gout pour le managé). Ne pas oublier que un Garbage Collector, en compilé soit-t-il est forcément plus lent qu'un malloc/free (new/delete)... Ensuite, on as les pertes du fait qu'il est une surcouche (donc empreinte plus grosse dans la taille de l'exe et appel beaucoup plus nombreux de fonction et donc de "goto".
    Bref, dire que le managé c'est super rapide comme du C/C++ car compilé en AOT (ahead of time), c'est un peu forcer... mais dire que le managé c'est la vie car ca fait gagner beaucoup de temps et de clarté en dev (le but d'un engine d'ailleurs), alors j'approuve.
  • chuckey
    Membre à l'essai
    Ils m'ont l'air de tout miser sur la version iphone advanced qui a l'air bien propre et optimisée (portal maps comme torque, moteur 2d...)

    Mais sur pc, j'ai essayé de faire quelque chose avec unity et même si les qualités indéniables du script mono et des effets directx9/10 ne sont pas à mettre en cause, j'ai détesté unity à cause de 4 gros points noirs

    - consommation de ram anormalement élevée
    - contrôle de la physique problématique, on ne comprend rien à ce qu'on fait
    - effets spéciaux pas bien optimisés, le rendu d'ombres et autres effets rame anormalement
    - interface type virtools, plus orientée graphiste que développeur

    De plus je n'ai pas trouvé un seul jeu unity potable sur le webplayer, j'ai essayé une douzaine de jeux et à chaque fois ils confirment ces 4 points noirs: surconsommation de ram, effets qui rament, gameplay incontrôlable mou et pauvre, ça tient pas la route face au instantaction player du torque engine dont les démos sont d'une autre envergure, ni même face au vieux shockwave lent et moche mais qui sait faire du bon gameplay. Les portails de jeux en ligne n'achètent apparemment pas beaucoup de créations unity.

    J'attends de voir un jeu digne de ce nom dans le webplayer avant d'essayer unity d'avantage, pour l'instant je préfère donner des sous à garage games ou adobe.