Aller au contenu principal
Massively Fun Un petit studio indépendant créant des jeux étranges et ravissants — tout en partageant les coulisses de leur création.

Certains liens sur ce site sont des liens d'affiliation : si vous effectuez un achat via ceux-ci, nous pouvons percevoir une commission sans frais supplémentaires pour vous. Cela n'influence jamais nos recommandations. Consultez notre divulgation d'affiliation pour plus de détails. Divulgation d'affiliation.

Seattle Game Dev JS : Un regard en arrière et un pas en avant.

En janvier dernier, notre groupe de développement de jeux HTML5 a fêté son premier anniversaire. (Ils grandissent si vite !) Et c’est avec ce jalon à l’esprit que nous aimerions adresser un sincère merci à tous nos membres, sponsors et à tous ceux qui ont aidé à faire de nos réunions ces formidables pépites de connaissances qu’elles sont !

Cette année s’annonce encore meilleure que la précédente. Nous l’avons commencée par une panne de courant, suivie d’un rétablissement et d’une présentation incroyables (malgré l’absence d’électricité !) sur les optimisations HTML5, par l’équipe mobile de Double Down. On ne s’ennuie jamais !

L’année dernière, notre groupe est passé de 0 à 380 membres, une belle réussite ! L’équipe Game Dev JS est une communauté diversifiée composée de développeurs, d’artistes, de gamers, de gestionnaires de programmes, d’administrateurs réseau et de passionnés de JS de toutes sortes.

Notre plus jeune membre développeur n’a que 13 ans ! En gardant toujours un contenu frais, des intervenants dynamiques et des membres engagés, nous avons pu bâtir une communauté robuste – nous n’aurions pas pu le faire sans vous !

Si vous vous intéressez au JS, meetup est une excellente occasion de s’amuser, d’apprendre quelque chose de nouveau, de partager vos connaissances et de rencontrer des personnages très intéressants.

Points clés à retenir

  • Seattle Game Dev JS est passé de zéro à 380 membres au cours de sa première année, grâce à un mélange de conférences, de démos éclair et de happy hours.
  • La programmation du groupe pour 2012 a couvert l’ensemble de la pile HTML5 : rendu, astuces canvas, audio, wrappers natifs, Windows 8 et architecture serveur node.js.
  • Une communauté comme celle-ci fonctionne parce qu’elle reste délibérément interdisciplinaire : développeurs, artistes, PM et administrateurs réseau réunis dans une seule pièce.
  • Le meilleur moyen de tirer profit d’un meetup est d’être présent, de poser des questions et, eventually, de présenter soi-même quelque chose.
  • La planification pour 2013 est ouverte : nous attendons vos idées de sujets, vos suggestions de lieux et vos propositions d’interventions.

Pourquoi un groupe de développement de jeux JavaScript est important

Lorsque nous avons créé ce groupe, « développement de jeux HTML5 » était encore une expression qui faisait plisser les yeux de beaucoup de gens. L’élément <canvas> était jeune, les performances des navigateurs étaient incohérentes, et l’idée que l’on puisse livrer un vrai jeu — et non une démo technique — en JavaScript était traitée comme une curiosité plutôt que comme une plateforme.

Connexes : — Illustrations, outils et modèles prêts à l'emploi qui s'intègrent directement dans votre projet Unity.

Un an plus tard, la conversation a complètement changé. La raison pour laquelle une rencontre locale est importante dans un domaine comme celui-ci est que la documentation est en retard sur la réalité.

Les articles de blog décrivent ce qui fonctionnait il y a six mois. Les conférences sont polies au point d’en devenir abstraites. Ce qui fait réellement progresser un développeur, c’est d’être assis à côté de quelqu’un qui a résolu exactement le même problème la semaine dernière — un canvas qui saccade sur un appareil spécifique, un élément audio qui ne se déverrouille pas sur mobile, un pipeline de build qui sature avec un gros bundle d’assets.

C’est ce vide que Game Dev JS comble. Ce n’est pas une série de cours. C’est une pièce remplie de personnes qui sont toutes en plein milieu d’un problème et qui comparent leurs notes.

