ceci est un article détaillant ma recherche de la manière la plus agréable pour un programmeur de jeux amateur de faire passer son temps libre à faire un jeu.
Mes exigences: j'ai d'abord regardé Flash, j'ai fait quelques petits jeux mais je doute de la performance. Je voudrais faire un jeu de stratégie assez grand, avec plusieurs centaines d'unités combattant simultanément, explosions et animations incluses. Cartes également zoomables. J'ai vu qu'Adobe a une nouvelle API 3D pour Flash, mais je ne sais pas si cela améliore également les performances 2D, je n'ai rien trouvé de similaire à cette question sur leurs sessions MAX10. Diriez-vous que Flash est une bonne technologie pour créer facilement de grands jeux 2D? J'aime vraiment Actionscript et j'adore la facilité avec laquelle tout est en Flash. Il existe plusieurs moteurs disponibles qui le rendent encore plus facile.
Je fais juste cela pour le plaisir, et ce serait encore mieux s'il y avait des éditeurs d'animation / particules appropriés et si le moteur que je devais utiliser serait disponible pour plusieurs plates-formes. (donc plus de gens peuvent jouer à mon jeu une fois terminé). J'aimerais également l'avoir sur de nombreuses plateformes mobiles. (parce que j'aime la saisie tactile pour une raison quelconque)
Je connais assez bien le framework XNA, mais il n'y a pas de bons moteurs disponibles pour cela, et il ne fonctionnera que sur Windows, ce qui est un énorme arrêt. Encore plus important, vous devez installer le XNA redistribuable chaque fois que vous voulez donner le jeu à quelqu'un. Si j'utilise XNA, je devrais créer tous les outils moi-même, et je devrais probablement les faire avec WPF. (J'adorerais créer des outils avec Adobe AIR, mais malheureusement, les API pour la manipulation d'images, etc. sont bien pires dans Flash que dans XNA / WPF.) Maintenant, je suis conscient que je pourrais créer mon propre moteur qui prend en charge chacune de ces plates-formes, mais franchement, ce serait trop de travail labourant via les API. Après tout, je veux faire un jeu, pas un moteur.
La question devient donc la suivante: existe-t-il un moteur multiplateforme (gratuit ou libre à développer?) Que je pourrais utiliser pour le développement 2D? Je préfère: C #, Actionscript. Cela ne me dérange pas d'utiliser c ++ si le jeu d'outils est supérieur à la moyenne, mais je doute fortement qu'il y ait quelque chose comme ça. Veuillez me prouver le contraire :) Donc résumé: je voudrais utiliser Flash, mais je ne sais pas s'il évolue assez bien. Je ne suis pas un scripteur, je veux de vraies API avec lesquelles je peux travailler à l'intérieur d'un IDE approprié.
Juste pour information, j'ai regardé plusieurs alternatives, je cherche déjà depuis longtemps déjà. Tu m'aiderais beaucoup à prendre une décision finalement.
Côté fonctionnalités, le moteur Flatredball serait idéal. Mais j'ai essayé leurs outils, et franchement, ils sont horribles. Absolument inutilisable, j'aurais besoin de faire le mien à coup sûr. Je n'ai pas regardé leur API, mais si leurs outils sont si mauvais, je n'ai pas envie d'aller plus loin.
Unity3D. Celui-ci est assez sympa, mais je n'ai vraiment pas besoin de 3D , et c'est assez ... beaucoup de travail à apprendre. Je n'aime pas non plus qu'il soit si cher à utiliser pour différentes plates-formes et que je ne puisse le coder que par script. Vous devez acheter chaque plate-forme séparément. La convivialité de l'éditeur est moyenne, le produit dans l'ensemble est assez bon pour la plupart des utilisations, mais l'apprendre moi-même serait exagéré.
Shiva 3D. Cela semble assez bon, mais encore une fois: je n'ai pas vraiment besoin de 3D. La convivialité de l'éditeur est un peu pire que Unity3D à mon avis et il n'était pas clair pour moi comment commencer la programmation. Je pense que cela nécessite C ++ pour le codage, donc c'est aussi un point négatif. Je veux m'amuser, et c # c'est amusant;)
SDL. Franchement, j'aurais encore besoin de porter sur toutes ces différentes implémentations SDL. Et je n'aime pas la programmation de style OpenGL, c'est tout simplement laid. Et il a besoin de c ++, je sais qu'il pourrait y avoir des wrappers disponibles, mais je n'aime pas utiliser des wrappers, car ...
Irrlicht. Beaucoup de fonctionnalités, mais le support semble faible et s'adresse aux passionnés. Les liaisons C # sont supprimées à plusieurs reprises. Je ne suis pas un passionné de moteur, je veux juste faire un jeu. Je ne vois pas cela se produire avec Irrlicht.
Ogre3D. Beaucoup trop de travail, c'est juste un moteur graphique. Pas de support de plateforme multiple et c ++.
Torque2D. Ça coûte quelque chose à utiliser, et je n'ai pas entendu beaucoup de bonnes choses sur le support et la documentation. Coûts supplémentaires pour chaque plate-forme.