Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Développement d'un jeu de plateforme en html5

2,593 views

Published on

Session sur le développement d'un jeu de plateforme en HTML5 / Canvas jouée pendant les Microsoft Days 2011.

On y voit :

- les différents frameworks de jeux JS du marché ainsi qu'une comparaison de performance entre SVG et Canvas
- La manière d'animer des sprites
- La manière d'ajouter de la logique pour les tests de collisions
- Le jeu HTML5 Platformer complet
- Des idées pour aller plus loin: webworkers, requestAnimationFrame, Box2D, etc.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Développement d'un jeu de plateforme en html5

  1. 1. Développement dun jeude plateforme en HTML5David Rousset / Microsoft France / @davroushttp://blogs.msdn.com/davrous 2
  2. 2. Au menu Analyse des technologies HTML5 et frameworks JS disponibles Animation des sprites Construction des objets principaux Détails sur le jeu complet Moteur physique, logique du jeu, chargement des niveaux Des idées pour aller plus loin 3
  3. 3. DémoObjectif : porter le jeu XNA qui va suivre 4
  4. 4. Niveau 1: analyse de l’existant Il existe 2 manières de dessiner en HTML5: <canvas> : à voir comme une zone bitmap dynamique dans laquelle on dessine à l’aide de primitives en JavaScript SVG : affichage de formes vectorielles décrites par XML Il existe de nombreux frameworks JavaScript pour le jeu: impactJS, craftyJS, melonJS, EaselJS, etc. 5
  5. 5. Niveau 1: <canvas> préférable 6
  6. 6. DémoAnalyse rapide des performances d’animationentre SVG et canvas 7
  7. 7. Niveau 1: EaselJS pour le framework Questions à se poser : Qualité / retour d’expériences ? Fréquence de mise à jour, suivi des bugs ouverts ? Compatibilité multi-navigateurs ? Connaissances actuelles ? Mes réponses pour EaselJS: Déjà utilisé pour PiratesLoveDaisies et Tanker Bon suivi des bugs sur Github Testé et approuvé sur les 5 navigateurs Mes connaissances/assets XNA facilement portables 8
  8. 8. DémoQuelques frameworks de jeu en action 9
  9. 9. Niveau 2: Animation des sprites Nous allons maintenant voir comment partir de ce genre de sprites : Et réussir à leur donner vie ! 10
  10. 10. DémoAnimation des sprites 11
  11. 11. Niveau 3: Objets principaux & collisions Créations des objets associés aux personnages dont le héro : Gestionnaire de téléchargement de ressources Collisions simples 12
  12. 12. DémoCréation des objets principaux et de leurscollisions 13
  13. 13. Niveau 4: revue des quelques détailsdu jeu complet Gestionnaire de téléchargements complet Collisions plus précises Chargement du niveau Moteur physique simpliste Astuces pour gérer le son Kudos pour IE9 14
  14. 14. DémoParcourrons ensemble le code du jeu 15
  15. 15. Niveau 5: pour aller plus loin Meilleure gestion des performance Monothreading vs WebWorkers requestAnimationFrame Adaptation FPS / performance Librairies plus avancées Box2D Gestion des devices mobiles Touch Scaling résolution Accéléromètre Gestion réseaux sociaux 16
  16. 16. RessourcesSérie de 3 tutoriaux sur le portage du jeu : Jeux HTML5: animation de sprites dans l’élément Canvas grâce à EaselJS Jeux HTML5: construction des objets principaux & gestion des collisions avec EaselJS HTML5 Platformer: portage complet du jeu XNA vers <canvas> grâce à EaselJSSur mon blog: http://blogs.msdn.com/davrous 17

×