Si vous faites du shopping : — Moteur HTML5 sans code basé sur un navigateur qui exporte vers le Web, les appareils mobiles et les ordinateurs de bureau.

Ce que nous avons couvert en 2012

Voici une partie de ce que nous avons couvert au cours de l’année :

  • Javascript Game Development: an Overview – Grant Goodale, Massively Fun
  • Bibliothèques graphiques en mode conservé – Kevin Moore, Pixel Lab
  • Stupid Canvas Tricks – Dean Hudson, Massively Fun
  • HTML5 port of Zepto Labs’ Cut the Rope – Joel Fillmore, Pixel Lab
  • Challenges of building a native UIWebView application around an HTML5 webapp – Jeff Close, Adam Hardtke, Sean Stringer, and Nate Vaughn, DDI
  • Native wrapper technology: CocoonJS – Iker Jamardo, Ludei
  • HTML5 game development for Windows 8 – Giorgio Sardo, Microsoft
  • Game engine design around node.js and express.js – Dean Hudson and Mason Browne, Massively Fun
  • Co+Pilot: a tool built using Javascript and a JQuery like syntax to allow users to make native apps – Myron Millin and David Whitlark
  • Audio de jeu HTML5 efficace – Chris Khoo, Wappworks Studios

Tous ces sujets, ainsi que de nombreuses conférences éclair et démos réalisées par les membres du groupe, ont été présentés au cours de l’année. Et bien sûr, nous nous réunissons également occasionnellement pour des happy hours !

Un merci tout particulier à Double Down Interactive, Big Fish Games, GameHouse et The Makers Space pour nous avoir accueillis !

Les thèmes derrière les discussions

En regardant cette liste, quelques fils conducteurs clairs se dégagent — et ils méritent d’être nommés, car ils correspondent presque exactement aux décisions que tout développeur HTML5 doit prendre.

Le rendu et la question du mode conservé. L’exposé de Kevin Moore sur les bibliothèques graphiques en mode conservé et les « Stupid Canvas Tricks » de Dean Hudson se situent aux deux extrémités d’un véritable choix architectural. Le dessin canvas en mode immédiat vous offre un contrôle total et une surcharge minimale, mais vous gérez vous-même chaque redessin. Les bibliothèques en mode conservé (la lignée qui traverse des frameworks comme CreateJS, PixiJS et plus tard Phaser) vous offrent un graphe de scène, des tests de collision (hit testing) et du tweening prêts à l’emploi — au prix d’une couche d’abstraction entre vous et le GPU. Aucune des deux approches n’est « correcte ». La bonne réponse dépend de si votre jeu se compose de quelques sprites ou d’un monde complexe et stateful.

Le problème du wrapper. Trois exposés distincts — la session DDI UIWebView, la présentation CocoonJS d’Iker Jamardo et Co+Pilot — ont tous tourné autour de la même question : comment intégrer une application web dans un app store ? En 2012, les options étaient grosso modo :

Connexes : — Livres de programmation de jeux, claviers mécaniques, moniteurs et matériel de développement.

ApprocheCe que cela vous apporteLe compromis
Application web simpleZéro friction, mises à jour instantanéesAucune présence sur les stores, API d’appareil limitées
Wrapper WebView natifDistribution via les stores, quelques hooks natifsPlafond de performances, inadéquation de l’UI avec le chrome natif
Wrapper accéléré (ex. CocoonJS)Canevas accéléré par GPU, vitesse proche du natifDépendance au fournisseur (vendor lock-in), bizarreries spécifiques à la plateforme

Ce tableau reste aujourd’hui un moyen utile de réfléchir à cette décision, même si les outils spécifiques ont évolué.

Audio. L’exposé de Chris Khoo sur l’audio efficace pour les jeux HTML5 était, et reste, l’un des sujets les plus sous-estimés du domaine. L’audio est le point où les jeux web échouent le plus souvent : politiques de lecture automatique, différences de prise en charge des codecs et latence entre un geste de l’utilisateur et le déclenchement réel d’un son. Si vous créez un jeu aujourd’hui, prévoyez du temps réel pour l’audio — ce n’est pas un simple problème de « dépôt de fichier ».

