Conception de jeux vidéo dans Unreal Engine : créer, personnaliser et jouer votre monde | Lucas Ridley | Skillshare
Recherche

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Conception de jeux vidéo dans Unreal Engine : créer, personnaliser et jouer votre monde

teacher avatar Lucas Ridley, Professional Animator

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Introduction

      1:33

    • 2.

      Pour commencer

      1:28

    • 3.

      Créer le démarrage du joueur

      4:53

    • 4.

      Connecter un personnage jouable personnalisé

      4:35

    • 5.

      Mettre en place une machine à état

      5:07

    • 6.

      Terminer votre machine à état

      13:44

    • 7.

      Relier la cinématique au gameplay

      10:35

    • 8.

      Créer un déclencheur de chronomètre de démarrage

      12:02

    • 9.

      Créer des obstacles avec la logique du jeu

      12:02

    • 10.

      Terminer les zones de danger

      3:53

    • 11.

      Organiser et partager votre jeu

      4:51

    • 12.

      Réflexions finales

      1:41

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

187

apprenants

--

projets

À propos de ce cours

Créez votre propre jeu vidéo personnalisé que vous pouvez partager et jouer avec des amis.

Lucas Ridley, l'un des professeurs d'animation les plus populaires de Skillshare, s'est lancé dans l'animation 3D lorsqu'il cherchait à travailler sur des projets de films avec des personnages réalistes, des décors captivants et des intrigues passionnantes sans avoir à rechercher un lieu, à obtenir des autorisations de tournage, à embaucher des acteurs et à louer du matériel coûteux. Aujourd'hui animateur 3D et réalisateur professionnel, Lucas a pu travailler sur des films tels que Avengers Infinity War et Aladdin de Disney ainsi que sur des jeux vidéo tels que The Last Of Us Part 2 et Suicide Squad : Kill the Justice League – et ce depuis son bureau. Après avoir bâti une carrière réussie, Lucas souhaite partager avec vous comment utiliser l'animation 3D pour créer vos propres films ou jeux vidéo. 

Dans ce cours, Lucas vous apprendra à utiliser Unreal Engine pour créer un jeu vidéo complet en utilisant la logique du jeu, un chronomètre et des obstacles que tout personnage du jeu peut tenter de surmonter. Destinée aux animateurs prêts à plonger dans la création de jeux vidéo, chaque leçon vous rapprochera d'un jeu vidéo achevé que vous pourrez partager et jouer avec vos amis dans une course d'obstacles chronométrée.

Avec Lucas comme guide, vous allez :

  • Créer un joueur à partir de zéro 
  • Associer un joueur Métahuman personnalisé à votre jeu
  • Mettre en place des machines à état pour votre personnage comme s'accroupir 
  • Ajouter une introduction cinématographique, une minuterie et des obstacles tels que la rotation d'objets et de zones de danger

 En outre, vous découvrirez les coulisses de la conception d'un petit jeu vidéo de course d'obstacles par Lucas en tant qu'animateur 3D à temps plein. 

Que vous ayez toujours rêvé de créer des jeux vidéo pour gagner votre vie ou que vous souhaitiez simplement mettre à l'épreuve vos compétences en matière d'animation 3D avec un projet interactif et partageable, vous quitterez ce cours avec un jeu vidéo personnalisé que vous pourrez partager dans votre portfolio, avec un employeur potentiel ou simplement avec vos amis 

Pour suivre ce cours, vous devez avoir une maîtrise intermédiaire de Unreal Engine afin de pouvoir naviguer facilement dans le logiciel. En plus du logiciel Unreal Engine, vous aurez également besoin d'un ordinateur et d'une souris trois boutons. Pour continuer à en apprendre davantage sur l'animation de jeux vidéo dans Unreal Engine, explorez le parcours d'apprentissage complet de Lucas.

Rencontrez votre enseignant·e

Teacher Profile Image

Lucas Ridley

Professional Animator

