39 votes

Moteurs 2D pour JavaScript

J'essaie de créer un jeu de tuiles en JavaScript, en utilisant le canevas HTML5. Il y a beaucoup de moteurs à choisir, tels que

... et la liste est encore longue.

Cependant, il ne semble pas y avoir de norme de facto parmi toutes ces différentes mises en œuvre. En fait, je suis à la recherche de la jQuery de moteurs de jeux JavaScript. Un moteur qui est soutenu par une (grande) communauté, qui possède une excellente documentation et qui est activement maintenu. La plupart de ces moteurs me semblent être des projets d'un seul homme.

Quelle est la norme de facto pour les moteurs de jeux 2D en JavaScript ?

En outre, je serais très intéressé par les expériences de mises en œuvre réelles (autres que les démos). Pong y _Pac-Man_ jeux).

0 votes

Je suppose que les jeux HTML5 sont un domaine trop "jeune" pour qu'il y ait un "leader" tel que jQuery pour une clientèle simple.

0 votes

Je ne pense pas qu'il y ait de standard defacto pour une raison simple : il n'y a pas tant de jeux javascript que ça. Si vous n'êtes pas prêt à affronter l'enfer de la compatibilité/performance des navigateurs, vous feriez mieux de rester à l'écart des jeux en javascript uniquement.

1 votes

@Schmurfy : bien, par exemple MelonJS semble supporter les principaux navigateurs. Même avec seulement le support d'IE9 (ou 10), ce serait une option raisonnable pour moi. Je n'ai pas peur de profiler ou de déboguer non plus... donc cela ne devrait pas être une limitation à la réponse.

14voto

Simon Sarris Points 33799

Il n'y en a pas pour le moment et je dirais même qu'il y a peut ne jamais l'être de la même façon qu'il y a jQuery, pour le simple fait que la plupart des jeux (commerciaux) vont vouloir être impitoyablement performants, ce qui signifie utiliser le moins de choses possibles, et beaucoup de ces bibliothèques ajoutent des choses inutiles ou des performances là où ce n'est pas souhaité.

Cela ne veut pas dire qu'ils ne seront pas du tout utilisés. Toutes les bibliothèques ci-dessus sont probablement bonnes pour un grand nombre de petits jeux.

Mais j'imagine que sur les grands projets, de nombreux studios se retrouveront à utiliser une bibliothèque jusqu'à ce qu'ils se heurtent à un mur de performance, puis à écrire eux-mêmes tous les composants qu'ils utilisaient dans la bibliothèque afin de ne conserver que les petits éléments dont ils ont besoin.

S'il y en a une qui devient populaire, elle sera très certainement modulaire comme MooTools (la deuxième bibliothèque JavaScript la plus populaire), où elle essaie d'être compacte et de s'adapter aux besoins des utilisateurs. vous permet de sélectionner uniquement les composants que vous souhaitez utiliser . J'imagine que vous trouverez beaucoup de jeux dans le futur qui ont un très petit moteur. juste pour le traitement du son ou juste pour la gestion des images ou d'un tableau isomorphe en 2D, au lieu des jeux qui disposent d'une (grande) bibliothèque qui tente de gérer tous les types de jeux en 2D possibles.

Quoi qu'il en soit, si vous voulez simplement trouver le moteur JavaScript le plus populaire, votre meilleure chance dans les mois à venir est d'utiliser Google (page rank) pour déterminer le plus populaire. Une recherche sur "moteurs de jeux 2D JavaScript/Canvas" vous donnera une assez bonne idée de la bibliothèque la plus liée (populaire) à un moment donné.

(Après tout, essayez de chercher "bibliothèque JavaScript" sur Google. Vous pouvez deviner le premier résultat, je parie !)

6voto

pensan Points 96

J'ai trouvé cette question en cherchant un moteur à moi. Je veux juste ajouter ce site ici parce qu'il offre un bon aperçu de beaucoup de moteurs de jeux HTML5 :

http://html5gameengine.com/

Il existe également quelques filtres intéressants, tels que les licences/coûts, la date de sortie et l'évaluation des utilisateurs.

(PS : Je ne suis pas lié à ce site de quelque manière que ce soit)

1voto

gamengineers Points 160

Je suis d'accord avec les autres. Il n'y a tout simplement pas de standard, et il pourrait ne pas y en avoir avant un certain temps. Pourtant, je ne fais que commencer moi-même - et j'aime beaucoup le framework ThreeJS :

Bien sûr, c'est un WebGL Cadre 3D - mais je pense que vous pouvez retirer les éléments 3D pour le rendre 2D. C'est du moins ce que j'espère en m'enfonçant dans le monde de WebGL, qui pourrait finir par devenir la norme à l'avenir.

Ce qui aide, c'est de s'appuyer sur Chrome Canary pour le développement ! :) https://tools.google.com/dlpage/chromesxs

Si vous choisissez cette voie, n'oubliez pas de définir about:flags dans Chrome, afin d'activer l'indicateur "Override software rendering list".

0voto

John Escobedo Points 109

Utilisez gameQuery un moteur de jeu JavaScript pour jQuery.

0voto

Martin Drapeau Points 656

Moteur de jeu Backbone est un cadre de travail 2D qui a été écrit au-dessus de Backbone, déjà populaire et géré par une grande communauté.

Les objets, l'héritage, les événements, la persistance, etc. sont de facto intégrés à Backbone. Le moteur emprunte à MelonJS des sprites (Backbone Models) qui mettent en œuvre des méthodes de mise à jour et de dessin. Super Mario Bros. Le niveau 1-1 a été rédigé à titre d'exemple. Cela vaut peut-être la peine de le vérifier.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X