JavaScript côté serveur. L’exposé de Dean Hudson et Mason Browne sur la conception de autour de node.js et express.js a été un premier signal indiquant que le serveur et le client pouvaient partager un langage. Cela compte plus qu’il n’y paraît : du code partagé pour la validation de l’état du jeu, des formats de données partagés et un modèle mental unique sur toute la pile.

Notre sélection : — Cours à la demande couvrant la programmation Unity, Unreal, C++, C# et shader.

Comment tirer le meilleur parti d’un Meetup

Si vous êtes nouveau dans ce genre de groupe — ou si vous observez en retrait sans avoir encore sauté le pas — voici les conseils pratiques que nous donnerions à n’importe qui.

  • Venez avec un problème spécifique. « Mon jeu est lent » suscite de la sympathie. « Mon canevas perd des images lorsque je dessine plus de quelques centaines de sprites » vous apporte une réponse.
  • Parlez à la personne à côté de vous, pas seulement à l’orateur. La conférence est le prétexte ; la conversation dans le couloir est la valeur ajoutée.
  • Faites un exposé éclair (lightning talk). Cinq minutes sur quelque chose que vous avez appris est le moyen le plus rapide de devenir une figure connue du groupe. Vous n’avez pas besoin d’être un expert — vous devez simplement avoir résolu un problème.
  • Faites un suivi. Échangez vos coordonnées et envoyez réellement le lien ou l’extrait de code que vous avez promis.
  • Apportez votre perspective de non-développeur. Nos artistes, PM et administrateurs réseau posent les questions que les développeurs oublient de poser, et ces questions sont souvent les plus utiles dans la salle.

Construire une communauté qui dure

Passer de zéro à 380 membres en un an ressemble à une mesure de vanité, mais le chiffre qui compte réellement est la rétention — combien de ces personnes sont revenues. Voici quelques points que nous avons appris pour maintenir une communauté technique en vie :

  • Variez le contenu. Si chaque réunion est un tutoriel canevas pour débutants, vos membres expérimentés cessent de venir. Si chaque réunion porte sur l’optimisation approfondie du GPU, vous perdez les nouveaux arrivants. Mélangez aperçus, analyses approfondies et démos.
  • Gardez la barrière à la parole basse. Les exposés éclair et les démos de membres réduisent les enjeux et font émerger des personnes qui ne se porteraient jamais volontaires pour un créneau complet.
  • Nourrissez les gens, littéralement. Les happy hours et les repas partagés font plus pour la cohésion communautaire que n’importe quelle planification d’ordre du jour.
  • Remerciez publiquement vos hôtes. Double Down Interactive, Big Fish Games, GameHouse et The Makers Space nous ont prêté des salles, et les salles sont le prérequis peu glamour de tout le reste.
  • Soyez accueillants pour tous les âges et tous les horizons. Notre plus jeune membre a 13 ans. Ce n’est pas une curiosité — c’est un rappel que ce domaine a une barrière à l’entrée inhabituellement basse, et le groupe doit refléter cela.

Regard vers 2013

Ça a l’air génial, n’est-ce pas ? De quoi aimeriez-vous nous voir parler en 2013 ? Où souhaitez-vous vous rencontrer ?

Certaines directions qui nous intéressent et sur lesquelles nous aimerions avoir votre avis :

  • Performances et profilage mobiles — comment mesurer réellement où partent les images, en utilisant les du navigateur et des tests sur appareil.
  • Multijoueur et réseau — WebSockets, compensation de la latence et réalités complexes de la synchronisation en temps réel.
  • Outillage et flux de travail — systèmes de build, pipelines d’assets et comment les petites équipes livrent sans ingénieur outils dédié.
  • Physique et collisions — quand utiliser une bibliothèque et quand écrire la sienne.
  • Accessibilité et saisie — plateformes clavier, tactiles et de contrôle de mouvement, et comment en supporter plusieurs sans doubler le travail.

Répondez ci-dessous avec vos idées ou tweetez @massivelyfun en utilisant le hashtag #GameDevJS. À bientôt !

Questions fréquemment posées

