Game Loop & Leaderboard | How to Make a Multiplayer Game With Fusion 2 - Part 2

Photon Engine
2 Apr 202414:19

Summary

TLDRDans cette vidéo, nous apprenons à créer une boucle de jeu pour un jeu multijoueur en utilisant Photon Fusion 2 dans Unity. Les étapes comprennent la configuration d'une ligne d'arrivée avec des plateformes, la gestion de la logique de jeu pour déterminer le gagnant, la gestion de l'état de préparation des joueurs, et la mise en place d'une interface utilisateur pour afficher les informations essentielles. De plus, nous intégrons des appels de procédure à distance (RPC) pour synchroniser les noms des joueurs et créons un tableau de classement pour suivre les scores. Enfin, nous abordons lissage des entrées pour une expérience de jeu fluide.

Takeaways

  • 😀 Implémentation d'une boucle de jeu pour déterminer le gagnant et gérer le redémarrage du jeu.
  • 😀 Utilisation d'une plateforme comme ligne d'arrivée pour permettre aux joueurs de gagner.
  • 😀 Détection des joueurs atteignant la plateforme via un collider de déclenchement.
  • 😀 Création d'une classe GameLogic pour gérer l'état du jeu et les joueurs gagnants.
  • 😀 Ajout d'une propriété Networked pour stocker le nom des joueurs et synchroniser les informations.
  • 😀 Utilisation de RPC (Remote Procedure Call) pour envoyer les noms des joueurs au joueur hôte.
  • 😀 Mise en place d'une interface utilisateur pour afficher le gagnant et les instructions aux joueurs.
  • 😀 Introduction d'un tableau de classement pour visualiser les progrès des joueurs.
  • 😀 Amélioration de la logique d'entrée de la souris pour un mouvement de caméra plus fluide.
  • 😀 Préparation pour la mise en œuvre de mécanismes de mouvement avancés dans la prochaine vidéo.

Q & A

  • Quelle est la principale fonctionnalité mise en œuvre dans cette vidéo?

    -La vidéo se concentre sur l'implémentation d'une boucle de jeu adéquate qui détermine le gagnant, démarre et redémarre le jeu lorsque tous les joueurs sont prêts, et affiche les progrès des joueurs sur un tableau des scores.

  • Comment les joueurs détectent-ils lorsqu'ils atteignent la plateforme de fin?

    -Un second colliseur en boîte est attaché à la plateforme de fin, configuré comme un colliseur de déclenchement. Sa taille et sa position sont ajustées pour bien s'aligner sur la plateforme.

  • Quel est le rôle de la classe GameLogic dans la gestion du jeu?

    -La classe GameLogic gère les propriétés réseau pour stocker le joueur gagnant et l'état du jeu. Elle contient également des méthodes pour gérer la préparation des joueurs et le tableau des scores.

  • Comment le jeu vérifie-t-il si tous les joueurs sont prêts?

    -Un booléen est ajouté à la classe Player pour suivre l'état de préparation des joueurs. La classe GameLogic parcourt tous les joueurs pour vérifier leur statut de préparation et ajuste l'état du jeu en conséquence.

  • Quel est l'objectif de la méthode PreparePlayers?

    -La méthode PreparePlayers calcule l'angle de séparation et téléporte chaque joueur à son point de réapparition dans un cercle, assurant un espacement égal entre eux.

  • Comment la classe UIManager contribue-t-elle à l'affichage des résultats du jeu?

    -La classe UIManager crée des références pour afficher le nom du gagnant et les instructions à l'écran. Elle met à jour l'interface utilisateur en fonction de l'état du jeu.

  • Qu'est-ce qu'un RPC et pourquoi est-il utilisé dans ce contexte?

    -Un RPC (Remote Procedure Call) permet aux joueurs de demander à d'autres pairs du réseau d'exécuter une méthode avec des paramètres. Dans ce cas, il est utilisé pour synchroniser le nom du joueur avec le serveur hôte.

  • Pourquoi est-il important de synchroniser les propriétés réseau dans un jeu multijoueur?

    -La synchronisation des propriétés réseau assure que tous les joueurs ont une vue cohérente et à jour de l'état du jeu, même s'ils rejoignent le jeu après son démarrage ou se déconnectent et se reconnectent.

  • Comment le jeu gère-t-il la mise à jour du tableau des scores?

    -Le tableau des scores est mis à jour dans la méthode FixedUpdateNetwork de la classe GameLogic, qui vérifie la position verticale des joueurs et les affiche en ordre dans l'interface utilisateur.

  • Quelles améliorations sont suggérées pour le mouvement de la caméra?

    -Pour améliorer le mouvement de la caméra, le script introduit un accumulateur de vecteurs qui lisse les entrées de la souris, rendant le mouvement plus fluide et réactif.

Outlines

plate

Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.

Перейти на платный тариф

Mindmap

plate

Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.

Перейти на платный тариф

Keywords

plate

Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.

Перейти на платный тариф

Highlights

plate

Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.

Перейти на платный тариф

Transcripts

plate

Этот раздел доступен только подписчикам платных тарифов. Пожалуйста, перейдите на платный тариф для доступа.

Перейти на платный тариф
Rate This

5.0 / 5 (0 votes)

Связанные теги
Jeu vidéoUnityPhoton FusionMultijoueurDéveloppementInterface utilisateurLeaderboardSystème RPCMécanique avancéeTuto en ligne
Вам нужно краткое изложение на английском?