Maison >interface Web >js tutoriel >Création d'un jeu Windows 8 simple avec JavaScript: entrée et son

Création d'un jeu Windows 8 simple avec JavaScript: entrée et son

William Shakespeare
William Shakespeareoriginal
2025-02-25 08:42:10532parcourir

Création d'un jeu Windows 8 simple avec JavaScript: entrée et son

Cette série de messages vous montrera comment créer un simple jeu Windows 8, en utilisant HTML5, JavaScript, Winjs et CreateJS . Le jeu est basé sur le jeu de XNA «Catapult Wars Lab». Nous réutiliserons les actifs de ce jeu alors que nous développons une nouvelle version pour Windows 8 basée sur les technologies Web. Dans cet article, nous répondrons aux entrées de l'utilisateur et rendrons les choses un peu plus vivantes en ajoutant le son.

Les plats clés

  • Le tutoriel montre comment créer un jeu Windows 8 simple à l'aide de HTML5, JavaScript, Winjs et CreateJS, le jeu étant basé sur le jeu de XNA «Catapult Wars Lab».
  • Le jeu est conçu pour répondre à la contribution des utilisateurs sous diverses formes telles que la souris, le toucher, le stylo et même les gestes, avec la mise en œuvre du système MSPOINTER et Msgestture pour détecter les gestes comme TAP et Double-Tap.
  • Le jeu intègre également des effets sonores à l'aide d'éléments audio HTML et de préloadjs pour s'assurer que les fichiers sonores sont prêts au début du jeu, améliorant l'expérience de jeu.

Gestion de l'entrée de l'utilisateur

Bien sûr, il existe de nombreuses façons de faire du travail de visée - aléatoire, basé sur le temps, basé sur la précision (par exemple «Cliquez… maintenant!»), Mais dans ce cas, nous laisserons l'utilisateur tracer une ligne indiquant à la fois la direction et la vitesse . Tout d'abord, ajoutons de nouvelles variables près du haut de Default.js: Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Windows 8 prend en charge plusieurs façons de dessiner - souris, toucher, stylo - et notre jeu doit être suffisamment flexible pour prendre en charge celle de l'utilisateur.  Heureusement, le système MSPOINTER combine le support pour tous ces éléments en un.  Nous utiliserons MSPointerdown / UP pour commencer et mettre fin à la visée, plus MSPoInterMove pour fournir des commentaires lorsque l'utilisateur ajuste l'objectif. Soit dit en passant, il y a également un excellent support via Msgestture pour détecter les gestes tels que TAP, Double-Tap, etc. Un bon exemple pour gérer les entrées et les gestes est l'échantillon «Ballineight» sur MSDN. Ces événements sont utilisés en pointant des fonctions de l'auditeur, appelés lorsqu'ils tirent.  Prenons soin de cela maintenant, en ajoutant près du haut de la fonction initialisée (): Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Et maintenant pour les fonctions elles-mêmes: ajoutez où vous aimez, mais j'ai placé entre Update () et Fireshot (): Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Notez qu'un exercice est laissé ici.  Pour plus de simplicité, j'ai omis de montrer du texte avec AIM% et / ou de dessiner une flèche de visée pendant la fonction ajustement ().  Allez-y et essayez d'ajouter que - des parties précédentes, nous utilisons déjà les mêmes techniques dont vous aurez besoin. Et une fonction pour nous aider à calculer l'objectif: Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Encore une fois, la simplicité gouverne la journée et ce n'est que pour le joueur 1, mais voici ce qui se passe:
  • Lignes 239-241 - Créez un nouveau point de la distance entre le début et les points finaux.  Échellez-le à une bonne vitesse pour appliquer par trame / mise à jour.
  • Lignes 242 & 244 - Assurez-vous que les X et Y sont limités afin que la photo ne disparaisse pas simplement de l'écran, passant trop rapidement
  • Lignes 243 & 245 - Assurez-vous que le tir va vers l'ennemi… plus ou moins.
Nous avons précédemment ajouté un code temporaire pour mettre à jour () pour que le joueur 1 fasse toujours du feu au hasard.  Maintenant, nous pouvons le remplacer pour utiliser le nouveau AIMVector: Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Allez-y et exécutez le jeu… Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Vous pouvez maintenant utiliser la souris, le stylo ou le toucher pour contrôler la photo!

"Je dois entendre des choses!" - ajout de son

Notre travail en tant que Dev de jeu n'est pas terminé avant d'avoir du son.  Nous avons déjà ajouté les fichiers sonores dans la partie 2, alors passons à l'étape suivante en les chargeant. Tout d'abord, quelques variables dans Default.js pour garder les choses bien rangées: Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Rappelez-vous de la partie 2 que nous avons déjà câblé les préloadjs pour s'assurer que nos ressources sont prêtes au début du jeu?  Nous pouvons utiliser la même approche avec des sons, alors ajoutons-les au manifeste: Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Pour utiliser ces fichiers, nous créerons des instances d'éléments audio HTML.  Pour faire court, si vous créez simplement une instance audio par fichier audio, vous serez probablement en train de courir car un son ne parvient pas à jouer avant le jeu précédent de cette instance.  Il existe plusieurs approches pour y faire face (par exemple, voir «HTML5 Audio et JavaScript Control» ), mais nous ferons la chose simple & inefficace d'utiliser une instance à chaque fois que nous jouons un son. Remarque, nous n'utiliserons pas SoundJS (une autre partie de CreateJS) dans cet exemple, mais bien sûr, vous êtes invité à le faire pour un tour! Ajoutez la fonction d'assistance playSound (fichier): Création d'un jeu Windows 8 simple avec JavaScript: entrée et son C'est ça!  Nous l'appelons maintenant, spécifiant le pointant constant vers le bon fichier.  Nous le ferons à plusieurs endroits. Tout d'abord, ajoutez un appel à Fireshot (): Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Maintenant, processHit (): Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Comme le commentaire le mentionne, vous pouvez utiliser le son «hit» au lieu de «exploser» si vous souhaitez le faire prendre plusieurs coups pour détruire une catapulte. Et enfin, jouez à la fin de Win ou Lose Sound in Endgame (): Création d'un jeu Windows 8 simple avec JavaScript: entrée et son Allez-y et donnez-lui une course pour essayer les choses.

