Développement d'un jeu de plateforme en html5

  • 1,820 views
Uploaded on

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

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.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,820
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
21
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • http://create.msdn.com/en-US/education/catalog/sample/platformer
  • http://themaninblue.com/experiment/AnimationBenchmark/svg/?particles=1000
  • http://www.pirateslovedaisies.com/http://www.tankster.net/
  • http://www.melonjs.org/http://html5-benchmark.com/http://www.pirateslovedaisies.com/
  • http://blogs.msdn.com/b/davrous/archive/2011/07/22/jeux-html5-animation-de-sprites-dans-l-233-l-233-ment-canvas-gr-226-ce-224-easeljs.aspx
  • http://www.pirateslovedaisies.com/http://www.tankster.net/
  • http://blogs.msdn.com/b/davrous/archive/2011/08/22/jeux-html5-construction-des-objets-principaux-amp-gestion-des-collisions-avec-easeljs.aspx
  • http://blogs.msdn.com/b/davrous/archive/2011/09/09/html5-platformer-portage-complet-du-jeu-xna-vers-lt-canvas-gt-gr-226-ce-224-easeljs.aspx

Transcript

  • 1. Développement dun jeude plateforme en HTML5David Rousset / Microsoft France / @davroushttp://blogs.msdn.com/davrous 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. DémoObjectif : porter le jeu XNA qui va suivre 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. Niveau 1: <canvas> préférable 6
  • 6. DémoAnalyse rapide des performances d’animationentre SVG et canvas 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. DémoQuelques frameworks de jeu en action 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. DémoAnimation des sprites 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. DémoCréation des objets principaux et de leurscollisions 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. DémoParcourrons ensemble le code du jeu 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. 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