-
Le canvas pour les jeux
Bonjour,
Je travaille actuellement sur un petit jeu sur navigateur tour par tour. Le jeu prend la forme d'une grande carte divisée en hexagones. Les joueurs pourront :
- Faire défiler la carte avec des drag & drops ;
- Demander le deplacement de leurs unités en traçant des flèches ;
- Annuler des déplacements, c.a.d effacer des flèches.
Je me pose plusieurs questions relatives aux performances et la robustesse du canvas HTML5 :
- Est-ce que l'HTML5 + Javascript vous semble adapté ou je devrais mieux le faire en Flash ? J'ai choisi le javascript car je préférerais que ça fonctionne sur les produits Apple.
- Pour scroller la carte, quelle vous semble être la meilleure solution :
- Utiliser l'image entière (de 500Ko à 3Mo) que je copie partiellement sur le canvas avec drawImage ?
- Utiliser l'image entière que j'affiche partiellement grâce aux propriétés CSS (pas de canvas nécessaire)?
- Découper l'image en petits morceaux et faire plusieurs appels à DrawImage en ne copiant que les morceaux visibles ?
- Pour tracer les flèches de mouvement et pouvoir les annuler :
- Avoir autant d'élements HTML que de flèches de façon à pouvoir effacer une flèche sans redessiner le canvas ?
- Dessiner les flèches sur le canvas, ce qui implique de redessiner toutes les flèches dès que la carte doit être redessinée (lors d'un scroll par exemple) ?
Qu'en pensez-vous ?
merci,
-
As-tu envisagé un objet SVG ?
-
Non, je ne savais pas qu'on pouvait créer des svg interactifs. Je vais étudier la question.
Ca serait probablement plus simple pour l'ajout/suppression de flèches.
Est-ce que ce ne serait pas trop lent pour un jeu ? Ce sera tour par tour donc je n'ai pas besoin d'un très bon frame rate, il faut juste que le drag&drop de la carte ne saccade pas + éventuellement des sprites animés.
edit: il y a des libs (en Python ou Ruby de préférence) pour générer des GUI en SVG ?