jeu sur… et sur… et sur…

Félicitations!  Vous avez fait un jeu! Nous avons couvert beaucoup de terrain dans ces messages, mais comme tout, il y a beaucoup d'autres choses à essayer.  Pourquoi ne pas prendre un coup contre certains d'entre eux?
  • Ajustements d'écran - Portrait / paysage, cassé / rempli.  Une grande chance de se renseigner sur les requêtes médiatiques CSS!
  • Amélioration du support tactile / geste
  • Sprites / Animations - tir hit / miss, catapulte tire-back / feu, catapulte détruite
  • Dynamique du gameplay - ajout de vent, de nouvelles scènes, de nouvelles fonctionnalités / mises à niveau de catapulte, des choix dans les munitions, etc.
  • Ajouter une montagne et des nuages ​​mobiles à l'arrière-plan (les actifs sont déjà là)
  • Ajoutez un peu Intelligence à l'intelligence artificielle actuellement très artificielle
  • Envisagez d'utiliser une tuile en direct - peut-être montrer le dernier / score du joueur?
Apprécier!  Au plaisir d'entendre parler des nouvelles choses impressionnantes que vous ajoutez!

Les questions fréquemment posées sur la création d'un simple jeu Windows 8 avec JavaScript

Comment puis-je ajouter des mouvements plus complexes à mes personnages de jeu?

Pour ajouter des mouvements plus complexes à vos personnages de jeu, vous pouvez utiliser la méthode «DemandeAmationFrame». Cette méthode vous permet de créer des animations plus lisses en appelant votre fonction d'animation avant la prochaine repeinte du navigateur. Vous pouvez utiliser cette méthode pour mettre à jour la position de vos personnages de jeu en fonction de la saisie des utilisateurs ou de la logique de jeu. Par exemple, vous pouvez l'utiliser pour faire sauter un caractère lorsque l'utilisateur appuie sur une touche spécifique.

Comment puis-je ajouter des effets sonores à mon jeu?

Ajout d'effets sonores à votre jeu L'expérience de jeu. Vous pouvez utiliser l'objet «Audio» dans JavaScript pour lire des fichiers sonores. Pour lire un son, vous devez créer un nouvel objet audio et appeler la méthode «Play». Vous pouvez également contrôler le volume, faire boucle le son et arrêter le son à l'aide des méthodes «Volume», «Loop» et «Pause» respectivement.

Comment puis-je rendre mon jeu réactif aux différentes tailles d'écran?

Pour rendre votre jeu réactif, vous pouvez utiliser les propriétés 'Window.innerWidth' et 'Window.innerheight' en JavaScript. Ces propriétés renvoient respectivement la largeur et la hauteur de la fenêtre du navigateur. Vous pouvez utiliser ces propriétés pour ajuster la taille et la position de vos éléments de jeu en fonction de la taille de la fenêtre du navigateur.

Comment puis-je ajouter des fonctionnalités multijoueurs à mon jeu?

Ajout de la fonctionnalité multijoueur à Votre jeu peut être assez complexe. Vous devrez utiliser WebSockets pour permettre une communication en temps réel entre les joueurs. Vous devrez également gérer des problèmes tels que la latence et la synchronisation.

Comment puis-je optimiser mon jeu pour de meilleures performances?

Il existe plusieurs façons d'optimiser votre jeu pour de meilleures performances. Une façon consiste à utiliser la méthode «Requestanimationframe» pour vos animations. Cette méthode est plus efficace que «setInterval» ou «setTimeout» car elle pause l'animation lorsque l'utilisateur passe à un autre onglet. Une autre façon consiste à minimiser l'utilisation des variables globales et des fermetures, car elles peuvent prendre beaucoup de mémoire.

Comment puis-je ajouter des commandes tactiles à mon jeu?

Pour ajouter des commandes tactiles à votre jeu, vous pouvez utiliser les événements «Touchstart», «TouchMove» et «Touchend» en JavaScript. Ces événements sont tirés lorsque l'utilisateur touche l'écran, déplace son doigt et soulève respectivement le doigt. Vous pouvez utiliser ces événements pour contrôler le mouvement de vos personnages de jeu.

Comment puis-je publier mon jeu sur le magasin Windows?

Pour publier votre jeu sur le magasin Windows, vous devez créer un compte de développeur Windows Store. Une fois que vous avez un compte, vous pouvez soumettre votre jeu pour la certification. Si votre jeu passe le processus de certification, il sera publié sur le Windows Store.

Comment puis-je ajouter des achats intégrés à mon jeu?

pour ajouter des achats intégrés à votre jeu , vous devez utiliser l'espace de noms Windows.ApplicationModel.Store. Cet espace de noms fournit les classes et les méthodes dont vous avez besoin pour implémenter les achats intégrés.

Comment puis-je ajouter des réalisations à mon jeu?

Pour ajouter des réalisations à votre jeu, vous pouvez utiliser les fenêtres. ApplicationModel.UserDataAccouts Espace. Cet espace de noms fournit les classes et les méthodes dont vous avez besoin pour implémenter . Cet outil vous permet de déboguer à distance et de tester votre jeu sur un appareil Windows.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn