Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Outils pour le développement de jeux vidéo

Sur cette page, vous pouvez trouver des liens vers nos articles sur les outils de développement de jeux, qui visent finalement à couvrir les frameworks, compilateurs et outils de débogage.

asm.js

Asm.js est un sous-ensemble très limité du langage JavaScript, qui peut être considérablement optimisée et exécutée dans un moteur de compilation à l'avance (AOT), pour des performances beaucoup plus rapides que vos performances JavaScript typiques. C'est, bien sûr, idéal pour les jeux.

Emscripten

Un compilateur LLVM à JavaScript ; Avec Emscripten, vous pouvez compiler C++ et d'autres langues qui peuvent compiler à LLVMBytecode en JavaScript haute performance. Il s'agit d'un excellent outil pour le portage des applications sur le Web ! Il y a un tutoriel EMScripten utile (angl.) disponible sur le wiki.

Firefox Profiler

Le profileur Firefox vous permet de déterminer les performances de votre code afin d'identifier les problèmes et d'optimiser la vitesse d'exécution de votre jeu.

Outils pour le développement et le débogage de jeux

En quoi cela diffère-t-il du débogage normal d'une application web ? Quels sont les outils spécialisés disponibles ? Will abordera une grande partie de ces questions dans outils (angl.), mais ici, nous devrions fournir une sorte de tutoriel pratique sur les outils de débogage des jeux, avec des liens vers les ressources de Will :

  • Présentation des outils de base
  • Éditeur de shader (angl.)
  • Outils de performance (toujours en production, estimés début 2014)

Technologies Web

Technologies Web dans le développement de jeux et leur fonction
Fonction Technologie
Audio API audio Web
Graphiques WebGL (OpenGL ES 2.0)
Entrée Événements touchés, OpenGL ES 2.0)
Entrée Événements touchés, API GamePad, capteurs de l'appareil, WebRTC, API plein écran, API de verrouillage du pointeur
Langage JavaScript (ou C/C++ en utilisant Emscripten un compilateur vers JavaScript)
Réseau WebRTC et/ou WebSockets
Stockage IndexedDB ou le « cloud »
Web HTML, CSS, SVG (et bien plus encore!)
API Fetch

Envoyez et recevez tout type de données depuis un serveur Web, par exemple pour télécharger de nouveaux niveaux de jeu et des illustrations, ou pour transmettre des informations sur l'état du jeu en temps différé.

API Fullscreen

Jouer en plein écran.

API GamePad

Utilisez des GamePads ou d'autres contrôleurs de jeu.

HTML et CSS

Construisez, stylisez et agencez l'interface utilisateur de votre jeu.

Audio HTML

Jouez facilement des effets sonores simples et de la musique.

Indexédb

Stocker les données des utilisateurs sur leur propre ordinateur ou appareil.

Javascript

Langue de programmation Web rapide pour écrire le code de votre jeu. Pour porter facilement vos jeux existants Emscripten ou Asm.js

API de verrouillage du pointeur

Verrouiller la souris ou un autre appareil de pointage dans l'interface de votre jeu.

SVG (Graphiques vectoriels évolutifs)

Créez des graphiques vectoriels qui s'adaptent parfaitement, quelle que soit la taille ou la résolution de l'écran de l'utilisateur.

Tableaux typés

Accédez aux données binaires brutes depuis JavaScrip ; manipulez les textures GL, les données de jeu ou tout autre élément.

API audio Web

Contrôlez la lecture, la synthèse et la manipulation de l'audio en temps réel.

WebGL

Créez des graphiques 3D (et 2D) à haute performance et avec l'accélération matérielle. OpenGL ES 2.0.

WebRTC

Communications en temps réel pour contrôler les données audio et vidéo, y compris les téléconférences et la transmission d'autres données d'application entre deux utilisateurs, comme le chat.

Sockets websockets

Connectez votre application ou votre site à un serveur pour transmettre des données dans les deux sens en temps réel. Parfait pour l'action de jeu multijoueur, les services de chat, etc.

Travailleurs du Web

Générer des threads d'arrière-plan exécutant leur propre code JavaScript pour les processeurs multicœurs.

Transférer des jeux natifs vers le Web

Si vous êtes un développeur natif (par exemple, vous écrivez des jeux en C++) et que vous souhaitez savoir comment porter vos jeux sur le Web, vous devriez en savoir plus sur notre outil Emscripten - il s'agit d'un compilateur LLVM vers JavaScript qui prend le bytecode LLVM (généré par exemple à partir de C/C++ à l'aide de Clang ou d'un autre langage) et le compile en asm.js, qui peut être exécuté sur le Web.

Pour commencer, regardez les ressources suivantes :