Qu’est-ce que Seattle Game Dev JS ?

C’est un groupe de meetup de la région de Seattle pour les personnes intéressées par le développement de jeux en JavaScript et HTML5. Il rassemble des développeurs, des artistes, des designers, des gestionnaires de programme, des administrateurs réseau et des passionnés de JS en général pour des conférences, des démos éclair et des événements sociaux.

Dois-je être un développeur expérimenté pour participer ?

Non. Le groupe mélange délibérément des présentations générales et des plongées techniques approfondies, et les membres vont d’un amateur de 13 ans à des ingénieurs professionnels dans des studios établis. Si vous êtes curieux du développement de jeux JS, vous avez votre place parmi nous.

Comment proposer une conférence ou suggérer un sujet ?

Répondez dans les commentaires de cet article ou tweetez @massivelyfun en utilisant le hashtag #GameDevJS. Nous recherchons activement des idées de sujets, des suggestions de lieux et des propositions de conférenciers pour 2013.

Quels types de sujets le groupe aborde-t-il ?

Historiquement : techniques de rendu et de canevas, bibliothèques graphiques, wrappers natifs et distribution sur les stores d’applications, audio HTML5, développement Windows 8 et architecture serveur node.js/express.js. Nous souhaitons nous étendre au profilage mobile, au réseau multijoueur, à l’outillage, à la physique et à l’accessibilité.

Qui accueille les réunions ?

Nous avons été hébergés par Double Down Interactive, Big Fish Games, GameHouse et The Makers Space, et nous leur sommes tous reconnaissants. Si votre entreprise dispose d’espace et souhaite soutenir la communauté locale de développeurs, nous serions ravis d’avoir de vos nouvelles.

Ce groupe concerne-t-il uniquement les jeux ?

L’accent est mis sur les jeux, mais les compétences recoupent largement le développement général du Web et des applications : le rendu canvas, la gestion audio, les wrappers natifs et l’architecture node.js s’appliquent tous bien au-delà des jeux. Beaucoup de nos membres travaillent sur des projets qui ne sont pas des jeux.

Partagez ceci : Twitter Facebook Google Pinterest Reddit

Lectures complémentaires

Frequently asked questions

What is Seattle Game Dev JS?

It's a Seattle-area meetup group for people interested in JavaScript and HTML5 game development. It brings together developers, artists, designers, program managers, network admins, and general JS enthusiasts for talks, lightning demos, and social events.

Do I need to be an experienced developer to attend?

No. The group deliberately mixes overview talks with deep technical dives, and members range from a 13-year-old hobbyist to professional engineers at established studios. If you're curious about JS game development, you belong in the room.

How can I propose a talk or suggest a topic?

Reply in the comments on this post, or tweet @massivelyfun using the GameDevJS hashtag. We're actively looking for topic ideas, venue suggestions, and speaker pitches for 2013.

What kinds of topics does the group cover?

Historically: rendering and canvas techniques, graphics libraries, native wrappers and app-store distribution, HTML5 audio, Windows 8 development, and node.js/express.js server architecture. We're interested in expanding into mobile profiling, multiplayer networking, tooling, physics, and accessibility.

Who hosts the meetings?

We've been hosted by Double Down Interactive, Big Fish Games, GameHouse, and The Makers Space, and we're grateful to all of them. If your company has space and wants to support the local dev community, we'd love to hear from you.

Is this group only about games?

The focus is games, but the skills overlap heavily with general web and app development — canvas rendering, audio handling, native wrappers, and node.js architecture all apply well beyond games. Plenty of our members work on non-game projects. Share this: Twitter Facebook Google Pinterest Reddit <!-- citations:start --> Further reading - [HTML5](https://en.wikipedia.org/wiki/HTML5) — Wikipedia - [Canvas element](https://en.wikipedia.org/wiki/Canvas_element) — Wikipedia - [Node.js](https://en.wikipedia.org/wiki/Node.js) — Wikipedia - [Meetup (service)](https://en.wikipedia.org/wiki/Meetup_(serv


Apprenez le développement de jeux selon votre propre horaire

Cours à la demande couvrant la programmation Unity, Unreal, C++, C# et shader