L'analogie avec le flash est tout à fait juste, mais je ne comprends pas vraiment votre analogie avec les marionnettes.
Les bonnes choses à propos de l'unité sont:
- multiplateforme: C'est un très gros avantage, je dirais la raison principale.
- Moteur et implémentation de haute qualité, je veux dire en utilisant les objets de jeu Unity, etc.
- Très facile de créer un jeu simple à partir de zéro, c'est donc un plus pour la fabrication de prototypes.
Les mauvaises choses:
- Impossible de créer un lien avec C ++ ou C, donc votre projet peut uniquement fonctionner sur Unity. Avec C #, on pourrait faire valoir que cela fonctionnera sur XNA, mais C ++ aurait été bien. Avec cette remarque, je veux dire que ce n'est pas un outil que des professionnels chevronnés ou des autodidactes utiliseraient, car vous n'avez pas un contrôle total sur votre application, mais cela ne signifie pas qu'il y a une chose que vous ne pouvez pas faire avec Unity. D'un autre côté, une équipe avec une excellente idée et des artistes talentueux peut faire des choses géniales sans avoir besoin de programmeurs expérimentés.
- C'est tout à fait nouveau, donc évidemment personne ne sait où mènera cet outil.
La chose que je n'aime pas avec Unity, c'est que c'est comme si tout le travail était fait, donc les programmeurs ont beaucoup moins de valeur. D'un autre côté, c'est génial pour enseigner rapidement aux gens comment construire des choses rapidement.
Donc, pour conclure: Unity (ou un outil comme Unity) est plus pour les artistes qui ne peuvent pas tendre la main à de grands programmeurs, mais qui savent toujours faire un peu de script de jeu. Bien sûr, vous pouvez créer un jeu complet, ajouter une IA réaliste, faire un net-code mmo et quoi d'autre, mais les grandes entreprises n'utiliseraient pas Unity.
Les modèles de programmation permettent de proposer une solution adaptée aux 3/4 des outils de développement afin qu'elle s'adapte à ces créateurs de jeux «indépendants». Il valorise un outil particulier et il valorise également les artistes, mais pas les programmeurs (sauf ceux de l'équipe de l'unité, bien sûr).
Unity est un bon raccourci pour les non-programmeurs, mais ils doivent comprendre que les jeux vidéo proviennent de lignes de code, et que vous ne pouvez pas tout faire simplement avec un outil génial. À un moment donné, il faut savoir quelque chose sur la programmation de bas niveau.
Ayant un projet personnel en tête, je n'utiliserais pas Unity, car je n'aime pas C # ou Boo (Panda est bon avec python, alors pourquoi s'embêter avec un logiciel commercial?), Et parce que si je montre mon projet et c'est fait avec l'unité, ce sera beaucoup moins impressionnant.