Enseignant·e
Level: Advanced

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Introduction: Ce que j'aime dans les jeux vidéo, c'est que vous pouvez créer des énigmes intéressantes que d'autres personnes explorer et résoudre. Bonjour. Je m'appelle Lucas Ridley Je suis un développeur de jeux et un animateur 3D travaillant dans l'industrie du jeu vidéo et du cinéma Vous avez peut-être vu certains de mes travaux si vous avez joué à des jeux vidéo tels que The Last of Us, Part II ou Suicide Squad : Kill the Justice League. C'est fou pour moi de pouvoir faire ça en tant que carrière. Je pense que c'est le rêve de la plupart des enfants de gagner leur vie en jouant aux jeux vidéo Dans ce cours, vous allez apprendre à créer un jeu vidéo complet. Nous allons commencer par une cinématique intégrée gameplay, dans laquelle nous pouvons créer une logique de jeu qui indique un chronomètre, crée des obstacles pour notre personnage, puis enfin, nous pouvons exporter le tout vous puissiez le partager avec vos amis Je suis ravi de vous parler de ce sujet, car la création de jeux vidéo est en fait assez accessible. Non seulement vous avez un logiciel libre comme Unreal Engine, mais vous pouvez le faire chez vous sur votre propre ordinateur Vous devriez suivre ce cours si vous avez une connaissance intermédiaire d'Unreal Engine Je ne vais pas mentir, nous allons plonger dans les profondeurs d' Unreal Engine, en créant une logique de jeu à partir de plans Pour suivre, vous n'aurez besoin que d'Unreal Engine, d'un ordinateur et d'une souris à trois boutons À la fin de ce cours, vous aurez un jeu vidéo terminé que vous pourrez partager avec vos amis et participer à une course d'obstacles avec eux. J'espère que vous sortirez de ce cours en améliorant réellement vos compétences et en éprouvant un sentiment d'accomplissement, car nous allons vraiment créer quelque chose d'impressionnant ensemble Tu veux jouer à un jeu ? Commençons. 2. Pour commencer: Bienvenue dans ce cours. Je suis tellement contente que tu sois là. Dans ce projet, nous allons créer un jeu vidéo chronométré jouable Ce sera une course à que vous pourrez partager avec vos amis, afin que vous puissiez les affronter dans ce parcours d' obstacles chronométré Nous allons donc créer un chronomètre grâce à logique du jeu qui peut apparaître à l'écran. Vous pouvez donc rivaliser avec vos amis et comparer les scores. Nous allons créer des obstacles pour rendre cela difficile. Donc, si vous les rencontrez, cela simulera la physique de Ragdoll sur votre joueur et recommencera le niveau, afin que vous puissiez recommencer à zéro À la fin de ce cours, nous allons l'exporter sous forme de jeu vidéo jouable complet Mon premier travail dans l'industrie du jeu vidéo était en fait sur un jeu vidéo en réalité augmentée, lequel nous prenions un livre contenant des marqueurs de suivi, qui était la véritable manette du jeu et où vous pouviez manipuler les joueurs sur ce livre. Mon travail sur ce projet était en fait de donner vie à ces personnages grâce à des animations sur les pages de ce livre de réalité augmentée. Je ne connaissais même pas Unreal Engine à l'époque. Donc, si tu finis ce cours, tu seras déjà en avance sur moi. Je vais vous donner de grandes compétences qui vous permettront de poursuivre votre carrière dans le design de jeux vidéo. Pour suivre ce cours, vous devez être à l'aise avec Unreal Engine, naviguer dans la fenêtre d'affichage et même savoir que les plans existent peut être utile, car nous allons approfondir nos connaissances et créer nos propres plans à partir approfondir nos connaissances et créer nos propres plans nos propres Alors, prenez votre ordinateur, votre souris à trois boutons et retrouvez-moi dans la leçon suivante, où nous allons créer un point de départ pour les joueurs afin d'avoir un endroit où commencer notre jeu vidéo 3. Créer le démarrage du joueur: Dans cette leçon, nous allons expliquer comment créer un Player Start à partir de zéro si vous avez créé votre propre niveau personnalisé, et nous allons également effectuer un petit débogage afin d' améliorer notre fréquence d'images De retour dans Unreal Engine, je vais commencer par un niveau que j'ai conçu Si vous n'avez pas suivi les autres cours et conçu votre propre niveau, vous pouvez utiliser le projet de modèle à la troisième personne et utiliser le niveau fourni avec ce modèle. Ce niveau possède déjà un statut de joueur, mais nous devrons en créer un si vous avez votre propre niveau personnalisé. Parce que si je clique sur « Jouer » maintenant, mon personnage jouable apparaîtra là où se trouve la caméra Je pourrais alors simplement être en dehors du jeu, mais je ne peux pas y entrer parce que cela dépend de l' appareil photo que j'ai utilisé. Je vais appuyer sur « Escape » pour sortir, et je veux placer le joueur à l'endroit où je veux que le jeu commence. Je vais le faire là où j'ai créé la cinématique d'introduction qui sera publiée plus tard, et je veux faire correspondre la position à celle de départ de mon joueur Je vais ajouter le joueur, commencer par cliquer sur le bouton plus ici et taper start. Vous pouvez voir que nous avons un Player Start, et comme il n'y a rien d'autre dans la scène, cela démarrera automatiquement le joueur là où nous le voulons. Je veux correspondre à la position de la cinématique. Je vais juste appuyer sur « W » et mettre ça de côté pour le moment. Je vais cliquer sur la cinématique et obtenir sa position en cliquant avec le bouton droit sur cette valeur et en choisissant « Copier ». Ensuite, je veux choisir le Player Start again et coller cette valeur en cliquant avec le bouton droit de la souris et en collant On peut voir un peu à travers le sol. Je vais juste le soulever d'un certain montant, puis j'appuierai sur le bouton « Fin » de mon clavier, E-N-D, pour le faire tomber au sol Ensuite, je veux juste le faire pivoter parce que nous allons voir la flèche bleue pointer vers le côté. Je voulais indiquer la direction du labyrinthe que j'ai créé dans mon niveau Maintenant, si je clique sur « Jouer », nous pouvons voir que les joueurs commenceront exactement là où nous nous attendons dans cette position. Maintenant, si vous pouvez constater une chose, c'est que la lecture est très lente. La fréquence d'images n'est pas excellente, et nous pouvons la tester en activant les images par seconde. Nous pouvons choisir cette icône à trois lignes de hamburger ici et descendre pour afficher le FPS, qui est l'abréviation de images par seconde Quand je clique dessus, vous pouvez voir en haut à droite que nous avons 18 images par seconde. Je peux également appuyer sur « Play again » que le nombre d'images par seconde persiste. Nous pouvons voir que c'est encore pire lorsque nous jouons. Dix, 11 images par seconde. Maintenant, l'une des raisons de cette situation dans ma scène est la très haute définition des arbres que la très haute nous avons dans notre environnement. Si vous suivez la classe d' environnement, vous savez où se trouve cet actif dans cette forêt générée de manière procédurale Je vais le remplacer par un actif à résolution inférieure afin que nous puissions travailler beaucoup plus rapidement. C'est ce qu'on appelle le débogage. Nous voulons déboguer notre jeu au fur et à mesure que nous jouons et résoudre les problèmes auxquels nous sommes confrontés au fur Parce que résoudre ce problème dès maintenant, nous accélérerons choses plus tard pendant que nous travaillerons sur la scène, ce qui se traduira par un gain de temps considérable. Je vais appuyer sur « Barre d'espace de contrôle », puis je vais accéder à l'emplacement cette ressource dans mon dossier généré de manière procédurale, et je vais ouvrir le graphique PCG où se trouve cette Encore une fois, si vous utilisez le niveau du modèle, vous ne l'aurez pas. C'est pour les personnes qui ont peut-être suivi le cours précédent. Je vais créer un maillage statique différent ici, je vais donc remplacer les arbres à haute résolution par des arbres à résolution inférieure Je vais faire défiler ce descripteur, et c'est là que se trouve le maillage statique de l'arbre. Je vais choisir un actif fourni avec les actifs PCG Je vais taper dans l'arbre, et je peux voir qu'il y a ces arbres d'espace réservé aux PCG, qui ont une résolution beaucoup plus basse, et c'est ce que je vais utiliser à place de la haute Nous pouvons voir qu'il a déjà été échangé et voir ce qu'il advient de nos images par seconde. Nous atteignons déjà une trentaine d'images par seconde. Maintenant, l'autre chose que je pourrais faire est réduire le nombre de points également, donc je pourrais choisir l'échantillonneur de surface et au lieu de 0,08 point par mètre carré, je pourrais choisir quelque chose de moitié moins, soit Nous pouvons voir que nous n'avons pas vraiment gagné autant, donc je vais le laisser à 0,08, mais c'est le genre de test que vous voulez faire pour vous assurer que le jeu que vous créez est performant Maintenant que j'appuie sur « Play », vous devriez obtenir une lecture beaucoup plus fluide, et nous avons gagné beaucoup d'images par seconde. Dans cette leçon, nous avons appris comment créer un joueur en partant de zéro au cas où vous auriez créé votre propre environnement personnalisé. Si ce n'est pas le cas, vous pouvez simplement utiliser le modèle de projet à la troisième personne et utiliser le Player Start qui existe déjà dans ce niveau. La seule chose à garder à l'esprit est que si vous voulez une cinématique commence au début de votre jeu vidéo, vous devez simplement vous assurer que Player Start correspond exactement à cette séquence de niveaux Retrouvez-moi dans la prochaine leçon, où nous allons connecter notre personnage jouable personnalisé 4. Connecter un personnage jouable personnalisé: Bon retour. Dans cette leçon, nous allons expliquer comment associer notre personnage MetaHuman personnalisé à notre personnage jouable à la troisième personne Revenons à notre projet et commençons. Maintenant, je veux échanger notre propre personnage MetaHuman personnalisé la troisième Nous en avons parlé dans un cours précédent, mais je vais y revenir ici afin que nous puissions rapidement nous familiariser notre propre personnage MetaHuman personnalisé en tant que personnage jouable J'ai déjà montré comment migrer des personnages d'autres projets dans lesquels nous les avons peut-être créés. Il vous suffit de cliquer avec le bouton droit de la souris sur un actif et de choisir Asset Actions, Migrer. Choisissez ensuite le projet vers lequel vous souhaitez le migrer si vous avez un MetaHuman issu d'un autre Nous l'avons déjà fait, et c'est pourquoi cela existe ici. ne me reste plus qu'à configurer ce personnage pour qu'il soit jouable Je dois accéder aux paramètres de la classe et choisir le plan à la troisième personne comme classe parent Le personnage à la troisième personne a déjà beaucoup de logique configurée, nous pouvons donc simplement l'utiliser dans toutes ses animations, uniquement avec notre propre personnage personnalisé Maintenant, je vais choisir celui-ci. Je vais aller dans le Viewport, voir ce qui se passe, et je peux voir que mon personnage et la troisième personne sont dans la même scène maintenant Maintenant, je peux déplacer cette racine, cliquer et la faire glisser sous le maillage, et maintenant je peux réinitialiser la racine pour qu'elle corresponde au personnage à la troisième personne Nous sommes tous orientés dans la même direction maintenant. Je vais rediriger ce personnage personnalisé sur l'animation destinée à la troisième personne Je peux le faire en activant le retarget en direct. Je peux choisir la variable live retarget et vérifier UseLiveRetargetMode Maintenant, je peux voir leur alignement, et j'ai juste besoin de rendre invisible le personnage à la troisième personne Je peux cliquer sur son maillage et rechercher visible. Je peux désactiver la visibilité et le rendu. Je dois toujours m'activer, cocher la posture et rafraîchir les os. Nous mettrons à jour le personnage en temps réel. Maintenant, je peux cliquer sur « Compiler » et enregistrer. Je veux ouvrir le plan à la troisième personne et copier-coller toute la logique du jeu et les entrées que nous n'avons pas ici Parce que si je regarde mon graphique d'événements, qui contrôle toute la logique du jeu, il n'y en a pas vraiment. Rien ne dit, hé, si j'appuie sur ce bouton, alors fais ce truc. C'est juste complètement vide ici. Nous avons des fonctionnalités de réalité augmentée et de reconnaissance faciale, mais aucune entrée réelle ne rend jouable Je veux ouvrir le plan à la troisième personne où il se trouve, et copier et coller ces informations ici Nous pouvons simplement leur voler tout ce dur labeur qu' ils ont déjà fait pour nous. Je vais « double-cliquer » sur ce plan, cliquer et faire glisser, sélectionner toutes ces informations, puis les copier et les coller en appuyant sur « Ctrl C », revenant à mon plan et en appuyant sur « Ctrl V » dans une zone vide Donc, Ctrl V. Maintenant, nous avons toutes ces informations indiquant qu' ils ont travaillé dur pour Maintenant, il suffit de dire quand cela commence à jouer, puis de lancer et de commencer à effectuer tout le mappage d'entrée que nous voulons faire. Je peux simplement supprimer ce CustomEvent et utiliser cet événement, BeginPlay, et l'intégrer notre casting sur notre personnage jouable Maintenant, je peux compiler et enregistrer ce plan, et maintenant je dois juste dire à mon jeu utiliser réellement ce personnage, car si j'appuie sur « Jouer » maintenant, il utilise toujours le personnage par défaut Pour changer cela, je dois accéder aux paramètres de mon projet sous Modifier, Paramètres du projet, Cartes et modes. Dans le mode de jeu sélectionné, je dois changer la classe de pion par défaut Je peux choisir le mode de jeu à la troisième personne, puis il me permettra de modifier le plan sous lequel nous allons faire apparaître le personnage Je vais faire BP_, et maintenant je peux trouver le plan de mon MHI_Lucas Maintenant, quand je le ferme et que j'appuie sur « Play », nous devrions voir notre propre personnage personnalisé, et il devrait être jouable en appuyant sur les touches W, A, S et D. En plus de la saisie du saut, vous pouvez appuyer sur « Barre d'espace ». Maintenant c'est ton tour. Choisissez votre propre personnage personnalisé et associez-le au personnage jouable à la troisième personne, ou utilisez simplement le personnage à la troisième personne et appuyez sur « Jouer » pour jouer. N'oubliez pas qu'il est toujours important de tirer parti de tout ce qui a déjà été fait pour nous C'est pourquoi nous allons chercher des éléments dans le contenu de démarrage, les copier-coller Il n'y a aucune honte à utiliser travail déjà fait pour vous. Retrouvez-moi lors de la prochaine leçon. Nous allons créer une nouvelle machine à états pour s'accroupir. 5. Mettre en place une machine à état: Bon retour. Dans cette leçon, nous allons aborder les plans d'animation et les machines d'état Les machines à états nous permettent de passer d'un état à l' autre de notre personnage, comme rester inactif, marcher, courir, et nous allons ajouter le fait de s'accroupir dans cette leçon Il est important de savoir que les machines d'État, bien qu'elles soient propres, vivent en fait dans le plan d'animation C'est donc là que nous allons travailler. Revenons-en maintenant à notre projet. Cette leçon vous expliquera comment créer une animation accroupie pour notre personnage Imaginons donc que nous ayons une sorte d'obstacle en dessous duquel nous devons nous accroupir pour pouvoir pousser l'un de ces blocs, mais nous ne pouvons pas encore nous accroupir Nous devons donc créer une entrée accroupi pour que notre personnage puisse s'accroupir, puis faire passer ce bloc pour franchir cette barrière dans le niveau Commençons donc dès maintenant. Pour commencer, nous devons ajouter une action de saisie afin savoir quelle touche permettra réellement de s'accroupir Je vais donc passer aux actions de saisie pour mon personnage à la troisième personne, car c'est vraiment ce qui contrôle notre personnage personnalisé c'est le plan parent à la troisième personne Nous voyons donc ici que nous avons un dossier appelé input. À l'intérieur d'ici, nous avons cette valeur principale par défaut, qui est le contexte de mappage d'entrée. C'est le groupe principal qui va contrôler les actions. Nous avons besoin d'une nouvelle action appelée Crouch. Vous pouvez voir que nous pouvons sauter, regarder, bouger, et que nous pouvons ajouter tout autre type d' actions que nous voulons commencer à activer. Dans cet exemple, nous allons activer une nouvelle action et une nouvelle entrée Crouch Je dois donc créer une action de saisie. Je vais donc passer à la saisie et à l' action de saisie en cliquant avec le bouton droit de la souris et en choisissant cette option. Je vais choisir I A pour l'action de saisie, et je vais l' appeler Crouch Maintenant, lorsque nous passons à ce type de ressource de données de base des actions d'entrée, nous pouvons avoir un nouveau mappage pour le Crouch ici Je peux donc appuyer sur le bouton plus , puis choisir Crouch dans le menu. Maintenant, dans cette option, c'est là que je peux ajouter les touches auxquelles je veux que cela soit ajouté. Je peux donc choisir parmi les options ici, ou je peux simplement cliquer sur ce bouton, puis appuyer sur le bouton du clavier lui-même sur mon clavier. Je vais donc choisir le contrôle gauche car nous utilisons une configuration W A S et D. Alors, appuyons sur Enregistrer. Et maintenant, nous l'avons activé pour recevoir cette entrée. Il ne nous reste plus qu'à connecter cette entrée à tous les événements et logique pour exécuter l'animation correcte et remplacer les composants du personnage par Crouch Nous devons donc trouver le modèle de notre personnage, qui est pour moi le méta-humain, ce Pour vous, c'est peut-être la troisième personne personnage si vous choisissez de l'utiliser. Maintenant, dans le graphique des événements, c'est ici que nous devons ajouter notre propre action de saisie. Vous pouvez voir que nous avons le look, le déplacement, saut, et nous devons ajouter l'action de saisie accroupi Mais avant cela, nous devons indiquer à la composante mouvement que nous pouvons réellement nous accroupir Il contient donc les variables et les éléments que nous recherchons lorsque nous sommes accroupis. Parce que s'accroupir est une chose normale. En fait, cela nous est déjà disponible dans le composant de mouvement des personnages, qui contient toutes ces sortes de valeurs jouables qui nous intéressent, comme la rapidité avec laquelle nous nous déplaçons, la gravité Donc, si nous commençons à taper et à chercher accroupi, vous pouvez voir que nous ne pouvons pas nous accroupir tant que nous n'avons pas coché cette case Cela mettra à notre disposition certaines fonctions intégrées, afin qu'il sache comment activer et désactiver l' accroupissement Vous pouvez également modifier la vitesse à laquelle vous vous déplacez lorsque vous êtes accroupi Et aussi la hauteur que vous allez atteindre lorsque vous êtes accroupi. Je vais donc vérifier ça. Et maintenant, dans mon graphique d'événements, qui indique toute la logique des entrées et ce qu'elles vont activer. Tout comme pour le saut ici, que nous sautions ou non, nous devons créer une action de saisie pour Crouch Je vais donc commencer à taper Crouch, et cela devrait exister car nous avons déjà créé cet événement d'action d'entrée Nous voulons donc l'événement et non la valeur, et nous pouvons choisir Commencé et Terminé tout comme notre événement pour l'action d'entrée pour le saut. Donc, pour commencer, nous avons en fait cette fonction intégrée appelée Crouch C'est pourquoi nous avons activé la position accroupie. Nous avons donc cette variable à notre disposition avant de commencer cette étape. Je vais donc cliquer et faire glisser le pointeur pour terminer taper à nouveau Crouch et choisir Un Crouch pour une fois que nous aurons Et c'est tout ce que nous avons vraiment besoin de faire. Si nous voulons commenter cela, tout comme les autres, nous pouvons appuyer sur C et taper crouch input Il ne nous reste plus qu' à compiler et enregistrer, et nous devrions voir que ces aspects des composants du mouvement affectent déjà notre personnage. Par exemple, la vitesse d'accroupissement sera affectée, même s'il n'y aura pas encore d'animation à jouer. Si je cours et que j'appuie sur Crouch ou sur le bouton de commande, nous allons simplement ralentir. Mais nous n'avons pas encore d'animation accroupie, et c'est ce que nous devrons ajuster Créons donc l'animation nous avons réellement besoin pour nous accroupir. Dans cette leçon, nous avons appris comment commencer à créer une nouvelle action de saisie pour notre personnage, afin de pouvoir nous accroupir Nous avons fini par constater que cela peut affecter notre vitesse, et il ne nous reste plus qu'à insérer les bonnes animations. Faisons-le ensemble dans la prochaine leçon. 6. Terminer votre machine à état: Bon retour. Dans cette leçon, nous allons continuer à créer notre machine à états Crouch Nous allons utiliser notre action de saisie que nous avons déjà effectuée et la relier à une animation pour marcher accroupi et accroupi au ralenti Ensuite, nous allons modifier la vitesse à laquelle nous nous déplaçons lorsque nous marchons accroupis afin qu'elle corresponde à la vitesse à laquelle nos pieds bougent Revenons au projet. Créons l'animation dont nous avons besoin pour réellement nous accroupir. Heureusement pour nous, si nous examinons lanceur Epic Games sur le marché et que nous recherchons les bases de MCO Mocap Nous avons en fait une ressource gratuite qui contient une animation Crouch pour nous suffit de rechercher l'actif, et vous pourrez l'ajouter à votre projet. Une fois ces ressources ajoutées à votre projet, nous pouvons les trouver dans le navigateur de contenu en accédant au contenu, et vous pouvez voir qu'un nouveau dossier appelé MCO Mocap Basics a été créé Ici, nous pouvons trouver une animation de Crouch. Je peux simplement le rechercher dans le navigateur de contenu ici. Vous pouvez voir que nous avons deux promenades différentes : Crouch et Idle Nous avons essentiellement une version sur place et une version ambulante. Nous voulons la version en place. Je vais sélectionner les animations in place Crouch et in place walk, et je veux cliquer avec le bouton droit de la souris et choisir des animations de retarget, car il s' agit d'un ancien squelette de mannequin, et nous voulons rediriger vers le nouveau Je vais taper Manny. Vous pouvez maintenant voir que nous avons le nouveau Mannequin Skeleton ici, et nous pouvons rechercher ces actifs simplement en tapant Crouch Si nous double-cliquons dessus, nous pouvons voir que nous avons celui qui sort de l'endroit. Mais nous voulons celui qui marche sur place. Choisissons ces deux et exportons ces animations. Dans ces bases de MCO Mocap, je vais créer un nouveau dossier appelé retarget, cliquer avec le bouton droit de la souris, choisir Nouveau dossier et le placer dans le dossier Maintenant, le plan du personnage est l'endroit où nous lui avons indiqué où se trouvait l'action de saisie C'est ce que nous avons fait dans le plan de notre personnage. Mais où ajoutons-nous réellement les animations ? C'est sur le plan d'animation et non sur ce plan. Nous devons trouver le plan d'animation. Si je double-clique sur la nôtre, vous pouvez voir que la classe d'animation ici est Anim Blueprint queen C, et je peux accéder à cette ressource, et je peux double-cliquer dessus, et il s'agit en fait d'un enfant de Manny En fait, nous voulons le plan d'animation de Manny et non la reine Si je clique sur cette classe Parent ici, je peux également la trouver dans le dossier, qui se trouve juste à côté de la reine, et je double-clique dessus. Vous pouvez voir que nous avons le graphique des événements pour le plan d'animation Ceci est différent du plan du personnage, auquel nous venons d'ajouter l'action de saisie C'est là que nous indiquons la variable d'accroupissement, si nous sommes accroupis ou non, afin qu'elle sache quelle animation exécuter Pour ce faire, nous devons le connecter au composant de mouvement, que nous avons déjà. Je vais en copier-coller une version ici, puis cliquer dessus et faire glisser le pointeur. Je vais taper c'est accroupi. Vous pouvez voir que nous avons déjà la variable pour cela, car nous activons la possibilité de s'accroupir Il possède déjà cette variable intégrée. Si je clique dessus avec le bouton droit de la souris, je peux le transformer en variable. Nous pouvons y accéder dans la machine à états pour définir cette règle pour savoir s'il faut jouer les animations accroupies ou non Maintenant, elle n'est liée à rien Nous devons donc ajouter une nouvelle épingle à cette séquence, qui met à jour les valeurs chaque image afin qu'elle puisse déterminer si un état a changé, comme tomber, s' accroupir ou bouger Nous devons ajouter cette nouvelle épingle ici afin de pouvoir la connecter à cette nouvelle variable que nous avons. Je peux double-cliquer n'importe où sur cette ligne pour créer un nœud de redirection, et si je maintenais la touche Ctrl enfoncée, je peux le déplacer. Nous pouvons rester un peu organisés ici. Je peux également les cliquer et les faire glisser et appuyer C pour les commenter et les déplacer vers le bas. Maintenant que les actions d'entrée sont enfin créées, nos animations sont prêtes et nous avons créé une capacité permettant de voir sous forme variable si nous sommes accroupis ou non Je peux le renommer en Crouching. Nous sommes maintenant prêts à relier les animations à la locomotion. Nous pouvons le trouver dans le graphique animé. heure actuelle, nous sommes dans le graphe des événements, que vous pouvez voir dans ce répertoire hiérarchique ici. Je peux passer à l'onglet du graphe Anim ici ou cliquer dessus à partir d'ici Dans le graphique animé, nous pouvons réellement voir les machines d'état, qui contrôlent les animations qui sont jouées Celui qui nous préoccupe le plus est la machine à états de locomotion Si je double-clique dessus, je peux entrer dedans, et je peux voir qu'il y a une idole et qu'il y a une course à pied. Ce sont principalement les deux choses que nous pouvons faire avec ce personnage. Vous pouvez voir en ce moment qu'il prévisualise l' animation de l'idole ici dans la fenêtre de gauche Nous voulons ajouter un autre état appelé Crouching. Je peux cliquer ici avec le bouton droit de la souris et ajouter un nouvel état. Je vais l'appeler «   accroupi » et « intérieur ». Je peux double-cliquer et entrer dedans et maintenant je peux ajouter mes animations ici. Nous avons deux animations, l'une pour ceux qui ne bougent pas et ceux qui sont accroupis les bras croisés, et l'autre pour les accroupissements pendant que nous marchons Je vais cliquer sur Faire glisser ces deux animations dans la machine à états, et je dois lui dire quand nous sommes inactifs et quand marchons-nous. C'est pourquoi nous avons ces variables qui nous indiquent si nous bougeons ou si nous ne bougeons pas. Cela était déjà configuré dans notre graphique des événements. Ici, vous pouvez voir qu'il y avait une configuration RD appelée Should move. Nous pouvons l'utiliser pour savoir si nous sommes accroupis ou si nous marchons accroupis ou si nous marchons. Nous devons mélanger les deux en fonction de cette variable. Je peux saisir cette variable en disant que get devrait se déplacer, et cela contrôlera à laquelle de ces animations nous jouons. Nous avons besoin d'un autre nœud pour le déterminer, et il s'agit d'un mélange booléen, ce qui signifie que ce qui signifie c'est activé ou désactivé Nous pouvons donc taper des poses de fusion par Bole, et maintenant nous avons une vraie pose et une fausse pose Il va être contrôlé par une valeur active. Le véritable état sera de marcher, donc nous pouvons le relier à la réalité. Nous pouvons connecter l'état inactif, l'animation inactive à false. Ce qui va contrôler cela, c'est cette variable ici. sera de savoir si nous devons bouger ou non valeur active sera de savoir si nous devons bouger ou non . Maintenant, nous l'intégrons dans le résultat. Revenons maintenant à notre locomotion. Nous devons simplement créer une règle indiquant quand cela se produit. Quand allons-nous nous accroupir ? C'est lorsque la variable que nous avons créée est activée, selon que nous saisissons ou non la bonne touche, que nous avons saisie comme contrôle lors de l'action de saisie précédente Tout cela est déjà configuré. Il suffit de définir la règle pour cette variable. Je peux cliquer et faire glisser le pointeur sur cette case pour la mettre en position accroupie. Je peux passer de l'allée à la position accroupie maintenant avec la règle que je vais établir Je peux passer de la position accroupie à l'inactivité avec une autre règle. passer de l'allée à l'accroupi, je souhaite double-cliquer ici Obtenez que cette variable est accroupie. Si nous sommes accroupis, nous voulons passer à l'animation accroupi. Maintenant, si nous ne sommes plus accroupis, nous pouvons simplement définir cette règle pour revenir au mode veille Nous voulons dire récupérer cette variable à nouveau, mais déclencher cette transition si ce n'est pas le cas. Nous pouvons saisir « not » et choisir l'option booléen in. Nous devons maintenant faire la même chose pour les transitions Walk-Run. Marcher, courir jusqu'à l'accroupissement devrait se produire lorsque nous sommes accroupis Nous devrions sortir de cet état accroupi revenir à la course à pied si nous ne sommes pas accroupis Maintenant que nous avons créé les règles relatives à l'accroupissement, nous avons créé les animations Quand les joueurs joueront, nous pouvons appuyer sur Compiler et enregistrer, et nous devrions être en mesure de voir notre personnage capable de s'accroupir Maintenant, jouons et essayons-le. Maintenant, pour appuyer sur Control, je peux m'accroupir, et vous pouvez voir que je bouge, mais l'accroupissement arrête de bouger parce que nous n'avons pas activé la boucle Nous pouvons revenir à notre plan d'animation, auquel nous pouvons accéder dans nos Mannequins, animations et Manny dans l' Nous devons nous assurer que la marche est réglée en boucle. Nous pouvons taper une boucle pour la trouver, et il suffit d' activer l'animation en boucle. Compilons et sauvegardons. Maintenant, vous pouvez voir qu'il tourne en boucle pendant que nous indiquons. Mais nous nous déplaçons beaucoup plus vite que nos pieds. Si vous vous en souvenez, nous pouvons ajuster la vitesse d' accroupissement pour qu'elle corresponde mieux à l'animation et à la vitesse à laquelle les pieds bougent réellement Passons maintenant à la composante de mouvement des personnages dans notre plan Je vais passer au plan des métahumains. Je vais passer à l'élément relatif aux mouvements des personnages dans lequel nous avons activé Crouching. Si je cherche Crouch, je peux voir que notre vitesse de marche maximale pour Crouch est Réduisons-le de moitié, compilons, enregistrons et testons cette vitesse. Nous allons maintenir Crouch enfoncé et avancer. Vous pouvez maintenant voir que nous nous rapprochons beaucoup plus de la vitesse à laquelle nos pieds se déplacent réellement dans l'animation. Elle est encore un peu en train de glisser, donc je vais y retourner et continuer à peaufiner cette valeur jusqu'à ce que j'aime la façon dont elle correspond à l'animation réelle à laquelle nous devons jouer Nous avons maintenant créé la capacité de réellement s' accroupir sous les obstacles que nous créons Maintenant, nous devons simplement nous assurer de les créer à une hauteur adaptée à notre personnage. Maintenant, si la vitesse est trop abrupte, nous pouvons l'ajuster dans les paramètres de fusion des transitions. Voyons comment procéder. Il suffit de cliquer dessus et nous pouvons voir que la durée d'un mélange est de 0,2 seconde. Nous pouvons augmenter ce chiffre à environ 0,5, et nous pouvons le faire dans les deux sens. Nous avons maintenant doublé le temps qu'il faut pour passer entre chaque état d' accroupissement après la marche et la course Maintenant, je veux appuyer sur Play. Nous pouvons courir puis nous accroupir. Il faut beaucoup plus de temps pour que cette transition se produise maintenant, et j'espère que ce n'est pas aussi choquant Un dernier réglage que nous pouvons ajuster est que la caméra éclate lorsque nous nous accroupissons, sort de la hauteur de la tête de notre personnage puis saute sur la tête de notre personnage accroupi Nous pouvons activer un décalage qui permettra de fusionner l' appareil photo de manière plus fluide. Ouvrons le plan des personnages et accédons de la caméra et à la fenêtre de l'onglet Composants Vous devez arrêter de jouer pour que nous puissions réellement accéder à ces fonctions, et nous pouvons faire défiler l'écran vers le bas pour activer le décalage entre les caméras. Si nous l'activons simplement, les paramètres par défaut fonctionnent plutôt bien. Nous pouvons ajuster ces paramètres si nous le voulons, mais nous pouvons appuyer sur compiler et enregistrer, puis nous pouvons recommencer à jouer et tester le nouveau décalage de la caméra. Maintenant, il se fond beaucoup plus facilement, et il y a aussi un peu de décalage lorsque nous faisons autre chose, mais il fonctionne plutôt bien pour résoudre le problème de la caméra Crouch Dans cette leçon, nous avons abordé de nombreux sujets complexes. Félicitations pour votre suivi. Vous avez appris à effectuer une action de saisie et à la mettre en œuvre. Nous avons reciblé l'animation, et nous avons maintenant un tout nouvel état dans lequel notre personnage doit se trouver accroupi N'hésitez pas à remplacer les animations que nous avons utilisées par d' autres animations que vous trouverez sur le marché ou ailleurs. Allez-y et modifiez vraiment ces valeurs. Vous savez, nous avons modifié l'animation du mélange pour qu'elle passe de 0,2 à 0,5, mais il y a peut-être une meilleure valeur Jouez avec ces valeurs et rendez-les aussi fluides que possible. Amuse-toi bien avec. l'ai rencontré lors de la leçon suivante, où nous allons relier la cinématique au début du jeu 7. Relier la cinématique au gameplay: Bon retour. L'avantage de cette leçon est que vous devriez avoir regardé un cours précédent de cette série où nous avons appris à animer notre personnage dans une séquence de niveaux Là où je commence ici, j' ai déjà créé cette séquence de niveaux. Si vous ne savez pas comment créer une séquence de niveaux, revenez à l'un de mes cours précédents cette série où nous avons appris à créer une séquence de niveaux. Ce cours est entièrement consacré à l'animation de personnages. Maintenant que c'est réglé, nous allons reprendre notre cinématique, et nous allons l'intégrer parfaitement au gameplay Lorsque nous commençons notre jeu vidéo, nous pouvons regarder une séquence cinématographique puis elle se fond parfaitement pour que le joueur puisse reprendre le contrôle du même personnage et commencer le niveau Replongeons-nous dans le vif du sujet. Imaginons que lorsque nous appuyons sur « Jouer » dans notre jeu, nous voulions d'abord voir une cinématique J'ai créé une séquence de niveaux, dont j'ai expliqué comment créer dans le cours précédent, et dans cette séquence de niveaux, je peux l'ouvrir pour voir l'animation. Je vais cliquer sur « Ouvrir la séquence de niveaux », et nous pouvons voir qu'il y a immédiatement quelques problèmes. La première est que mon personnage est à travers le sol, et quand je passe en revue la chronologie des niveaux, aucune animation ne joue réellement Nous pouvons résoudre ces problèmes un par un, puis associer cette cinématique pour qu'elle se joue exactement au moment où nous jouons notre jeu, puis l'intégrer parfaitement à l'animation du jeu Résolvons d'abord certains de ces problèmes. La première étant que je veux que le personnage que j'ai introduit corresponde à celui du joueur de départ. Je peux sélectionner le point de départ du joueur et copier ces attributs dans le panneau de détails de l'emplacement de transformation. Ensuite, je peux cliquer sur le personnage lui-même, puis coller en cliquant avec le bouton droit de la souris et en choisissant Coller. Il ne me reste plus qu'à trouver la bonne orientation. En cliquant sur le bouton Démarrer le joueur, je peux voir que c'est un 50 positif Il me suffit de sélectionner le joueur et de passer à 50. Ils correspondent maintenant à la même orientation et la même direction que le joueur va réellement commencer, ainsi qu'au caractère de la séquence de niveaux. Ils devraient correspondre lorsque nous intégrons et sortons de la cinématique au gameplay L'autre problème, c'est que je ne vois pas la lecture de l'animation, et c'est parce que nous avons activé la cible de livrée pour ce personnage Eh bien, le personnage que nous examinons ici est en fait la version de classe spawn de ce personnage Il s'agit d'une version créée de notre personnage jouable de notre plan Dans ce plan, nous avons activé le ciblage des livrées. Pour la séquence, nous voulons la désactiver, de cette façon, il ne s'agit pas de jouer le ciblage de la livrée, mais de laisser jouer l'animation de la séquence Dans notre cible de livrée, je peux cocher cette case pour utiliser Library Target pour la version du plan d'apparition de Je peux le décocher, puis nous devrions être en mesure de le nettoyer et de le voir Il sera mis à jour et diffusera l' animation dans laquelle nous incitons le joueur à commencer à jouer au jeu C'est le choix de performance que j'ai fait pour ma cinématique. La vôtre pourrait être différente. Comment faire en sorte que cette séquence de niveaux soit jouée et qu'elle s'intègre parfaitement à notre animation de jeu ? Nous voulons nous lancer dans un nouveau type de plan appelé plan de niveau Nous pouvons accéder à ce plan de niveau en cliquant sur cette icône en forme d'arbre ici et en la désactivant pour ouvrir le plan de niveau En général, il n'y a rien dans le graphique des événements, et c'est là que nous pouvons réellement utiliser le début jeu pour ce niveau pour jouer la séquence que nous avons. La première chose que je veux faire est sélectionner une séquence de niveaux. Le début de la séquence de niveaux est mon nom. Je peux le choisir dans le plan de la fenêtre d'affichage. Maintenant, lorsque je clique avec le bouton droit de la souris, je peux dire : créez une référence à la séquence de niveaux. Sans cette sélection, ce ne serait pas une option. Assurez-vous de sélectionner la séquence de niveaux avant de cliquer avec le bouton droit de la souris ici Maintenant que nous avons créé cette référence à notre séquence de niveaux, nous devons cliquer dessus pour trouver le nœud suivant dont nous avons besoin. Lorsque vous cliquez et faites glisser le pointeur sur un nœud, cela correspond au contexte de ce nœud Si j'essaie de trouver la même chose que celle que nous rechercherons ici dès le début de l'événement, je ne pourrais pas la trouver. Vous devez vous assurer que vous cliquez et faites glisser le pointeur hors des nœuds appropriés pour trouver ceux que nous recherchons Je veux trouver un lecteur de séquences de jeu, et quand je clique dessus, je reçois quelques notes ici, et nous pouvons les faire glisser vers l'extérieur. Nous avons maintenant une façon dont notre séquence va se jouer, mais elle ne sait pas comment posséder réellement le personnage avec lequel nous allons jouer, et cela fait partie de notre séquence. Nous avons besoin d'un moyen d' obtenir notre personnage, et nous pouvons cliquer avec le bouton droit de la souris et dire « obtenir le pion du joueur Cela signifie récupérer le pion du personnage avec lequel nous jouons C'est ça. Ensuite, nous voulons créer un tag pour un personnage afin qu'il sache quel personnage posséder. Nous pouvons contrôler très précisément et manuellement ce que contrôle cette séquence de niveaux. En cliquant et en faisant glisser à nouveau, nous devons faire glisser le pointeur vers l'extérieur, je peux rechercher une liaison définie par nœud de balise Il ne reste plus qu'à connecter certaines de ces choses et à créer cette balise ici. Je vais minimiser cette première seconde et créer notre tag. Si je clique avec le bouton droit sur le plan, je peux créer une balise ici Maintenant, la partie délicate de Metahuman, c'est qu'il y a en fait plusieurs composants qui composent ce plan Nous avons le corps, nous avons le visage, et plus précisément, ce que nous essayons de posséder et de filtrer par une étiquette, c'est en fait le corps. C'est là que se trouve l'animation. Nous voulons réellement ajouter le tag au corps. Je vais cliquer avec le bouton droit de la souris et ajouter le tag au corps. Je vais appuyer sur « Contrôle A » et « Contrôle C » pour tout sélectionner et copier afin de m' assurer de ne pas le taper correctement dans notre plan de niveau Je vais appuyer sur « Entrée » pour créer ce tag, et nous pouvons voir qu'il existe ici à côté de notre corps. Si je devais appuyer sur « Jouer maintenant », on pourrait voir que l' animation se joue, mais qu'elle fait apparaître un autre personnage Corrigeons ce problème en ajoutant également la balise au plan du personnage Je vais également ajouter la balise au plan lui-même, qui devrait résoudre ce problème Je vais rouvrir le plan de niveau, et je peux coller ici cette balise de liaison que nous venons Maintenant, il sait à quoi se lier en fonction de l'acteur que nous allons lui donner. L'acteur est le pion du joueur, je vais faire le lien entre les deux. Nous allons obtenir un petit tableau qui sera créé automatiquement. Il ne nous reste plus qu'à tout connecter de gauche à droite. Lorsque le jeu commence à jouer, nous allons définir cette balise, puis jouer la séquence en fonction de cette balise, et je vais appuyer sur « Compiler » et « Enregistrer ». Je vais également terminer séquenceur , car parfois, on ne sait pas exactement si on essaie de jouer la séquence dans le jeu ou dans la chronologie ici Je vais fermer ça pour des raisons de sécurité. Nous pouvons voir que cela a fonctionné, et notre animation revient instantanément. Maintenant, le problème est que nous devons l'intégrer un peu plus facilement à cette animation inactive. Je vais passer à la séquence de niveaux, et je vais créer un mélange. Je vais cliquer sur la séquence de niveaux, et je vais ouvrir la séquence de niveaux. Quand je regarde l'animation, il y a cet attribut très sournois que nous pouvons ajuster, à savoir le mélange Maintenant, si je garde ma souris basse ici, je change en fait la durée de l'animation elle-même. Mais ce que je veux faire, c'est prendre le coin supérieur où l'on peut voir ce petit triangle minuscule. Cela permettra de contrôler le mélange réel de l'animation. Au lieu d'éclater, nous aurons environ une seconde pour fondre dans l'animation inactive à la fin de notre cinématique Comme elles ne correspondent pas exactement à position des pieds de notre personnage, par exemple, nous aurons un bon mélange entre les incohérences entre l'imposition de notre séquence de niveaux et le début de notre animation de jeu au début de notre animation de jeu inactive Maintenant, quand je joue, je devrais pouvoir voir mon animation jouer, et nous devrions avoir un mélange plus fluide avec le mode inactif. Le seul problème, c'est que si je commence à essayer de saisir, cela nuit à l' animation ici. Si j'essaie de bouger pendant qu'il joue, c'est comme s'affronter. Je dois désactiver la saisie pendant un certain temps, je vais passer au plan de niveau et je vais désactiver la saisie Ensuite, je veux le retarder d'un certain temps en fonction de la durée de l'animation elle-même. Disons trois secondes. Ensuite, je veux pouvoir saisir à nouveau une fois que c'est terminé. La dernière pièce du puzzle consiste à lui indiquer quelle est la cible et quelle est la manette du joueur. Nous devons récupérer la manette du joueur, puis, de cette manette, je veux trouver le pion contrôlé La cible sera le pion contrôlé. Je peux double-cliquer dessus et appuyer dessus en maintenant la touche Ctrl enfoncée pour que tout soit un peu plus organisé, et la manette du joueur sera celle que nous avons saisie ici soit un peu plus organisé, et la manette du joueur pour que tout soit un peu plus organisé, et la manette du joueur sera celle que nous avons saisie J'appuie sur la touche Ctrl pour que je puisse la maintenir enfoncée et en obtenir une autre version ici. Double-cliquez, et maintenant cela devrait fonctionner pour désactiver la saisie pendant notre lecture cinématographique. Si j'appuie sur le clavier, je ne devrais pas être capable de bouger tant que le délai n' est Vous pouvez voir que j'ai légèrement changé pendant ce Je peux simplement augmenter le délai de notre chronomètre à environ quatre, compiler et enregistrer, ce qui devrait nous empêcher de déplacer notre personnage pendant la cinématique Je tiens la touche W enfoncée et rien ne se passe, puis elle commence à bouger une fois la cinématique terminée Dans cette leçon, nous avons appris comment créer un mélange parfait entre cinématique et le mode de jeu pour notre personnage Nous avons appris à créer un mélange homogène en modifiant certaines valeurs N'hésitez pas à vous l'approprier et à en faire un mélange parfait entre la cinématique de votre choix et l' animation inutile de notre personnage Si vous rencontrez des difficultés pour obtenir ce mélange parfait, assurez-vous simplement que le début de votre joueur et votre séquence de niveaux sont orientés de la même manière. Retrouvez-moi dans la prochaine leçon, où nous allons créer un chronomètre de démarrage. 8. Créer un déclencheur de chronomètre de démarrage: Bon retour. Dans cette leçon, nous allons créer un chronomètre de départ pour que notre joueur sache dans quelle mesure il a réussi le niveau que nous avons conçu pour lui. Revenons-y. Créons rapidement une ligne de départ ici. Pour créer la ligne de départ, je vais utiliser une boîte de déclenchement. Je vais taper dans la case de déclenchement en haut du bouton publicitaire ici. Je veux une boîte de déclenchement. Je ne veux pas de volume de déclenchement ou quoi que ce soit d'autre. Je veux une boîte de déclenchement. Je vais m'en servir, et je peux simplement l'étendre et m'assurer qu'il couvre toute la ligne de départ ici. Bien entendu, je pourrais également ajouter d'autres éléments qui indiquent au joueur qu'il s'agit bien de la ligne de départ Mais pour l'instant, je veux juste m' assurer que les éléments du jeu sont bien intégrés. Ensuite, nous pouvons toujours y retourner et ajouter des illustrations ou maillages statiques pour rendre les éléments fonctionnels du jeu plus clairs pour le joueur Je vais m'assurer que le déclencheur de la boîte couvre entièrement cette section et qu'il est suffisamment haut pour que vous ne puissiez pas sauter par-dessus en tant que joueur. Lorsque le joueur passe par ce volume, nous allons déclencher ce volume. Commençons par configurer cette logique afin d'avoir une variable en secondes, et de créer un petit chronomètre qui s'affichera dans la fenêtre. Mais nous devons créer une variable pour les secondes et la déclencher en fonction de notre passage par ce volume. Pour cela, je souhaite modifier le mode de jeu. Le mode de jeu est situé juste à côté du plan à la troisième personne, et il s'appelle le mode de jeu à la troisième personne Je peux double-cliquer dessus, et nous ouvrirons la fenêtre des paramètres. Ce que nous voulons, c'est l'éditeur de plan complet. Nous devons cliquer sur ce bouton ici pour accéder à l' éditeur de plans du mode jeu. Maintenant que nous l'avons, nous pouvons commencer à créer les variables dont nous aurons besoin. La première est une seconde. Nous avons besoin d'un moyen de mesurer le temps, et bien sûr, les secondes sont le moyen le plus courant et le plus simple de le faire. Il existe différents types de variables. C'est un truc lié à l'informatique et aux mathématiques. Si tous ces noms n'ont pas vraiment sens, ne vous inquiétez pas. Vous pouvez soit rechercher cela, soit simplement me suivre. Nous voulons juste choisir Float pour le moment. Nous pouvons maintenant créer un événement personnalisé qui va être déclenché Je peux donc ajouter un événement personnalisé en cliquant avec le bouton droit de la souris et en disant « Ajouter un événement personnalisé ». Je peux appeler cela Start Timer. Lorsque cet événement personnalisé est déclenché, je souhaite mettre les secondes à zéro car nous devons partir de zéro. Je vais cliquer et faire glisser la variable vers l'extérieur et choisir Set seconds. La valeur par défaut est déjà zéro, il suffit donc de la connecter. Maintenant, j'ai besoin d'une autre variable pour savoir si le chronomètre fonctionne ou non. De cette façon, je pourrai l'utiliser plus tard, que nous sachions si le chronomètre est activé ou éteint, et si nous voulons afficher un chronomètre de la ligne d'arrivée, par exemple. Je vais ajouter une autre variable appelée B timer running, et B est pour Boolean Nous voulons le remplacer par un type booléen, qui est une valeur vraie ou fausse Si vous les survolez, vous pouvez également voir quelles sont ces variables Pour celui-ci, j'ai juste besoin de savoir s'il fonctionne ou non ? Lorsque nous démarrons le chronomètre, il sera lancé. Je peux régler la variable d'exécution de la minuterie pour qu'elle soit activée, afin que je puisse les connecter, puis cocher cette case. Lorsque l' événement Start Timer se produit, il met la variable secondes à zéro, et la variable d'heure ou de fonctionnement est activée. Mais comment compte-t-on les secondes ? Nous avons besoin d'un moyen d'ajouter du temps à cette variable appelée secondes. Eh bien, nous pouvons utiliser ce que l' on appelle une coche d'événement. Si je clique avec le bouton droit de la souris et que je dis « event tick », un événement est déjà intégré au moteur Unreal Si je le survole, vous pouvez voir un événement appelé chaque image. C'est un moyen simple d' obtenir une valeur basée sur le temps dans Unreal Engine Je veux prendre la valeur de départ de zéro, et je veux ajouter, afin de pouvoir cliquer et faire glisser le pointeur, puis choisir Ajouter. Je veux ajouter les secondes Delta, c'est-à-dire le nombre variable de secondes. Les secondes delta sont déjà enregistrées dans ce nœud d'événement à cocher. Je peux cliquer dessus et le faire glisser, et maintenant nous ajoutons à cette variable. Mais maintenant, nous devons le définir après l'avoir ajouté. Je peux cliquer dessus, le faire glisser et choisir Définir les secondes. Vous pouvez voir que nous avons notre variable personnalisée ici, et maintenant nous pouvons définir le nombre de secondes sur le bouton Événement. Mais nous ne voulons pas faire ça tout le temps. Nous ne voulons le faire que lorsque le chronomètre est réellement en marche. Nous pouvons utiliser cette valeur pour dériver de cette technologie événementielle. Nous pouvons dire branche, et nous pouvons dire, si c'est vrai, si le chronomètre tourne, alors faites-le. Réglez ensuite le nombre de secondes en fonction du delta indiqué dans le tic-tac de l'événement. Si c'est faux, ne faites rien. Nous avons maintenant créé notre événement Start Timer personnalisé, qui va suivre le nombre de secondes, et il va également définir une variable indiquant que le chronomètre est en cours d'exécution. Ensuite, il va définir le nombre de secondes que nous pouvons appeler dans notre interface utilisateur, et utiliser réellement cette valeur, afin qu'elle se remplisse de manière dynamique et procédurale Créons maintenant l'élément d'interface utilisateur que le joueur peut voir. Je vais cliquer avec le bouton droit de la souris et choisir Interface utilisateur, Widget Blueprint Il n'y a qu'une seule option, alors choisissons-la. Cette fois, je vais appeler Widget. À l'intérieur, nous avons un canevas auquel nous pouvons ajouter du texte, pour afficher des éléments à l'écran pour notre joueur comme son état de santé ou, dans notre cas, ce chronomètre. La première chose que je dois faire est d'ajouter un Canvas. Maintenant, je peux voir quelle est la forme de la fenêtre à laquelle j' ajoute des éléments. Je peux cliquer dessus et le faire glisser, et maintenant nous pouvons voir quelle est la bordure de notre scène. Maintenant, je peux commencer et simplement commencer à faire glisser le texte. Dans ce bloc de texte, je veux appeler ce chronomètre, appuyer sur un espace et deux points. Nous avons maintenant notre chronomètre. Je vais le mettre en haut à gauche. Vous pouvez le placer au centre, où vous le souhaitez. Je vais ajouter un autre texte qui sera notre second. C'est la variable que nous venons de créer. Je vais lier ce texte à cette variable. Dans ce petit menu déroulant, je peux choisir Créer une reliure. Je vais lier la variable à ce texte. Nous obtenons maintenant cette fonction qui demande à quoi voulez-vous vous lier ? Nous devons passer au mode de jeu, car c'est là que réside cette variable , cette variable en secondes. Je peux cliquer dessus, le faire glisser vers l'extérieur, et dire « passer en mode jeu à la troisième personne ». Nous essayons simplement d'obtenir ce plan du mode de jeu à la troisième personne, et une fois que nous l'avons, nous pouvons simplement le dire, oui, obtenir le mode de jeu, et maintenant nous pouvons accéder à la variable en cliquant et en faisant glisser d'ici, et en choisissant get seconds Vous pouvez maintenant voir que nous avons notre variable ici, et nous pouvons cliquer dessus et la faire glisser dans le texte. Il va convertir la valeur flottante en chaîne, afin qu'elle puisse être utilisée comme texte. Je vais compiler et enregistrer. Je vais revenir ici, compiler et enregistrer, et m'assurer que tout est prêt. Je dois montrer le chronomètre que nous avons créé. Je dois le montrer sur l'écran réel. Je peux cliquer sur le bouton Designer ici, revenir en arrière et apporter les modifications nécessaires, mais nous avons besoin d'un moyen de le montrer à l'écran. Nous pouvons le faire dans le plan du personnage. Je vais double-cliquer sur le plan du personnage. Lorsque le jeu commence sur Event Begin Play, tout cela se produit. Je veux juste y ajouter quelque chose. Je veux dire quand cela commence, créez également le widget et affichez-le. Je peux cliquer dessus et le faire glisser et choisir Widget, Créer un widget. Je peux sélectionner le widget dans cette classe, et nous pouvons essayer de trouver notre widget de minuterie ici . Maintenant, nous l'avons créé. Maintenant, je veux l'afficher dans la fenêtre d'affichage. Je peux cliquer et faire glisser ceci vers l'extérieur, et dire « ajouter à la fenêtre d'affichage Maintenant, j'ai besoin de savoir quoi ajouter à la fenêtre d'affichage, et nous pouvons simplement renvoyer cette valeur ici Je peux compiler et enregistrer. La dernière étape consiste à connecter la boîte de déclenchement à notre événement personnalisé que nous avons créé dans le mode jeu. Nous avons besoin d'un moyen de déclencher tout cela, afin que je puisse accéder au plan des niveaux et créer un événement personnalisé en fonction de la boîte de déclenchement que nous avons créée C'est plus simple si je sélectionne d'abord cette zone de déclenchement, puis que je clique avec le bouton droit de la souris, j'obtiens un événement d'ajout pour la zone de déclenchement 0. Il sait quelle case de déclenchement j'ai sélectionnée et je souhaite ajouter un événement de collision. Ajouter Actor begin overlap est ce que nous voulons, et lorsque nous commencerons à superposer cette zone de déclenchement, faites quelque chose, et nous lui dirons quoi faire. Si vous vous souvenez, notre événement personnalisé se déroule dans notre mode de jeu à la troisième personne. Nous devons appeler ce mode de jeu à la troisième personne pour accéder à cet événement personnalisé. Je vais cliquer et faire glisser, disons, mode de jeu à la troisième personne, et nous allons juste passer au mode de jeu. Ensuite, tout ce que je veux faire est d' appeler cet événement personnalisé, afin que je puisse commencer à taper le chronomètre de démarrage de l'événement personnalisé. Nous pouvons simplement cliquer dessus et le faire glisser comme cible, compiler et l'enregistrer. Maintenant, nous avons branché tout ce dont nous avons besoin pour nous connecter. Nous avons créé un événement personnalisé qui permettra de suivre l'heure. Nous avons créé un élément d'interface utilisateur et connecté cette variable personnalisée de secondes à cette zone de texte. Ensuite, nous avons créé un widget Alt to viewport au début du jeu Nous avons connecté tout cela à une boîte de déclenchement, activera notre événement personnalisé que nous avons créé dans le mode de jeu à la troisième personne. Cela ne fonctionne pas car nous avons en fait tout ajouté au plan à la troisième personne, pas à notre plan métahumain Copions et collons ce que nous avons fait dans notre plan métahumain Si vous utilisez un métahumain personnalisé, vous devez effectuer cette étape dans votre plan de métahumain personnalisé Je vais passer à mes métahumains, et je vais ouvrir ce plan Je vais juste le copier-coller sur Begin play, qui se trouve ici. Je peux voir que Begin play se déroule ici, et je veux juste copier-coller tout cela ici. Maintenant, je vais compiler et enregistrer, et cela devrait fonctionner pour notre personnage personnalisé. Maintenant, vous pouvez voir que nous avons déjà le chronomètre en haut à gauche. Nous savons que cela fonctionne. Il montre l'écran. Si je cours ici, ça ne fait rien, mais dès que je franchis notre seuil de déclenchement invisible, il devrait commencer à afficher l'heure. Vous pouvez voir que nous suivons l'heure actuellement dans notre jeu. Excellent travail pour terminer cette leçon. Nous avons couvert beaucoup de choses. Nous travaillions sur deux plans différents, et nous avons lentement connecté chacun de ces composants Nous avons créé un événement personnalisé, nous avons créé une variable personnalisée. Nous avons ajouté cette variable afin de pouvoir suivre l'heure. Ensuite, nous avons créé notre propre interface utilisateur afin que le joueur puisse réellement voir tout cela se produire, puis nous avons utilisé la boîte de déclenchement pour que tout ce qui se passe soit visible pour le joueur. Il y a beaucoup d' informations ici. Prenez simplement votre temps et référez-vous à cette leçon si vous en avez besoin. Retrouvez-moi dans la prochaine leçon où nous allons créer un obstacle que notre personnage devra surmonter. 9. Créer des obstacles avec la logique du jeu: Bon retour. Dans cette leçon, nous allons créer un obstacle notre personnage jouable devra surmonter Cet obstacle sera une boîte rotative, sorte que si le personnage la rencontre réellement, cela stimulera la physique de Rag Dall sur notre personnage, puis redémarrera au niveau C'est vraiment un obstacle ou un défi dangereux pour notre joueur afin de rendre notre niveau plus intéressant. En ouvrant la sauvegarde de notre projet, allons-y. Créons d'abord l'obstacle. Je vais créer un nouvel obstacle dans ma zone de Blueprint métahumain Si je faisais un tas d'obstacles, je pourrais m'organiser pour me créer un dossier. Mais pour l'instant, je vais juste créer un nouveau cours de blueprint Je vais cliquer avec le bouton droit sur le navigateur de contenu, vérifier la classe Blueprint, sélectionner l'acteur, et je vais appeler cela BP Underscore Je vais double-cliquer sur ce plan vide. À l'intérieur, nous avons cette toile vierge où nous pouvons créer notre obstacle. Je vais ajouter un maillage statique en cliquant sur Ajouter et en tapant Maillage statique. Je vais choisir le maillage statique, et je vais trouver un obstacle pour notre type de maillage, et je veux l'ajouter à notre plan Dans le contenu de démarrage de la réalité virtuelle, il existe un maillage de base appelé SM cube 03. Comme il a des contours rouges, je pense qu'il fonctionnera bien pour notre objet en rotation ici. Je vais utiliser ce maillage statique. Je souhaite maintenant ajouter un composant de mouvement rotatif. Lorsque j'appuie sur simuler, nous pouvons voir qu' il tourne effectivement, mais qu'il tourne dans le mauvais sens et qu'il tourne très vite. Je peux simplement choisir un autre axe sur lequel le faire pivoter. Je vais choisir un maillage statique et appuyer sur E, je peux voir que ce sera soit Y soit X et que je veux le faire pivoter sur l'un de ces deux axes. Je vais passer au composant du mouvement rotatif. Au lieu de z, je veux le mettre à zéro. Je ne veux pas qu'il tourne en Z, et je veux qu'il tourne en X ou en Y. Je veux le faire pivoter plus lentement Je vais choisir une valeur inférieure à 180. Je veux choisir 90, et maintenant, lorsque j'appuie sur simuler, je peux voir qu'il tourne en fait dans une autre direction, ce qui est plus souhaitable pour cet objet. Je vais désactiver la simulation. Je souhaite maintenant créer un volume de déclenchement correspondant à la taille de cet obstacle. Je vais ajouter une collision de boîtes. Avec cette collision de boîtes, je vais l'agrandir pour qu'elle corresponde à cette taille de boîte. Je vais appuyer sur R sur mon clavier pour afficher le raccourci du manipulateur d'échelle Maintenant, je veux le rendre légèrement plus grand que les dimensions du maillage statique afin de m' assurer que le joueur puisse réellement entrer en collision avec cette boîte Je vais compiler et enregistrer, et je vais cliquer et faire glisser ce plan directement dans notre scène Je vais le faire pivoter vers le haut, et je vais appuyer sur Play. Maintenant, je peux voir que j'ai un objet en rotation dans ma scène, et si je le croise , rien ne se passe. Je peux juste entrer en collision, et je ne suis en aucun cas blessé Ce que je veux vraiment faire, c'est déclencher un événement de poupée de chiffon. En gros, mon personnage boite et meurt et fait des poupées de chiffon quand il tombe dans cette boîte Nous devons créer cette logique de jeu et la relier à cet obstacle. De plus, si je veux le déplacer sur le côté, je peux également le faire pivoter vers le bas en appuyant sur E sur mon clavier et en le faisant pivoter de 90 degrés. Je peux également agrandir cet objet. Si je veux que cette balance l' allonge, je peux le faire en appuyant sur R sur mon clavier et l'échelle, et également sur W pour la rapprocher du sol. De cette façon, cela bloque le chemin. Créons la logique du jeu pour un personnage de Rag Dall en entrant dans son plan Si vous utilisez un personnage de plan à la troisième personne, vous allez entrer dans ce plan et faire tout ce que nous allons faire Mais j'utilise un métahumain personnalisé, je vais donc me lancer ici et créer cet événement personnalisé Nous voulons que notre personnage soit Rag Dall, alors je vais appeler mon événement personnalisé Rag Je vais cliquer avec le bouton droit sur le graphique des événements Blueprint et commencer à taper un événement personnalisé Je vais ajouter un événement personnalisé et l'appeler événement Rag Dall Pour cet événement personnalisé, je souhaite simuler la physique de ce personnage. Je vais cliquer et faire glisser et commencer à taper simuler. Je veux régler la physique de simulation sur le maillage. Je vais configurer la physique de simulation sur le maillage. Nous pouvons voir qu'il est déjà cartographié. Si je n'ai pas choisi le bon, ou si je souhaite le modifier ultérieurement, je peux toujours cliquer et faire glisser le composant vers l'intérieur, puis le mapper à la cible. Je vais activer la simulation car c'est pour cela que nous créons ce nœud pour le simuler. Ensuite, je veux recommencer le niveau. Je vais d'abord créer un délai car je veux voir la simulation se dérouler pendant quelques secondes. Je vais retarder cela pour que nous puissions réellement voir l'effet se produire d'environ 2 secondes. Ensuite, je veux charger à nouveau le niveau. Je souhaite obtenir le nom de mon niveau actuel. Je vais taper get current level name, puis je veux charger ce niveau par son nom. Je vais dire Open Level par nom. Ensuite, je peux simplement indiquer la valeur de retour ici. Cela créera un petit nœud de conversion de connecteurs pour nous. Nous avons maintenant un événement personnalisé qui déclenche la physique de notre maillage et retarde le prochain événement de quelques secondes, puis il charge à nouveau le même niveau que celui dans lequel nous nous trouvons. En gros, nous recommençons une fois que nous sommes entrés en collision avec la boîte. Mais nous devons établir cette relation. Tout ce que nous avons fait, c'est créer l'événement personnalisé, mais rien ne le déclenche pour le moment. Maintenant, une dernière chose que nous voulons faire dans le cadre du maillage est de descendre dans la section de collision, et dans la section de collision, nous voulons nous assurer de choisir Physics actor. Par défaut, il s'agit d'un maillage de caractères, et nous voulons le remplacer par Physics actor. Maintenant que c'est fait, nous pouvons compiler et enregistrer. Nous pouvons maintenant relier cet événement personnalisé à l'obstacle lui-même. Je vais ouvrir le plan de l'obstacle en appuyant sur la barre d'espace de contrôle , puis en ouvrant le plan Dans ce plan directeur, je tiens à dire que les acteurs de l' événement commencent à se chevaucher Mais je veux le faire spécifiquement pour la boîte. Je vais cliquer avec le bouton droit de la souris et dire lors d'un événement sur un composant, commencez le chevauchement. Je voudrais récupérer l' événement personnalisé que nous venons créer et qui est inspiré de mon métahumain, ou de votre personnage à la troisième personne, si vous l'utilisez Nous voulons y participer afin de pouvoir créer cet événement personnalisé. Je vais juste citer notre acteur, et je vais appeler cet événement personnalisé. Je me souviens que je l'ai appelé Rag Dall, alors je vais taper Rag Dall, et voici cet événement personnalisé La cible ici est elle-même, ce vers quoi nous visons. Maintenant, je peux compiler et enregistrer, et nous pouvons tester cela. J'ai juste besoin de heurter cette barrière, elle devrait déclencher le chiffon Dall, et vous pouvez le voir Cela a fonctionné. Cela a créé un effet Dall chiffon, simulé la physique et relancé le niveau Maintenant, je reviens au début. Mais il y a eu quelques choses étranges. La capsule contenant le personnage était toujours en collision avec cet obstacle après le lancement du Rag Dall, et elle déplace mon appareil Les choses y deviennent un peu trop chaotiques. Ce que nous pouvons faire, c'est revenir au plan de cet événement de Bag Dall, et nous pourrons ajouter quelques éléments supplémentaires Après avoir commencé à simuler la physique, détruisons le composant de la capsule pour qu' il n'entre plus en collision avec l'obstacle Je vais cliquer et faire glisser le pointeur d'ici, commencer à taper destroy component et choisir le composant capsule. Si nous regardons dans la fenêtre d'affichage, le composant de la capsule est cette cage métallique, et c' est elle qui entre en collision avec l'obstacle alors que nous avons déjà Rag Nous voulons le désactiver une fois que nous l'avons activé pour simuler le Rag Dall sur le maillage du personnage Nous voulons désactiver le composant de la capsule afin qu'il n'entre plus en collision avec l'obstacle une fois que nous sommes morts Nous avons détruit ce composant après avoir simulé la physique, nous avons retardé l' étape suivante de 2 secondes, afin que nous puissions réellement voir la physique se dérouler, puis je veux créer une transition un peu meilleure vers le niveau de mort vers le niveau d'ouverture Créons un fondu de l'appareil photo. Mais pour ce faire, nous ne pouvons pas simplement cliquer et glisser pour sortir d'ici. Nous devons d'abord télécharger le gestionnaire de caméras et cliquer dessus et faire glisser le pointeur. Nous devons d'abord obtenir le gestionnaire de caméra. Maintenant, je peux cliquer et faire glisser le curseur dessus et dire « démarrer le fondu de la caméra ». Cela n'est disponible que si nous cliquons et faisons glisser le curseur hors du gestionnaire de caméras du joueur La caméra va commencer à s' estomper après le retard et juste avant que notre niveau ne se charge à nouveau. Je vais intégrer cela au processus. Disons que nous disparaissons d'une couleur rouge parce que nous sommes morts. Nous le rendons un peu rouge foncé juste pour savoir qu'il s'estompe parce que nous sommes morts Je veux que la durée soit supérieure à 2 secondes. Vous pouvez jouer avec cette valeur et l'augmenter , environ 5 secondes. Je veux estomper 0 -1. Je veux activer complètement l'effet, qui en est un. Je vais en taper un ici. Maintenant, pour que cela se produise, pour que cette disparition se produise, nous avons besoin d'un autre délai. Je vais copier-coller ce délai, et je vais le mettre ici pour que nous puissions réellement voir le fondu se produire. Vous devez faire en sorte que ce délai soit aussi long que la transition et le fondu de l'appareil photo devraient se produire. Nous avons maintenant un événement personnalisé. Il sera appelé lorsque nous entrerons en collision avec la boîte. Cela va stimuler la physique, détruire la capsule, afin que nous n'entrions plus en collision avec l'obstacle lui-même une fois que nous sommes déjà morts, et nous allons pouvoir regarder ça pendant quelques secondes, puis nous allons commencer à installer la caméra et à recharger le niveau dans lequel nous nous trouvons Je vais compiler, enregistrer et tester ces modifications. Cela a fonctionné, nous n'entrons plus en collision avec l'obstacle fois la simulation déclenchée et le niveau rechargé Maintenant que nous avons créé cet obstacle pour notre joueur, nous pouvons prendre ce plan qui souligne danger, ou quel que soit le nom que vous lui donnez, votre propre plan, et nous pouvons simplement cliquer dessus et le faire glisser dans notre scène autant de fois que nous le souhaitons dans notre scène autant de fois Nous n'avons pas à créer cet obstacle encore et encore dans les Blueprints Nous l'avons créé une fois, et nous pouvons l'utiliser et encore partout où nous le voulons dans notre niveau. Une étape dont vous devez vous assurer est de faire en sorte la collision entre les boîtes soit plus importante que l'obstacle lui-même. Sinon, le joueur ne pourra jamais réellement entrer en collision avec celui-ci car il se trouve à l'intérieur de l'obstacle Nous voulons que la collision entre la boîte soit plus grande que l'obstacle afin de pouvoir réellement déclencher tous ces événements. Jouez avec, créez obstacles de différentes formes et tailles, choisissez différents maillages statiques et placez-les autour de votre niveau Dans la prochaine leçon, je vais vous montrer une autre façon d'utiliser ce plan 10. Terminer les zones de danger: Bon retour. Dans cette leçon, nous allons prendre ce plan d' obstacles et y ajouter une explosion Nous allons également ajouter un son, puis le réutiliser, afin de pouvoir l'utiliser à d'autres endroits de notre niveau. Commençons. Je vais donc faire de la place pour cet événement Ragdoll, et je vais cliquer, faire glisser et commencer à taper dans spawn Je vais dire spawn emitter to attached. La pièce jointe sera le composant réel de la capsule. Nous allons donc l'attacher au composant de la capsule. Mais nous devons le faire avant qu'il ne soit détruit. Je vais donc simplement faire avancer ce niveau. Je peux donc dire attacher à ce composant. Ce que nous voulons provoquer, c'est une explosion boursière qui s'accompagne en fait d'un moteur irréel Nous allons donc émettre une explosion à l'emplacement des composants de la capsule. Je veux aussi émettre un son avec l'explosion. Je vais le déplacer vers le bas, puis je vais sortir et dire, jouez du son en 2D. Je peux prévisualiser ces sons en appuyant sur le bouton de lecture. Trouvons donc une explosion. Tous ces sons sont accompagnés d'un moteur irréel. Je vais donc choisir celui de l'explosion, puis je vais le compiler et le sauvegarder. Maintenant, lorsque nous tombons sur cet objet, nous devrions voir une explosion et entendre un son. Maintenant, si nous voulions avoir le même effet pour notre obstacle coupe-feu ou pour tout autre obstacle, nous n'avons pas besoin du maillage statique. Nous pouvons créer un nouveau plan d' obstacles. Je vais donc cliquer avec le bouton droit de la souris et le dupliquer, et je vais appeler cela un déclencheur de danger. Parce que ce que nous pouvons réellement faire, c'est simplement supprimer le maillage statique, et nous pouvons simplement avoir ce composant déclencheur. Nous pouvons désactiver la rotation car nous n'en avons pas besoin pour effectuer une rotation. Je peux simplement réinitialiser l'échelle, afin que lorsque nous introduisons cette composante de danger, nous puissions la redimensionner selon nos besoins Je vais cliquer et le faire glisser dans le foyer, et je vais le redimensionner de manière à ce qu'il couvre l'ensemble du foyer. Mais je veux le garder suffisamment bas pour qu'il ne monte pas plus haut que la boîte elle-même. Je vais juste le déplacer un peu vers le bas. Je vais maintenant tester ce volume de déclenchement. C'est ainsi que vous créez des obstacles et que vous réapparaissez au début de votre partie Dans cette leçon, nous avons créé une explosion pour notre obstacle, ainsi que pour le son, et nous avons réutilisé ce plan d' obstacles différentes manières afin pouvoir le parfaire tout au long de notre est-à-dire la leçon suivante, où nous allons prendre tout ce jeu vidéo et l'emballer pour partager avec nos amis. 11. Organiser et partager votre jeu: Bon retour. Dans cette leçon, nous allons apprendre comment emballer le jeu vidéo que vous avez créé et le partager avec vos amis. De cette façon, vous pouvez savoir qui est le joueur le plus rapide de votre jeu vidéo. Commençons. Tout d'abord, nous voulons nous assurer que le jeu charge le bon niveau pour le joueur lorsqu'il l'ouvre. Nous devons définir cela dans les paramètres du projet. Passons à la modification des paramètres du projet, et dans les cartes et les modes, nous pouvons sélectionner la carte par défaut du jeu. Actuellement, il est configuré sur la carte du monde ouverte par défaut, qui n'est pas le niveau que nous avons créé. Le niveau que j'ai créé s'appelle New Landscape 01. Le niveau que vous choisirez sera le nom que vous aurez choisi. Il me suffit de faire défiler ce menu et de cliquer sur le niveau que j'ai créé. Maintenant, lorsque nous préparerons notre jeu, il chargera la bonne carte lorsque nous commencerons à jouer. Je vais juste terminer et pour commencer à emballer notre jeu pour que nos amis puissent y jouer, nous pouvons aller sur les plateformes et choisir la plateforme sur laquelle nous voulons le publier. Je vais choisir Windows et projet de package. Mais nous avons une erreur ici. C'est parce que le STK pour Windows n'est pas installé, je vais donc cliquer sur Annuler. Si je reviens aux plateformes, aux fenêtres, et que je regarde tout en bas, je peux voir quelles versions sont autorisées. Il me suffit donc de Google Windows, STK, de télécharger le programme d'installation et d' installer le STK pour prendra un peu de temps puis une fois l' installation terminée, vous pourrez revenir à la réalité et accéder aux plateformes. Cliquez ensuite sur Actualiser le statut de la plateforme , sauf si vous avez déjà fermé et rouvert Unreal Il devrait maintenant être mis à jour et pouvoir utiliser le package STK que nous avons installé Nous allons maintenant passer aux plateformes, fenêtres et au projet de package. Maintenant, nous n'avons pas d'erreur, et il nous demande simplement où nous voulons enregistrer ce projet de package. Nous avons été accueillis par une erreur d'échec, et je peux ouvrir le journal de sortie et voir pourquoi il a échoué. Il semble qu'il nous manque encore un composant , à savoir le Visual Studio 2022. Je vais le trouver en ligne, l'installer et réessayer. Si votre programme d'installation est bloqué à zéro, vous pouvez annuler et vous assurer que vous l'exécutez en tant qu' administrateur en cliquant avec le bouton droit de la souris et en sélectionnant Exécuter en tant qu'administrateur. Assurez-vous d'inclure également les éléments C++ dans l'installation , alors cochez cette case. Nous pouvons maintenant revenir aux plateformes, fenêtres et réessayer le projet de package. Si nous recevons cet avertissement, nous voulons nous assurer que nous autorisons l'accès. Cette étape va prendre un peu de temps, alors laissez-la s'exécuter. packaging de notre jeu est terminé Nous avons donc un dossier Windows ici, et à l'intérieur de ce dossier, nous pouvons voir l'icône du moteur irréel jouer à notre jeu, il me suffit de cliquer sur cette icône de moteur irréel qui est une application exécutable Nous avons maintenant notre jeu et il est prêt à être lancé. Maintenant, si nous voulons quitter notre jeu, suffit d'appuyer sur la touche Tilda, qui se trouve en haut à gauche de la plupart des claviers, juste sous la touche d'échappement, et nous pouvons taper Quit et appuyer sur « Enter » Si vous souhaitez partager ce jeu avec vos amis, vous pouvez tout cliquer et faire glisser le tout, et dans Windows, vous pouvez cliquer dessus avec le bouton droit de la souris et choisir le dossier zip compressé S two. Cela créera un fichier que vous pourrez partager avec vos amis et qu'ils pourront compresser, tout en gardant à l'esprit qu'il peut s'agir d'un fichier assez volumineux. Je pense que le mien est d'environ 4 gigaoctets. Vous souhaiterez utiliser un service de transfert de fichiers tel que wetransfer.com ou Google Drive pour le partager avec vos amis Dans cette leçon, nous avons expliqué comment emballer le jeu que nous avons créé afin de le partager avec nos amis. Il y a deux choses que nous avons dû installer pour Windows. Nous avions le Windows STK ainsi que le Visual Studio. Certains de ces éléments sont peut-être déjà installés si vous êtes un grand programmeur informatique, mais je ne le suis pas. J'ai donc dû les installer. Cela prend un peu de temps, mien est resté accroché à 0 % pendant longtemps, alors essayez simplement d'être patient avec ces installations. N'oubliez pas que la taille du fichier peut être assez importante pour ceux-ci. Vous voudrez trouver un service de transfert de fichiers qui autorise les fichiers de grande taille. J'aime utiliser transfer.com ou Google Drive et voilà Vous avez votre jeu, vous pouvez le télécharger et le partager. 12. Réflexions finales: Félicitations pour avoir terminé ce cours. Si vous avez suivi tous les cours de la série et encore plus de félicitations car c'est beaucoup de matière. Maintenant que tu as terminé ce cours, tu as un ensemble de compétences incroyable. Nous avons appris comment ajouter un état à une machine à états. Nous avons appris à créer des obstacles pour nos personnages et à chronométrer leurs mouvements dans un niveau afin de créer un jeu vidéo compétitif et même de le partager avec nos amis. J'adorerais voir ce que tu as fait. Prenez une capture d'écran de votre jeu et partagez-la dans la galerie de projets. Si vous souhaitez aller encore plus loin, allez jouer à votre jeu vidéo préféré. Découvrez quels types de fonctionnalités et de composants existent dans ceux-ci et essayez de les recréer dans votre propre jeu vidéo Maintenant, considérez toutes les complexités de vos jeux vidéo préférés et réfléchissez à la manière dont vous pouvez faire passer votre jeu vidéo au niveau supérieur Vous pouvez ajouter un jet pack à votre personnage. Vous pouvez ajouter un système ennemi, un système de combat, un système d'inventaire des armes. Il y a tellement de manières différentes d'améliorer votre jeu. Vous pouvez vous inspirer de vos jeux préférés. Une fois que vous aurez exploré chacune de ces pistes, reconnaissez que chacune d'elles est une discipline professionnelle qui lui est propre. Si vous aimez créer des ennemis et comprendre le comportement de l'IA, c'est une discipline à part entière dans une entreprise de jeux vidéo Ou si vous aimez concevoir les niveaux et déterminer la logique de jeu qui sous-tend la façon dont le joueur interagit avec l'environnement, c'est une discipline à part entière Continuez à explorer autant que vous le pouvez, car chaque méthode a son propre chemin vers une carrière épanouissante. Merci beaucoup d' avoir suivi ce cours. J'ai hâte de jouer à ton jeu quand il sortira dans le monde entier.