Cours de présentation au système de dialogue en Unreal Engine | Hyper Dev | Skillshare

Vitesse de lecture


1.0x


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

Cours de présentation au système de dialogue en Unreal Engine

teacher avatar Hyper Dev

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.

      Vue d'ensemble du cours sur le système de dialogue par Hyperdev

      4:30

    • 2.

      002 outils dont vous aurez besoin

      2:35

    • 3.

      003 Une bonne planification de base pour le dialogue

      6:29

    • 4.

      004 Utilisez ce que vous avez

      6:41

    • 5.

      005 Introduction à l'enregistrement vocal dans Audacity

      2:47

    • 6.

      006 Enregistrer des lignes et les séparer dans Audacity

      3:44

    • 7.

      007 Structure de dossiers, nommage et exportation de la boîte de dialogue

      14:05

    • 8.

      008 Créer le projet de moteur irréel et importer l'audio

      4:09

    • 9.

      009 comment ajouter des fichiers audio à Unreal Engine

      3:21

    • 10.

      010 Ajouter un PNJ au monde

      6:58

    • 11.

      011 Configurer les composants de détection et d'interaction

      11:14

    • 12.

      012 Communiquer au plan de PNJ

      17:37

    • 13.

      013 Repositionner le joueur pour le dialogue

      12:58

    • 14.

      014 Configuration de la fonction de composant de dialogue

      12:48

    • 15.

      015 Bouton de la boîte de dialogue de sortie

      7:56

    • 16.

      016 Explication finale du processus de préparation des dialogues

      3:08

    • 17.

      017 Ajout d'un composant vocal au PNJ

      11:44

    • 18.

      018 Jouer en premier plan la ligne vocale de PNJ

      25:33

    • 19.

      019 Faire jouer au joueur une ligne de dialogue

      17:30

    • 20.

      020 Dialogue de lecture sur la sélection

      20:09

    • 21.

      021 Afficher le texte de la boîte de dialogue

      11:58

    • 22.

      022 Ajouts à la boîte de dialogue de progression

      12:04

    • 23.

      023 Ajouter un bouton de dialogue Skipper

      9:07

    • 24.

      024 Stop All Dialogue à la sortie

      1:24

    • 25.

      025 Dialogue de sortie automatique à la fin des lignes vocales

      9:21

    • 26.

      025 dialogue Skipp et fonctions personnalisées

      19:28

    • 27.

      026 Ajout d'un système de caméra sélectionnable

      38:18

    • 28.

      027 Vérification finale des connaissances et réflexions finales

      4:50

  • --
  • 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.

14

apprenants

--

À propos de ce cours

Apprendre les bases de la configuration d'un système de dialogue dans unreal engine 5. Ce cours est conçu pour être facile à comprendre et à suivre, quelle que soit votre expérience préalable en matière de développement de jeux. Et à la fin du cours, vous aurez acquis des connaissances sur la manière de créer un système de dialogue dans unreal engine et serez en mesure de l'ajuster à vos besoins spécifiques.

- Comment planifier la rédaction de votre jeu vidéo.

- Comment obtenir de bons doublages pour votre jeu vidéo.

- Comment obtenir un bon son de jeu avec un budget limité.

- Comment utiliser correctement l'audio spatial directionnel à l'intérieur d'unreal engine

- Comment planifier et gérer des centaines, voire des milliers de fichiers et d'enregistrements sur des jeux à grande échelle avec beaucoup de travail vocal.

1. Créer un système de dialogue dans unreal engine
2. Configurer le système de dialogue pour qu'il soit évolutif à plusieurs personnages


Bonjour, je suis HyperDev, le premier enseignant du développement de jeux pour Unreal Engine. En tant qu'enseignant professionnel, je sais que l'apprentissage du développement de jeux doit se faire étape par étape, chaque étape étant entièrement expliquée. Tous mes tutoriels sont donc réalisés avec ce niveau de qualité.

Chaque vidéo est remplie de techniques clairement expliquées et illustrées. Ainsi, plus vous progresserez, plus vous vous améliorerez en développement de jeux.

Rencontrez votre enseignant·e

Teacher Profile Image

Hyper Dev

Enseignant·e

Join me for some learning on how to make production ready games. Tutorials that give you the full scope of what you need to do to get a game totally ready for release.

They are made for people going from being a hobbyist to a professional game developer who wants to earn a living by selling games.

Voir le profil complet

Level: Beginner

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. Vue d'ensemble du cours sur le système de dialogue par Hyperdev: Hé, l'une des choses les plus compliquées que vous devez créer dans le moteur annuel, c'est là que nous en sommes actuellement, est un système de dialogue lequel vous pouvez interagir avec un personnage, puis il peut s' exprimer par des lignes vocales. Vous pouvez sélectionner la boîte de dialogue, puis après l'avoir sélectionnée, la caméra utilisée change au fur et à mesure que vos personnages interagissent et parlent entre eux. C'est ce que vous allez apprendre dans cette série de didacticiels. Vous commencez par les bases, vous savez, acquérir Unreal Engine et accéder à Audacity Vous pouvez utiliser n'importe quelle autre application de montage audio. Cela dépend de ce avec quoi vous êtes à l'aise , mais bon, c'est gratuit. Et surtout, il est très puissant. La prochaine chose que vous allez apprendre est une bonne planification fondamentale générale pour votre dialogue. Découvrez pourquoi les humains ont des idées de base sur la façon d'utiliser un décor comme environnement présentant des problèmes que vos personnages essaient de résoudre. Nous ne passerons pas trop de temps à aborder ces concepts, mais le dialogue de base est juste quelque chose que nous devons aborder. Ensuite, nous verrons comment enregistrer des dialogues de base l'aide des actions vocales dont vous disposez. Et quels que soient les outils à portée de main, utilisez essentiellement ce que vous avez pour établir le dialogue. Ensuite, nous verrons comment découper le dialogue en fichiers séparés qui seront parfaits pour être utilisés dans Unreal Engine Maintenant, à un niveau supérieur, en particulier lorsque vous avez plusieurs quêtes sur des fichiers audio, il est important d'avoir la bonne structure de dossiers. Nous allons donc voir comment avoir la bonne structure de dossiers. Essentiellement, nous allons passer en revue une bonne étiquette de dénomination des dossiers et des fichiers qui vous simplifiera la vie Il vous faudra environ 5 minutes pour comprendre cela, mais cela vous évitera des heures, voire des jours, de maux de tête liés à la production plus tard. Et puis, une fois le ménage terminé, nous allons nous plonger dans un véritable moteur Dans le moteur, nous apprenons à créer un plan simple dans lequel il y aura un personnage ou un PNJ avec qui nous pourrons commencer à parler Et une fois que nous avons le PNJ, nous commençons à en apprendre davantage sur les interfaces Les interfaces sont une bonne façon d'avoir deux plans, par exemple de se parler. C'est vraiment cool. C'est mieux que le casting, et je vais justement vous expliquer comment les utiliser. Cette partie suivante a beaucoup de travail sur le système de nœuds, également connu sous le nom de système de plans dans AnulEngine Et comme toujours avec mes tutoriels, tout sera vraiment très bien expliqué et rien ne se passera hors écran. Vous pourrez voir en détail tout ce que je vais vous expliquer. Ensuite, il faut que le texte apparaisse bien dans votre système de dialogue. Ainsi, le personnage de votre joueur pourra choisir ce qu'il va dire ensuite. Maintenant, par souci de simplicité et pour faciliter l'apprentissage pour tout le monde, il s'agira d'un système de dialogue linéaire avec une seule option. Mais les connaissances sur la façon de configurer plusieurs options seront là. Ensuite, nous allons utiliser des sous-titres pour faciliter la localisation et nous les utiliserons pour remplir ces champs Maintenant, il y a un peu de logique, et les choses deviendront de plus en plus complexes au fur et à mesure que nous avancerons. Mais à la fin, vous aurez une assez bonne connaissance des outils d' Unreal Engines Pour terminer, nous allons créer le système de sélection des caméras afin que, pendant le dialogue, vous puissiez sélectionner les caméras à afficher en fonction de ce que vous voulez voir sur la scène. Et cela va clore l'ensemble du didacticiel. Maintenant, pour ce qui est de savoir combien de temps avant de pouvoir tout apprendre, je vous recommande vivement de pouvoir le faire en deux jours si vous consacrez 2,5 heures par jour à la pratique Et puis environ 60 % est le volume auquel j'ai configuré tous les enregistrements pour qu'ils soient audibles. En plus de cela, je vous souhaite bonne chance dans votre apprentissage et dans votre boîte à outils, hyper dévot. 2. 002 outils dont vous aurez besoin: Mentalement, il ne s'agira que de trois choses. Comme prévu, le premier et le plus important est Unreal Engine La version du moteur que j' utilise sera Unreal Engine 5.6, mais tout ici devrait fonctionner à partir Unreal Engine 5.5 et versions ultérieures, donc je recommande de l'acheter. Le second est Audacity , un logiciel de montage audio gratuit Et la troisième est n'importe quelle application de texte. Vous pouvez même utiliser un stylo et du papier pour cela, mais allez, les gars. Nous sommes au 21e siècle, vous pouvez utiliser n'importe quelle application de texte. Juste pour le plaisir, je vais vous montrer où vous pouvez tout trouver. Donc, pour obtenir Unreal Engine, en gros, rendez-vous sur le lanceur Epic Games, rendez-vous simplement dans la bibliothèque, puis ici, vous pourrez sélectionner différentes versions d'AnrelEngine Choisissez celui que vous voulez. Vous pouvez essentiellement ajouter une version et vous pouvez simplement ajouter la version du moteur que vous souhaitez. Cependant, ce projet sera dans Unreal Engine, 5.6, d'accord ? Maintenant, pour Audacity, rendez-vous sur Team Audacity, vous donnera la possibilité télécharger J'utilise actuellement la dernière version. Vous n'êtes pas obligé d'utiliser la dernière version. La plupart des effets audio que nous allons utiliser seront assez simples. Mais vous pouvez le télécharger avec ou sans le hub Muse. Je préfère l'avoir sans. C'est assez simple. De plus, cette page Web est en fait blanche en ce qui concerne l'arrière-plan, mais je l'ai rendue foncée au cas où vous la regarderiez la nuit et je préfère généralement les arrière-plans noirs. Je ne veux jamais te projeter dans les yeux avec une lumière vive. OK, enfin et surtout, au cas où vous auriez besoin d'une recommandation sur un logiciel de texte de base que vous pouvez utiliser, vous pouvez simplement utiliser le Bloc-notes En gros, j'appuie sur et plus pour agrandir mon texte, je peux utiliser Ctrl et moins pour réduire le texte. Si vous avez juste besoin d'une application de texte de base pour écrire notre dialogue, Bloc-notes est suffisant et vous l'enregistrez sous forme de fichier TXT. C'est très bien. Bref, assez d'outils. Bien, assurez-vous que vous avez tous vos outils, et nous pourrons passer correctement à la section suivante. Et nous organiserons tout montage audio et toute modification de texte. Passons à autre chose dans la vidéo suivante. 3. 003 Une bonne planification de base pour le dialogue: Maintenant que tous les outils sont configurés, laissez-moi vous montrer un exemple simple façon de créer un dialogue de jeu. partie la plus importante de la création d'un dialogue de jeu est d' avoir une bonne planification de base lorsque vous l'écrivez. Maintenant, pendant que nous faisons cela, nous n'allons pas avoir peur de la page blanche. Nous devons simplement penser à une chose. Eh bien, fondamentalement, pourquoi les humains parlent-ils ? Les humains parlent pour deux raisons assez simples. La première consiste à résoudre des problèmes et la seconde à établir des relations. gardant ces deux choses à l'esprit, réfléchissons à la création d'un espace où ils devront résoudre des problèmes ou établir des relations. Tout cela se résume à ce que nous aimons appeler, dans le storytelling, un décor Un décor est le lieu où tout se passe. C'est ce qui crée les problèmes et le bonheur auxquels vos personnages devront faire face. N'oubliez pas que ce paramètre crée les problèmes que vos personnages essaient de résoudre, d'accord ? Hum, l'environnement est ce que vous essayez de créer. Maintenant, pour passer au dialogue que je vais vous montrer, je n'ai écrit que trois lignes simples pour indiquer mon décor C'est un monde fantastique avec une technologie d'âge mûr, et il y a de la magie dans le monde. Rien qu'avec ces trois lignes, cela me suffit pour démarrer. Maintenant, après avoir médité sur ce type de décor, sur la base de l'expérience du monde réel, il est facile de formuler des quêtes et des défis simples auxquels votre personnage pourrait être confronté Je l'ai donc répertorié comme tel. Alors de quel type de jeu s'agit-il ? Eh bien, d'accord, c'est un jeu fantastique. Peu importe qu'il s'agisse d'un RPG un hack and slash pour le plaisir du système de dialogue, mais c'est une décision que vous prenez en tant que développeur de jeux Pensons donc au joueur. Donc, en tant que joueur, vous êtes un chasseur. Vous pouvez utiliser le mot que vous voulez, mais fondamentalement, un chasseur signifie que c'est quelqu'un qui trouve des choses et qui tue des choses. En tant que chasseur, vous êtes au service du roi pour tuer des bêtes Le mieux qu'on vous ait demandé cette fois-ci, c'est Mad Fox. Le but d'avoir le roi sera un peu comme un donneur de quêtes ou, en d'autres termes, un pouvoir ou une hiérarchie supérieurs sous lesquels les chasseurs vivront Alors les bêtes ne sont probablement que des créatures magiques qui doivent être tuées Et celui que vous attaquez dans cette quête est un renard fou. C'est un peu comme un loup-garou. Ce sont des choses qui vous seront communiquées une fois que vous aurez développé le paramètre assez facilement. Maintenant, avec ce cadre de base, j'ai imaginé essentiellement une quête, mais je l'ai divisée en mini-quêtes, qui représentent essentiellement un dialogue. La première est donc de demander à un paysan itinéraire pour se rendre chez le marchand. OK, c'est le premier. Maintenant, avec le premier, en gros, vous vous dirigez vers un paysan et vous lui demandez son chemin. C'est très simple et il n'y a pas trop d'options. Dans la deuxième quête, vous devez rencontrer un marchand pour acquérir un arc et des flèches afin de tuer le renard fou. Maintenant, dans cette quête, il n'y aura qu' une seule option de dialogue. Je peux donc vous montrer comment configurer votre dialogue avec plusieurs options différentes. La troisième quête, également connue sous le nom de Quête 2, consiste à rendre la tête du renard. C'est une fois que le joueur a terminé, éliminant la créature comme preuve de votre maîtrise. OK. Ici, je vais vous montrer un peu plus comment vérifier si un joueur a effectué une action et ajuster le dialogue en conséquence. Et le dernier est un compte rendu de mission avec votre responsable, duquel nous allons tout réunir pour un dernier moment de dialogue, et ce sera la fin Maintenant que nous avons cette vue d'ensemble, examinons la toute première question où vous devez demander au marchand plutôt qu' au paysan l'itinéraire vers le marchand. Maintenant, le dialogue que j'utilise ici est un dialogue très basique. Je recommande, bien sûr, dans votre jeu, vous aurez envie de le pimenter et de lui donner un peu plus de vie. Mais il s'agit d'une vue d'ensemble simplifiée. La quête consiste à demander à un paysan itinéraire pour se rendre chez le marchand. Donc, la première chose que le joueur dit, c'est bonjour. Le paysan répond : « Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l' aide pour la bête. Et puis le joueur répond : « Oui, je le suis » et pose des questions sur le marchand qui a mes affaires. Est-il arrivé ? Le paysan, il l'a fait. À quelques centaines de marches du fleuve, sur la rive ouest, le paysan indique son emplacement. Le joueur, merci. Je vais m'en aller. Puis le paysan. Bonne chance. Vous savez, une fille de notre village a été attaquée. Elle a failli ne pas y arriver, mais son père est introuvable. Je vous en prie, nous avons besoin que l'on s'occupe de la bête. Et puis, une fois que vous avez terminé ce dialogue, chaque fois que vous essayez de parler à nouveau au paysan, le paysan déclare simplement, quelques centaines de pas le bas de la rivière, il est sur la rive ouest et c'est terminé. C'est la configuration la plus élémentaire pour le dialogue. Maintenant que nous avons ces lignes, nous devons passer à autre chose et les faire enregistrer. Ensuite, nous devons examiner à quoi ressemblerait réellement une boîte de dialogue d'enregistrement et ce qu'elle exige de vous en tant que développeur. 4. 004 Utilisez ce que vous avez: C'est bon. Dans la dernière vidéo, nous avons donc passé en revue certains principes fondamentaux pour écrire et créer un dialogue. Supposons donc que vous ayez maintenant un dialogue. La prochaine étape est de l'enregistrer. Maintenant, beaucoup de gens vous diront que vous devez disposer de nombreux équipements haut de gamme pour enregistrer les dialogues de vos jeux. Vous disposez d'un équipement haut de gamme et vous avez déjà les compétences nécessaires pour dialoguer, c'est fondamentalement une bonne chose. Cependant, si vous êtes un développeur indépendant et que vous n'y avez pas accès, voici ce que vous devez comprendre pour préparer rapidement les dialogues de votre jeu avec un budget minimal Le principe fondamental est toujours utiliser ce que vous avez, c' est-à-dire les ressources dont vous disposez, et de faire votre mieux avec ce qui est à portée de main. En particulier pour le dialogue, il y a trois éléments fondamentaux dont vous avez besoin pour un dialogue enregistré. Tout d'abord, il y a vos dialogues et vos scripts. N'hésitez pas à utiliser vos dialogues et tout ce que vous avez écrit. Ensuite, utilisez votre appareil d'enregistrement. Qu'il s'agisse ou non d'un téléphone ou d'un petit microphone, il suffit d' utiliser ce qui est disponible. Enfin, le plus important est d'utiliser vos propres talents vocaux disponibles. En gros, je veux que vous sachiez qu'il suffit d'avoir confiance en votre histoire et d'avoir confiance en le jeu que vous créez avec votre âme. Si vous repensez à tous vos jeux préférés que vous aimez vraiment, même ceux où ils n'étaient peut-être pas du plus haut niveau de qualité, ce que vous avez aimé, c' est parce qu'ils vous ont touché le cœur et qu'ils ont été une bonne expérience dans l'ensemble. Soyez donc à l'aise avec votre dialogue écrit, même si vous ne l'aimez pas ou si vous ressentez un certain syndrome de l'imposteur, c'est très bien Profitez de ce sentiment et exploitez simplement votre propre âme. Ensuite, assurez-vous d'utiliser votre propre appareil d'enregistrement. Je vais maintenant parler de la façon d'améliorer vos enregistrements en ajustant votre zone d'enregistrement et votre appareil. Mais le but est de maintenir les coûts gérables. Mais plus important encore que de maintenir les coûts gérables, vous devez penser à conserver la facilité d'accès pour l'exécution C'est un principe fondamental du travail, mais pensez-y de cette façon. Si vous avez un bijou à la maison, il est très facile pour vous de vous entraîner quand vous en avez envie. Cependant, si vous avez un joyau très éloigné de vous, vous devez faire une promenade complète. Ça va être pareil. Si vous avez un appareil d'enregistrement dans votre maison ou à proximité, vous pouvez l' utiliser immédiatement, bien sûr, si vous êtes un studio de développement de jeux vidéo complet, cela facilite beaucoup les choses. Mais si vous êtes un développeur indépendant, vous devrez faire de votre mieux avec ce que vous avez Et la dernière chose que vous voulez, c'est créer un obstacle mental à l'exécution. Par exemple, si vous avez besoin de faire queue et que vous vous sentez mentalement coincé parce que vous pensez toujours à obtenir de l'argent pour studio d'enregistrement ou à sortir, cela vous limitera. Concentrez-vous uniquement sur la facilité d' accès pour l'exécution, ce qui permettra également de maintenir les coûts à un niveau raisonnable. Utilisez votre région, utilisez votre appareil. Ensuite, vous devez utiliser le talent vocal qui est à votre disposition. chose que je partage toujours avec tous les développeurs indépendants, c'est que vous êtes votre premier acteur vocal. Sans entrer dans les détails, je connais littéralement quelqu'un qui a gagné 10 000$ au cours des deux premiers mois suivant la sortie de son jeu, et les seules lignes vocales de son jeu proviennent de ses propres voix enregistrées sur son micro domestique de base OK ? Vous êtes donc votre premier doubleur. Tu es le premier talent le plus important. Ensuite, si vous faites partie d'une équipe ou d'une équipe de développement indépendante, et que vous êtes deux ou trois personnes, tout le monde est comédien ou comédien. OK ? Donc, si vous avez besoin d'une voix féminine et que vous avez une dame dans l'équipe, parlez-lui et faites-lui entendre sa voix. Ils peuvent suivre quelques cours. Je n'entrerai pas dans tous les détails. Utilisez ce qui est à votre disposition. Tu dois être prêt. Ensuite, vous pouvez utiliser des talents locaux. Habituellement, ce n'est pas trop cher, et il y a de bons comédiens et actrices qui seront disponibles pour vous Ensuite, demandez à vos amis ou à votre famille. Si vous avez un jeune frère, une sœur, un frère aîné, une sœur, vos parents peuvent vous aider à exprimer personnages, oncles et tantes plus âgés Vous pouvez avoir des amis, des membres de tous les clubs dans lesquels vous vous trouvez. Cela semble être une grosse demande, mais croyez-moi, il y a beaucoup de gens qui aimeraient partager avec vous une partie de leur énergie , de leurs talents vocaux et de leurs compétences. En outre, vous pouvez également utiliser la fibre optique et d'autres plateformes pour engager des personnes chargées du travail vocal pour votre jeu. Beaucoup d'entre eux ont en fait des configurations de très bonne qualité qu'ils peuvent utiliser pour produire un son assez clair. La raison pour laquelle je place configurations de qualité sous des éléments tels que les talents locaux , les membres de votre famille, vous et les autres membres de votre équipe, est parce que même s'ils peuvent enregistrer des voix de qualité, c' est parce que même s'ils peuvent enregistrer des voix de qualité, il est toujours préférable que tous les dialogues et le travail vocal votre jeu proviennent d' un seul endroit pour garantir cette cohérence, et cela simplifie l'obtention d'un son unifié dans un seul endroit pour garantir cette cohérence, et cela simplifie votre jeu Enfin, je veux dire, c'est une sorte de liste. Utilisez l'IA si tout échoue ou si cela correspond à votre jeu. Utilisez donc votre talent vocal disponible. Dans la vidéo suivante, je vais vous présenter une brève introduction à Audacity s'agit de l'interface utilisateur d' Audacity lorsque vous l'ouvrez, et je vais vous montrer comment exporter votre travail vocal et le préparer à exporter votre travail vocal être utilisé dans Unreal 5. 005 Introduction à l'enregistrement vocal dans Audacity ty: OK, maintenant que nous avons notre dialogue, commençons à l' enregistrer. Tout d'abord, permettez-moi de souligner rapidement ce que je vais enregistrer. Donc, la première chose est que je recommande toujours si vous pouvez enregistrer le dialogue en une seule fois pour chaque ligne. Donc, quand tu le regarderas, je vais enregistrer Hello. Oui, je le suis. Et puis le petit mot de remerciement. Ce sont les trois lignes de dialogue que nous voulons intégrer à notre jeu. Ouvrez donc Audacity. Et dans Audacity, la première chose que j' aime faire est de passer à l'édition, puis aux préférences, d' accord, et en gros de passer à l'édition, puis aux préférences Et puis les préférences, ça va vous montrer que vous voulez rechercher l'interface. Donc, oui, c'est une interface là-bas. Et pour le moment, c'est sur le thème du classique. Je préfère le thème du noir et permettez-moi de le reprendre. Voilà à quoi ça ressemble dans le noir. C'est juste une préférence personnelle. Je passe beaucoup de temps devant mon PC à travailler Les arrière-plans sombres sont donc meilleurs pour la durabilité. Il ne vous reste plus qu'à appuyer sur ce gros bouton rouge. Il s'agit d'une seule ligne de dialogue que j'ai enregistrée. Puis appuyez sur le bouton Stop. Et si je le rejoue, il s'agit d'une seule ligne du bouton. OK. Si vous le rejouez, je ne pense pas qu'il ressortira simplement parce qu' il s'agit d'un enregistrement, mais vous devriez le rejouer et l'entendre. Si vous l'aimez avec les sons, cela signifie que votre micro et votre environnement sont bons, et vous pouvez commencer à enregistrer le dialogue. Maintenant, lorsque vous enregistrez un dialogue dans un environnement professionnel, vous devez toujours enregistrer ce que j' aime appeler la base de référence. titre d'exemple rapide, voici la phrase de base expliquant comment les dialogues devraient sonner en termes de volume et de clarté dans ce jeu. Et après cela, ce n'est que la base de référence. Et c'est à partir de cette base de référence que vous allez mesurer tout votre dialogue. Ce n'est pas quelque chose que vous devez absolument faire, mais c'est bon pour la qualité. Ensuite, après avoir enregistré une ligne de dialogue ici, il est temps de la nettoyer et de la découper. 6. 006 Enregistrer des lignes et les séparer dans Audacity ty: OK, donc fondamentalement, le dialogue qui doit être enregistré est Hello. Oui, je le suis. Le marchand avec mes affaires est arrivé, et merci, je vais partir. Ce sont les phrases de base nécessaires au personnage du joueur, et c'est ainsi que fonctionne leur enregistrement. Donc, à l'intérieur d'Audacity, j'ai ma base de référence Donc, si j'écoute, c'est la phrase de base expliquant comment les dialogues devraient sonner en termes de volume et de clarté dans ce jeu. OK, donc j'ai eu cela comme base de référence pour m' assurer de pouvoir l'examiner et de savoir si ce que j'enregistre correspond ou non. La cohérence du dialogue est vraiment importante. Maintenant, je vais venir ici et ajouter une piste audio. C'est donc dans le menu supérieur, allez dans Pistes, ajoutez une nouvelle piste et ajoutez une nouvelle piste stéréo. Cela va créer une piste ici. Maintenant, cliquez sur l'original, je vais cliquer dessus avec le bouton droit de la souris, et je veux le renommer Je vais donc le renommer en tant que référence parce que c' est tout ce qu'il fait, il agit comme une ligne de base Alors je vais le désactiver, d'accord. Une fois que j'en ai fini avec ça, j'ai mon script, et maintenant je vais enregistrer les lignes. Je sélectionne simplement la piste audio 2, puis je viens ici et je clique sur Enregistrer pour enregistrer les lignes. C'est bon. Donc, hors écran, j'ai fait l'enregistrement, et voici comment je sonne. Bonjour. Oui, je le suis. Le marchand avec mes affaires est arrivé. Merci Je vais m'en aller. n'est pas le meilleur doublage, mais c'est un problème pour moi. Maintenant, fondamentalement, nous avons les trois lignes. Nous avons la première ligne. Bonjour. Vous avez la deuxième ligne ? Oui, je le suis. Le marchand avec mes affaires est arrivé. Et nous avons la dernière ligne. Je vais m'en aller. Mais séparez-les en trois, puis exportez-les. Tout d'abord, nous voulons ajouter de nouveaux camions. Je vais donc ajouter un nouveau camion. C'est bien d'avoir un nouveau camion pour chaque ligne. Créez-en un autre. Il y a trois lignes, créez-en une autre. Passons maintenant à la dénomination, d'accord ? Cliquez avec le bouton droit sur Renommer la piste. Le premier, nous allons appeler nous allons en fait mettre en place une structure de dénomination appropriée, mais appelons-le simplement zéro, zéro, un, d'accord ? Nous appellerons la piste suivante zéro, 02 pour indiquer qu' il s'agit de la deuxième ligne Et enfin, zéro, zéro, trois pour la troisième ligne. Et découper, c' est vraiment simple. Il vous suffit de tenir bon. Il vous suffit de faire glisser le pointeur, puis de contrôler un X pour couper, d' arriver au début et de contrôler V pour coller. Et puis c'est pareil. Dès le début du dialogue, contrôlez X, puis filez la commande V, puis filez la commande V, faites glisser le pointeur sur cette commande X, comeoa Control V pour les coller à l'intérieur Vous avez donc maintenant les trois lignes de dialogue sur des pistes distinctes. Ensuite, nous allons simplement les exporter et les mettre dans Unreal 7. 007 Structure de dossiers, nommage et exportation de la boîte de dialogue: Commençons donc par la bonne position d'avoir nos lignes de dialogue pour la partie suivante, commençons par expliquer comment nous allons organiser la structure des dossiers. Maintenant, c'est le format de base que j'utilise, et c'est un format prêt pour la production. Lors de l'organisation et de la configuration de la structure d' organisation des fichiers audio, le tout premier dossier sera la langue, puis le personnage, puis la quête dans laquelle Quest n'est en fait pas le meilleur terme. J'appellerais peut-être ce contexte parce que parfois dialogue en monde ouvert est configuré dans différents dossiers, mais ce n'est pas important. Pour l'instant, considérez-le comme la Quête, puis à l'intérieur de ce dossier se trouveront le fichier d'origine, puis les lignes. Maintenant, laissez-moi vous expliquer à quoi cela ressemble réellement. Disons donc que nous voulons ce soit le premier ensemble de lignes que nous voulons enregistrer. Nous allons commencer par accéder au fichier, puis nous voulons commencer par Enregistrer le projet. Enregistrez le projet et non sur le cloud, vous souhaitez l' enregistrer sur l'ordinateur. Donc, à l'endroit où nous allons enregistrer ceci, laissez-moi simplement ouvrir un dossier simple, n'est-ce pas ? Tout d'abord, nous allons commencer par un nouveau dossier. Ce sera le dossier de votre projet, d'accord ? Je vais l'appeler test, mais vous pouvez le configurer comme bon vous semble. le dossier de test, nous allons créer un dossier, qui sera en anglais. OK. Tous les dialogues en anglais se trouveront donc dans ce dossier appelé English. Maintenant, pour des raisons de simplicité, passons au nouveau dossier. Et disons que nous voulions également avoir un dialogue japonais, d'accord ? Je pourrais donc dire japonais, et ce sera la structure de dossier fondamentale. Nous commençons par la langue. Après la langue, à l'intérieur de la langue, nous allons sélectionner et créer un autre dossier. Et cette fois, ce sera le personnage du joueur. Maintenant, par souci de simplicité, je vais appeler ce joueur underscore masculin OK. Supposons donc que vous ayez un jeu dans lequel vous pouvez choisir entre être un protagoniste masculin ou féminin, c'est ainsi que vous le configureriez. Il y aura donc tous les dialogues du joueur masculin. Ensuite, dans Player Male, nous allons maintenant créer les dossiers de travail proprement dits. Donc, la quête pour laquelle j'ai enregistré mes lignes vocales dans le dialogue est la quête zéro, zéro, et supposons que votre jeu comporte 1 000 quêtes, vous devriez l'appeler zéro, zéro, zéro, mais le mien en aurait probablement moins Je vais donc l'appeler Quête zéro, zéro La raison pour laquelle j' aime enregistrer et organiser les dossiers de cette façon est qu'en cas de modification, il sera très facile de trouver la quête spécifique pour laquelle cette boîte de dialogue doit être ajustée. Ensuite, dans la quête, nous l'aurons simplement ici et taperons quête, zéro, zéro, soulignement, joueur, trait de soulignement, C'est ça. C'est la structure de base simple. Nous avons donc maintenant le fichier de ce projet enregistré. Maintenant, remarquez ce que nous avons fait. Tout en haut, nous avons copié. Nous n'avons pas coupé cet audio. Nous avons copié les lignes audio pour les séparer. Donc, si jamais nous avons besoin de faire référence aux lignes vocales d'origine, nous pouvons simplement venir ici. Il s'agit de la phrase de référence. Et obtenez-en l'accès. Nous avons donc une base de référence et oh, Mike, je ne l'ai pas enregistrée. OK, ne fais pas ce que j'ai fait. La ligne de base est bonne, mais ne les coupez pas avec Control X, copiez-les avec Control C et conservez le fichier principal. Ensuite, remarquez que tout est en sourdine. Donc, si je clique sur Play, rien n'est joué. Je vais donc revenir ici. Je vais désactiver le son, et maintenant notre ligne vocale est disponible pour jouer Donc, quand j'appuie sur Play. Bonjour. Le bien s'arrêtera là. Maintenant que cela n'est pas muet, gardez à l'esprit qu' Audacity ne jouera que jusqu'à la fin de la boîte de dialogue, jusqu'au moment où le son non muet sera diffusé Audacity ne jouera que jusqu'à la fin de la boîte de dialogue, jusqu'au moment où le son non Il ne fera donc qu'exporter ceci. Maintenant, je vais revenir au fichier et je vais aller à Exporter l'audio. Permettez-moi de vous montrer exactement pourquoi il s'agit d'exporter de l'audio et de l'exporter vers l'ordinateur. Maintenant, le dossier est là. Notez donc maintenant que le nom est quest 00 playermil point WAV. Mais comme il s'agit de la première ligne de dialogue, et si nous allons ici, nous l'appelons 001, et c'est la première ligne, nous mettons un trait de soulignement et nous l'appelons zéro, zéro, un, puis nous exportons Et n'oubliez pas qu'elle est exportée sous forme de vague. Un fichier WAV est toujours le meilleur type de fichier que vous souhaitez utiliser pour exporter votre audio. Il est vivement recommandé En fait, il y a un autre ajustement. Comme la quête vise plutôt le joueur selon notre hiérarchie, laissons le joueur être là pour souligner Et puis la quête vient après que Quest n'est pas entièrement capitale. Quête zéro, zéro, soulignement, puis le dialogue que le joueur lance. Nous allons donc simplement enregistrer le fichier Web et l'exporter. Très bien, c'est donc le dossier dans lequel tous vos dialogues seront exportés. Alors maintenant, si vous entrez dans l'anglais, vous l'avez fait, laissez-moi également créer ce très grand joueur masculin, Quest 00. Et puis, remarquez qu'en raison de la façon dont nous avons sauvegardé, nous avons le fichier original, qui contient un enregistrement, auquel nous pouvons nous référer à tout moment. Et puis nous avons la véritable série de quêtes. Laisse-moi jouer à cette série de quêtes pour que nous puissions entendre son son. Bonjour. Bonjour. Nous y voilà. Nous avons exporté notre première ligne de dialogue enregistré, et nous l'avons fait de manière organisée. Maintenant, cette structure de base qui permet de passer de la langue au joueur, en passant par la quête ou le contexte, vous voulez que les lignes figurent dans le fichier d'origine, puis les lignes vous évitera bien des maux de tête. Vous ne devriez jamais avoir de mal à chercher des fichiers. C'est l'une des plus grandes pertes de temps. Lorsque vous développez des jeux, vous devez être bien organisé. Maintenant que c'est fait, exportons les deux autres lignes. Maintenant, rapidement, nous avons fini d'exporter 001. Je vais appuyer sur le bouton muet , puis je cocherai zéro. Oui, je le suis. Tiens bon. Oui, je le suis. Le marchand avec mes affaires est là. OK, donc pour la deuxième ligne, elle n'est plus muette. Je passe par l'Export Audio. OK. Maintenant, je vais simplement le modifier à nouveau. Voyons voir. Voyons voir. Dossier. C'est celui-là. Je sélectionne donc simplement le premier pour qu'il me permette de changer le nom. Donc, au lieu de 001, ce sera 002 wav Je veux l'exporter sous cette forme. C'est donc maintenant exporté. Et vous pouvez voir que 002 est ici exporté. Et si on le met dans un ordre quelconque, c'est moi qui le fais. Le marchand d'Excellent. Nous avons donc notre système d'exportation de dialogues organisé proprement dit. Permettez-moi d'exporter rapidement la troisième ligne. J'ai rapidement exporté, merci. Je vais m'en aller. Terminé. Nous avons donc maintenant ce dossier, qui contient nos trois lignes de dialogue. Ensuite, ouvrons Unreal Engine et commençons à créer le système de dialogue Mais avant d'entrer, je voudrais te montrer quelque chose. Maintenant, c'est du son. Bonjour. Cet audio m'a été donné par un ami. Je l'ai engagée pour m'aider à enregistrer les lignes vocales féminines, afin que je puisse vous montrer la différence entre les lignes vocales masculines et féminines et comment intégrer l'option permettant de choisir entre les deux. Oui, je le suis. Voici donc ses lignes, et je vais également les exporter à des fins de démonstration et d'apprentissage. Maintenant, si vous avez voix masculines et féminines ou même plus, voici comment enregistrer le projet. Vous allez donc enregistrer le projet. Vous enregistrez le projet comme OK. Et vous voulez accéder à l'endroit où vous avez enregistré votre projet, d'accord ? Et passez à l'anglais parce que ce sont des voix anglaises. Et puis il y a Player Underscore Male, vous suffit de créer un nouveau dossier, d'accord ? Et on l'appellera player underscore female, peu comme dans des jeux comme Mass Effect, où vous pouvez choisir entre Shepherd et Fem Vous aurez donc ces deux options vocales. Ensuite, à l'intérieur du joueur féminin, vous pouvez changer de dossier, ouvrir et créer un autre dossier, et vous pouvez ajouter Quest O parce que c'est la même quête. Et ici, assurez-vous de définir le nom du fichier comme joueur, trait de soulignement, femme, trait de soulignement, trait de soulignement, quête zéro, zéro OK. C'est ainsi que vous définiriez le nom du fichier de projet et que vous l'enregistreriez. OK. Maintenant, si vous voulez que ce soit encore plus complet, vous pouvez mettre un EN avant tous les fichiers en anglais. Maintenant, par souci de simplicité, je vais vous montrer à quoi cela ressemble. Supposons donc que nous commencions par la toute première ligne. Bonjour. Le bonjour très fort. Je vais donc sélectionner cela. Je souhaite maintenant exporter l'audio. Et bien sûr, vous voulez l'exporter vers Player Female Quest, d' accord, zéro, puis zéro. Voyons voir, 01. Comme il s'agit de la première ligne de dialogue, je l'appellerai simplement 001. Si je voulais montrer qu'il s' agit d'une boîte de dialogue en anglais, je pourrais simplement taper au début un trait de soulignement anglais afin que nos noms de fichiers soient également représentatifs de la langue parlée Cela facilite grandement la gestion des fichiers, surtout si votre jeu doit être très volumineux et très localisé. Alors, sauvegardons rapidement cela. Maintenant, je vous ai déjà montré comment procéder plusieurs fois. Laissez-moi enregistrer les autres lignes de dialogue vocales féminines, puis nous passerons à la vidéo suivante où nous ouvrirons le moteur Unreal et commencerons à placer notre audio dans le moteur 8. 008 Créer le projet de moteur irréel et importer l'audio: D'accord. Maintenant, à ce stade, il est temps d'ajouter l' audio dans Unrel Engine Maintenant, pour accéder à UnrelEngine, il vous suffit d'ouvrir votre lanceur de jeux Epi et de cliquer sur Lancer pour UnrelEngine, car il est déjà installé Dans Unreal Engine, une fois qu'il est démarré, vous suffit de sélectionner le plan à la troisième personne En gros, il s'agit d'un exemple de modèle que nous utiliserons. La raison pour laquelle nous utiliserons le modèle à la troisième personne est qu'il est livré avec des animations et un système déjà configuré, et cela sortirait du cadre de ce tutoriel si j'avais besoin que vous fassiez tout cela vous-même. Ensuite, en ce qui concerne la plate-forme cible, vous pouvez la modifier comme vous le souhaitez, mais utilisons des plans car nous utiliserons des moteurs irréels intégrés au système Blueprint pour exécuter ce système Maintenant, dans la mesure où vous sélectionnez essentiellement l' emplacement de votre projet, d'accord ? Vous allez sélectionner l'emplacement de votre projet. J'appelle Min DSCG et le nom du projet est Système de dialogue Guide complet Bien entendu, ce ne sont que les mots que j'utiliserais. Pour vous, il se peut que vous deviez le modifier. Et ça me dit que je ne peux pas utiliser plus de 20 caractères. Je vais donc l'appeler Dialog System Guide. OK, et je vais simplement créer et voici ce que vous devriez voir à la fin du chargement d'UnrelEngine Permettez-moi de montrer ma souris à l'écran juste pour que vous puissiez voir clairement sur quoi je presse. OK. C'est donc ma souris. Maintenant, dans Unrel Engine, si vous maintenez le bouton droit de la souris enfoncé et que vous maintenez le bouton WASD enfoncé, vous pouvez vous déplacer dans le monde entier, et c'est tout ce que je fais Donc, de ce côté, vous pouvez voir que nous avons quelques plateformes de base. C'est ici avec un drapeau que le joueur va apparaître. J'ai cliqué avec le bouton gauche de la souris pour le sélectionner. Permettez-moi de cliquer avec le bouton gauche de la souris. Voici donc ce que vous voyez lorsque je clique sur Play. Donc, ici, il y a le bouton Play. J'ai cliqué avec le bouton gauche de la souris pour m' assurer que j'ai le contrôle. Vous avez donc un personnage simple dans lequel vous pouvez vous promener et regarder autour de vous. C'est tout ce dont nous avons besoin pour commencer. Maintenant que nous sommes là, si vous appuyez sur Ctrl et barre d'espace, d'accord ? Vous allez maintenant voir tous les dossiers contenus dans ce projet de moteur de dévoilement spécifique Vous pouvez voir tous ces personnages, les développeurs, les entrées, c'est ****. C'est cool. Maintenant, par souci de simplicité, nous allons créer un nouveau dossier, sélectionner d' abord le contenu, puis cliquer avec le bouton gauche de la souris et ajouter un nouveau dossier. Et ce dossier, nous allons simplement l'appeler dire Log, et à l'intérieur de ce dossier se trouve l'endroit où nous allons conserver tous les dialogues relatifs au projet. Maintenant, commençons par mettre un seul fichier, puis dans la vidéo suivante, nous allons approfondir un peu ce qu'il faut faire. 9. 009 comment ajouter des fichiers audio à Unreal Engine: Maintenant, pour exporter nos fichiers dans Unreal Engine, il suffit de trouver l'endroit où vous les avez enregistrés Par exemple, nous avons l' anglais et le japonais. n'y a rien en japonais pour le moment, mais nous pouvons voir qu'en anglais, il y a joueuse féminine avec le zéro de Quest et tous les dialogues que nous avons enregistrés. Et il y a aussi actuellement joueur masculin avec tous les dialogues enregistrés. Maintenant, il suffit de revenir en haut de la page. Nous allons les récupérer, et nous voulons les copier avec contrôle. Après les avoir copiés, vous vous dirigerez dans le dossier de votre projet de moteur AnRelo, votre projet de moteur NUL Donc, à l'intérieur de ce dossier, vous allez trouver un autre dossier appelé content. Ce dossier contient tous les fichiers qui seront ajoutés à votre jeu. Nous allons donc aller dans le dossier de contenu, et nous avons créé un dossier appelé dialogue. Nous allons donc aller dans le dossier de dialogue, puis nous allons faire un simple collage. Maintenant, l'anglais et le japonais font partie de notre jeu. Ouvrons UnrelEngine et voyons comment il accepte le Bien sûr, je l' ai simplement appelé Dialog System Guide, mais quel que soit le nom que vous lui donnez, vous pouvez simplement sélectionner le projet dans lequel nous avons placé les fichiers. Maintenant, j'ai immédiatement ouvert UnrelEngine. Vous pouvez regarder en bas à droite et il est indiqué que six modifications ont été apportées au contenu source. Vous souhaitez les importer ? Et je cliquerais immédiatement sur Importer. Maintenant que le moteur annuel a été importé, voyons ce qu'il a apporté. J'appuie sur la barre d'espace de contrôle pour afficher nos dossiers. Donc, pour le moment, vous verrez le dialogue à l'intérieur qui contient l'anglais et le japonais. Cliquons en anglais et jouons à Mel Quest Zero. Oh, et regardez ça. Nous avons nos dossiers. Laisse-moi appuyer sur Play sur le premier. Bonjour Tu as entendu ça ? Bonjour Unreal Engine a obtenu les fichiers wav et les a importés à l'intérieur. Oui, je le suis. Le marchand avec mon truc. C'est plutôt cool. Trouvons la femelle. Nous allons donc jouer une femme. Bonjour Oui, je le suis. C'est bon. Nous avons donc importé nos fichiers audio dans Unreal Engine Maintenant que c'est fait, voyons comment enregistrer et enregistrer rapidement dans une courte vidéo, puis nous allons cliquer sur Play et configurer notre système de dialogue. 10. 010 Ajouter un PNJ au monde: Maintenant que notre projet est dans Annual Engine, il est temps d'ajouter un PNJ au monde avec lequel nous parlerons et que nous utiliserons pour créer le système de dialogue Maintenant, c'est en fait assez simple. abord, l'emplacement, nous savons que le joueur apparaît ici, donc je veux que le PNJ soit juste par ici, à quelques pas, mais sur cette plateforme Une fois que nous avons l'emplacement, nous reste plus qu'à créer le plan du PNJ Donc, contrôle et barre d'espace, puis je passerai aux personnages et à l'intérieur des personnages. Je vais créer un plan. Voyons voir, classe Blueprint. Et la classe que je veux utiliser sera celle de l' acteur, du jeu de mots et du personnage Maintenant, je vais utiliser un pion de personnage pour plus de simplicité, et en gros, il s'agit d'un PNJ Ainsi, avec cette classe de base, elle se connectera facilement à d'autres éléments dont vous aurez besoin pour vos personnages, comme un système de combat Le personnage est donc sélectionné. Et maintenant, nous avons cette nouvelle classe Blueprint. Maintenant, par souci de simplicité, je vais simplement l' appeler NPC Underscore Mais vous pouvez simplement l'appeler PNJ. Nous allons maintenant double-cliquer sur NPC pour ouvrir son plan. Maintenant, dans le plan des PNJ, vous voyez que nous avons un cylindre de base ici, d'accord, Et sur le côté gauche, nous avons la composante de mouvement du personnage. Et dans le graphique des événements, nous avons l'acteur sur Begin Overlap, EventT et Begin Play Nous allons entrer dans le vif du sujet. Pour l'instant, nous avons mis en place notre plan de base. Donc, ce que nous allons faire dans la barre d'espace de contrôle, c'est prendre ce PNJ et le faire glisser ici Notez que NualEngine s'est assuré qu'il restait au-dessus du sol afin qu'il ne se coupe pas Nous avons donc maintenant ce PNJ de base dans le monde. Cependant, si nous appuyons sur Play, remarquez qu'il n'y a pratiquement rien. OK, je vais marcher jusqu'ici. Et je sais que je heurte un objet, mais il n' y a rien là-dedans, alors ajoutons-y un simple corps physique. Maintenant, pour y ajouter un corps physique simple, nous voulons ajouter un mannequin, donc la barre d'espace de contrôle. Double-cliquez sur PNJ paysan. Cela ouvrira le plan, et je me suis assuré de le faire glisser vers la fenêtre principale d'Unreal Engine afin d'y accéder facilement pour revenir au niveau Permettez-moi d'ouvrir rapidement l'éditeur de plan complet. Maintenant, nous sommes là. Maintenant, ce que je veux faire, c'est là où se trouve le maillage des caractères, je veux y ajouter un corps. Donc, encore une fois, contrôlez la barre d'espace. Descendez à la troisième personne. Et à la troisième personne, il y aura des plans Et vous remarquerez que c'est le plan que le joueur utilise Double-cliquez dessus et glissons-le également vers la fenêtre principale. Vous remarquerez maintenant que je suis dans la fenêtre d'affichage. Vous voyez ce corps que le joueur a à l'intérieur de cette capsule, c'est ce que nous voulons ajouter au PNJ, et ce corps se trouve sous le maillage Maintenant, si vous regardez sur le côté droit, il est écrit « Skeletal Mesh Asset », « Queen Simple ». C'est pour le personnage du joueur. Maintenant, pour en revenir au paysan NPC, nous allons sélectionner l'actif du maillage squelettique qui s'y trouve Nous allons passer au maillage sur le côté droit. Et si nous cliquons, nous remarquons que nous avons accès à plusieurs maillages différents Pour plus de simplicité, je vais cliquer sur Many simple. Et maintenant, nous avons le maillage squelettique de base Many. Ce n'est pas encore prêt, mais jetons-y rapidement un coup d'œil dans le monde. Maintenant, l'argent est là-bas, mais il flotte en quelque sorte dans les airs, qui n'est vraiment pas ce que nous voulons. Apportons donc quelques ajustements à sa position. Nous allons donc obtenir de l'argent. Et pour commencer, en cliquant sur le maillage squelettique, il est possible de changer sa position Il y a donc les emplacements X, Y et Z. Pour le déposer au sol, vous devez réduire sa position Z. Je trouve qu'avec les squelettes moteurs irréels de base, les mesures, plutôt, OK Donc, essentiellement, en ce qui concerne l'emplacement, le mieux est de le régler à moins 89. Ensuite, pour ce qui est de la rotation, il est préférable de le régler à moins 90, car il est maintenant orienté vers l'endroit où se trouve le pointeur et il est beau. Voici notre PNJ. J'ai ensuite apporté quelques modifications au positionnement mondial. Laissez-moi vous les montrer maintenant. Maintenant, pour ce qui est de positionner notre PNJ dans le monde, la première chose à faire est de sélectionner ce Perfect En ce qui concerne la rotation, je l'ai fait pivoter d'environ 210 degrés sur le Z, d'accord ? C'est la rotation en Z là-bas. Et avec ça, je l' ai un peu reculée. Alors allons-y et voyons où il se trouve. Alors, je me promène ici. C'est donc la position idéale pour commencer à configurer le système de dialogue. Nous allons discuter avec ce PNJ. Dans la vidéo suivante, nous allons utiliser la détection pour savoir où nous pouvons interagir et entrer dans les systèmes d' interaction et entrer dans les systèmes d' interaction et commencer à créer le système de dialogue. 11. 011 Configurer les composants de détection et d'interaction: C'est bon. Maintenant, juste pour une compréhension rapide avant d'aller de l'avant, le système de dialogue que nous allons créer dans Blueprints va fonctionner comme suit Nous avons notre personnage de joueur qui va passer par une interface. Une interface est un moyen simple de communiquer des informations entre les plans Ensuite, à l'intérieur de notre PNJ, nous allons attacher un composant de dialogue Le composant de dialogue va gérer toutes les données de notre dialogue, par exemple les animations faciales et nos fichiers audio. Mais nous y reviendrons ensuite. commencer, assurons-nous que notre joueur est capable d'interagir avec notre PNJ et de lui parler et que notre PNJ dispose d'un composant de dialogue pour stocker Maintenant, c'est ce que tu vas faire. Dans l' état actuel du jeu, lorsque vous appuyez sur Play, vous pouvez vous diriger vers ce personnage, mais rien ne se passe. Modifions-le de manière à ce que lorsque nous serons dans une certaine plage, nous puissions détecter quand nous sommes dans une certaine plage audio. Et lorsque nous appuyons sur un bouton pour interagir avec ce personnage, nous nous trouvons dans une position où ils ont l'air de parler entre eux. C'est par cela que nous allons commencer. Maintenant, pour avancer, j'ai une barre d'espace de contrôle, et je vais chercher une place. Passons à la troisième personne. Et puis des plans. OK. C'est donc à l'intérieur de cette troisième personne et de ce plan que je veux placer le composant OK ? Alors, cliquez avec le bouton droit. Nous allons simplement taper component. Tiens bon. En fait, avant de passer au composant, configurons une interface. Nous sommes ici l'interface Blueprint. Alors cliquez dessus. Et maintenant, nous avons notre nouvelle interface, s'appelle elle-même New interface. Mais suggérons-le. Nous avons appuyé sur F deux pour changer son nom, et nous allons l' appeler « interagir ». OK ? Donc, en gros, interaction sera notre interface, et c'est ce que nous utiliserons pour parler à notre autre plan, d' accord, pour discuter entre notre personnage et le PNJ Maintenant que ce plan est créé, double-cliquez dessus et remarquez l'intérieur Tout ce qu'il y a là, c'est une nouvelle fonction. OK, et la fonction est actuellement vide, et c'est tout ce dont elle a besoin pour le moment, laissez-moi terminer. Compilez et fermez-le rapidement. Maintenant, la configuration du composant acteur va être un peu plus complexe. Nous allons donc commencer par, bien sûr, l'espace de contrôle. Et puis une fois que nous serons là, nous ne pourrons pas le trouver aussi facilement. Par exemple, si vous venez ici et que vous tapez interface, l'interface Blueprint s'affichera, vous pourrez la sélectionner, et elle est assez facile d'accès Cependant, pour notre composante comédienne, c'est un peu plus complexe. Vous devez d'abord vous rendre au cours Blueprint, puis il vous montrera toutes ces différentes classes Ensuite, vous accédez à toutes les classes et recherchez, et vous souhaitez rechercher un composant acteur. De plus, je n'ai aucune idée de ce que mon chien aboie. Quoi qu'il en soit, vous voulez trouver un objet, un acteur, un composant, et le sélectionner maintenant, il est ici et il dit : «   Hé, nouveau plan », et, vous savez, fermons-le d' abord Barre d'espace de contrôle. Nous avons donc ici notre nouveau plan, et ce plan est acteur de la classe des parents natifs Maintenant, je vais appuyer sur F deux, et je vais l'appeler composant de dialogue Et nous y voilà. Nous avons donc notre composant de dialogue, et nous avons notre interaction. L'interaction est donc l'interface de plan qui va connecter nos deux plans ensemble, et le composant de dialogue est une classe de plan Maintenant que ces deux éléments sont configurés, configurons la détection pour savoir si notre personnage peut détecter l'ennemi et non l'ennemi, le PNJ, et commençons à interagir avec lui Maintenant, pour que la détection fonctionne correctement, la toute première chose que nous allons faire est d' ouvrir le plan de notre personnage à la troisième personne Et vous remarquerez qu'il contient déjà tout le code permettant à ce mannequin de se déplacer Nous n'avons pas besoin d'y toucher. Nous sommes là pour le système de dialogue. Donc, tout en haut, nous allons simplement appuyer sur C et C va créer une zone de commentaires. Je voudrais l'agrandir un peu. Personnellement, je suis un grand fan d'avoir boîte de commentaires complètement noire à 100%. Je vais donc changer cela avec une boîte noire, mais avec des commentaires blancs. Et nous allons appeler cela une interaction de détection. Ça, rien d'autre. Maintenant, nous allons également augmenter la taille de police à environ 50 afin que je puisse facilement voir ce qu'il y a dans ce commentaire, et nous allons conserver le commentaire sous forme de mouvement de groupe. Maintenant, à l'intérieur de cela, tout ce que nous allons faire est de configurer un code pour détecter si un objet interactif se chevauche Maintenant, comment allons-nous faire cela ? Eh bien, pour commencer, nous allons ajouter une sphère autour de notre personnage, qui écoute les objets interactibles Nous allons donc simplement passer aux composants ici, et nous voudrons ajouter un composant . Pour ajouter une boîte à chaleur par ici, que nous utiliserons, il suffit de passer pour ajouter. Et nous voulons rechercher un collisionneur. Mais disons que nous utilisons la collision de sphères. OK ? Alors maintenant, il a ajouté ce petit collisionneur de sphères Élargissons-le en passant à l'échelle. Verrouillons la balance pour qu' elle redimensionne le tout. Maintenant, je ne fais que traîner vers le haut, je pense que cela semble juste Un cinq. Permettez-moi de le rendre encore plus grand à environ six. Ainsi, à chaque fois qu'il entre dans cette région, il détecte la présence d'un objet interactible Maintenant que nous avons cette sphère, je vais passer à la sphère, et je vais l'appeler interaction, c'est une boîte, d'accord ? Puis compilez. Nous avons donc cette boîte de dialogue interactive. Mais bien entendu, dans son état actuel, il ne fait rien parce que nous ne lui avons rien dit de faire. Je vais donc marcher jusqu'ici, et rien ne s'est passé. Cependant, maintenant que nous l'avons, si nous accédons au graphique des événements où nous configurons ce commentaire pour détecter l'interaction, je vais sélectionner l'interaction dans la case , puis ajouter un événement, et l'événement se produira au début du chevauchement des composants. Il l'a essentiellement ajouté quelque part très loin. Contrôle X pour couper, ramenez-le ici, Contrôle V pour coller. Maintenant, nous avons ceci qui se déclenchera en cas de chevauchement des composants, puis pour en revenir à la case d' interaction, je vais ajouter un autre événement sur le chevauchement des extrémités des composants, celui-ci. Le chevauchement se produit lorsque deux choses se superposent. Donc, cette sphère dans la boîte va écouter ou en toucher une autre dans la boîte ou le collisionneur Nous n'avons donc aucun chevauchement de début de composant et aucun chevauchement de fin de composant. Donc, par souci de simplicité, pour détecter, faisons-le glisser et utilisons une simple chaîne d'impression. C'est ce que j'appellerai la fin du chevauchement. OK. Et puis imprimez la chaîne. Et appelez ça Begin Overlap. Nous avons donc maintenant soit l'impression, soit le chevauchement, soit le début. Juste pour être encore plus clair, je vais le configurer de telle sorte que le chevauchement final soit de couleur rouge et que le début du chevauchement soit de couleur verte. Nous aurons donc cette confirmation visuelle sans avoir à lire le texte et à appuyer sur compiler. Maintenant, dans son état actuel, si nous entrons et que nous appuyons sur Play, remarquez qu'il a commencé par dire « Commencer le chevauchement ». Maintenant, il est dit de commencer à se superposer, et de se superposer, commencer à se superposer et de se superposer, commencer à se superposer et de se superposer. C'est une bonne chose. Nous sommes maintenant en mesure de détecter si nous avons chevauché un objet Dans la vidéo suivante, nous allons simplement ajuster le chevauchement souci d'optimisation numéro un, ce qui est très important avec Unreal Engine Et deuxièmement, pour changer ce qui se passe lorsque le chevauchement est détecté, passons à l'étape suivante. 12. 012 Communiquer au plan de PNJ: C'est bon. Maintenant que notre personnage principal est capable de travailler dessus et de commencer à se chevaucher et à se chevaucher, nous pouvons détecter quand il est à portée d'interagir. Apportons quelques optimisations à notre interaction chez Box, Donc, la première chose que nous allons faire est d'entrer dans le plan à la troisième personne Je veux que vous sélectionniez la case d'interaction, et que vous saisissiez plus en détail collision ou COL. Cela fera apparaître tout ce que nous avons besoin de voir. Vous voyez donc qu'à l'heure actuelle, il est configuré pour superposer toutes les dynamiques, ce qui signifie qu' il chevauche tous les différents objets, donc de la physique destructible, mais nous ne voulons pas que cela soit Nous allons le configurer sur mesure. Et maintenant, nous allons dire : «   Hé, quelles sont les réactions aux collisions ? Nous voulons qu'il soit là pour éviter tout chevauchement. Visibilité, non, nous ne voulons pas qu'elle soit là. Non, pas sous la caméra. Et puis, en ce qui concerne les réponses des objets, la seule chose à laquelle nous voulons qu'il réagisse, c'est le pion, c'est tout ce que nous voulions faire Maintenant, juste pour vérifier que cela fonctionne correctement en jeu. Il ne doit détecter que le chevauchement avec le pion. Bien. Donc ça marche. C'est une petite optimisation. Maintenant, la prochaine chose que nous allons faire, c'est dans les mêmes détails de la boîte d'interaction, de rechercher le t. Donc, cela devrait être dit que cela commence par le tic-tac activé, mais nous voulons changer le tick de zéro. En ce moment, au départ, ce moment, au départ, il devrait être de zéro à quelque chose d'un peu plus long, comme 3 secondes. Si nous l'avons réglé sur 3 secondes c' est parce que cela réduira le nombre de vérifications. C'est un peu une optimisation car lorsqu'il s'agit de la prise, la prise signifie essentiellement le calcul, la vérification. Nous l'avons configuré pour vérifier une fois toutes les 3 secondes, car normalement, laissez-moi ouvrir la calculatrice. Si votre jeu tourne à 120 images par seconde, cela signifie que pour chaque seconde, les 120 images, cela signifie que toutes les 0,008 secondes, il fera le calcul Donc, si on fait 1/0 0,00. Et si vous divisez un par 0,083, vous obtenez environ 1:20. Il se déclencherait donc plusieurs fois par seconde. Mais maintenant que nous l'avons réduit à trois, il ne se déclenchera qu' une fois toutes les 3 secondes. Vous ne voulez pas que cet intervalle soit trop long. Vous ne voulez pas que ce soit trop court. OK ? C'est juste quelque chose à garder à l'esprit. C'est bon. Mais maintenant que nous avons cette petite optimisation revenez au plan à la troisième personne, sélectionnez l' interaction de détection, Control C à copier, puis vous allez le coller Control V, puis changer le nom de ce commentaire C'est ce que j'appelle l'interaction avec le feu. C'est là que nous allons appuyer sur un bouton pour commencer à interagir avec le dialogue. Maintenant, pour commencer nous allons ouvrir notre plan à la troisième personne, et par souci de simplicité , nous allons ouvrir notre plan à la troisième personne, et par souci de simplicité, nous allons devoir trouver les commandes. nous allons devoir trouver les commandes Les commandes se trouvent donc dans le dossier appelé input. Donc, à l'intérieur de l'entrée, remarquez qu'il y a un dossier appelé Actions, puis il y a IMC default Permettez-moi de double-cliquer sur IMC default. Consultez les mappages. Oui. Cela contient des mappages pour le saut, le déplacement et l'apparence Maintenant, tout ce que nous allons faire, c'est passer aux actions, et nous allons créer une autre action de saisie. Donc, pour ce faire, permettez-moi de saisir une entrée. Non, laisse-moi m'en sortir. Je ne pense pas avoir besoin de taper ici. Laisse-moi juste venir ici. Je souhaite créer une nouvelle action de saisie. Excellente. Donc, pour souligner la simplicité, je l'appellerai IA underscore interact Voilà donc IA Underscore Interact. Ensuite, je vais passer à la saisie. Je vais double-cliquer sur IMC default, qui correspond aux contrôles d' interaction par défaut Je vais donc passer aux mappages et cliquer sur Ajouter. Et puis voyons voir que celui que je veux ajouter est Interact. Je vais donc cliquer sur Interagir. Maintenant, interagir est quelque chose que je peux associer à un bouton. Je vais le mapper à E sur le clavier. Ce sera suffisant pour le moment. Maintenant, nous faisons cela parce que nous voulons configurer un bouton qui sera utilisé pour interagir. Maintenant que nous l'avons compris, revenons au plan à la troisième personne Tout d'abord, sauvegardez tout. Continuez toujours à économiser. Et nous voulons rechercher le soulignement IA, interagir. Maintenant, j'interagis ici. Ainsi, lorsque nous appuierons sur le bouton, tout se déclenchera ici. Maintenant, par souci de simplicité, faisons d'abord une vérification rapide. Nous allons imprimer la chaîne « hello ». C'est suffisant car nous voulons simplement vérifier rapidement que le bouton fonctionne. Donc oui, quand j'appuie, il tape bonjour mais il écoute régulièrement. Nous allons donc y retourner, nous allons appuyer sur la gâchette. Ensuite, nous allons dire, voyons voir, nous allons faire une branche rapide. Non, nous n'allons pas vraiment nous ramifier. Ce que nous voulons, c'est voir, nous voilà en train de configurer un hochement de tête à faire une fois. Nous n'avons pas besoin d'une branche, cliquez avec le bouton droit de la souris et configurez un nœud Do Once. Ainsi, lorsqu'il est déclenché, il appuie une fois, et lorsqu'il est terminé, il se réinitialise, puis il saisit la chaîne C'est un moyen de lisser les entrées. Alors maintenant, si vous revenez et appuyez sur Play, j'appuierai sur le bouton inter, il ne sort qu'une seule fois. Quand je lâche prise, c'est fait. Cela empêchera donc d'autres cas où il essaie de continuer à appuyer sur le bouton alors que vous le maintenez enfoncé. C'est juste un petit conseil pour toi. Très bien, nous avons maintenant un bouton pour démarrer l'interaction, et nous avons un moyen de détecter rapidement. Emménageons ici. Commencez le chevauchement, finissez le chevauchement, commencez, faites. Je peux appuyer sur le bouton et démarrer l'interaction. Bien. Ce sont donc les éléments de base que nous devons préparer avant d' aller de l'avant. Maintenant, utilisons l' interface que nous avons configurée pour nous connecter au PNJ. Maintenant, pour ce faire, nous devons bien comprendre à moment nous sommes capables d'interagir. Pour ce faire, nous allons configurer une variable très simple. Nous allons donc ajouter une variable, et nous l'appellerons can underscoe interact. Peut en fait souligner, interagir. Et ce sera un booléen où un signifiera non Je veux dire, un va vouloir dire oui et zéro va vouloir dire non. Maintenant, pour des raisons de simplicité, assurez-vous de compiler et de définir la valeur par défaut sur off. La valeur par défaut sera donc toujours fausse ou peut interagir. Alors, venons ici. Je pense que nous allons légèrement réduire la détection afin de pouvoir développer ce commentaire pour en savoir plus. Je vais faire glisser le bouton can interact, et je l'appellerai set, puis je copierai et collerai ces deux nœuds en utilisant Control C pour copier, Control V pour coller. Ainsi, juste après la détection du chevauchement, il indiquera simplement qu'il peut interagir. Et puis, à la fin du chevauchement, nous redéfinirons l'interaction possible pour qu'elle ne soit pas possible. C'est bien. Maintenant que nous l'avons fait, la prochaine chose que nous voulons faire est faire en sorte que lorsque ce bouton est enfoncé, il envoie un message au PNJ lui indiquant que nous voulons interagir avec vous Maintenant, c'est assez simple. Nous allons commencer par revenir au bouton d'interaction avec le feu. Nous allons fermer ce son pour qu'il ne soit pas trop long. OK. Ensuite, après avoir fait une fois, au lieu d' imprimer une chaîne, nous allons créer une branche. Une succursale signifie qu'elle peut suivre l'une des deux voies suivantes. Donc, avec cette branche, permettez-moi d'augmenter la taille de ce commentaire. À partir de cette branche, nous allons faire glisser le bouton « can interact get place this here », puis le connecter à la condition. Maintenant, la raison pour laquelle nous le faisons est que nous voulons écouter et découvrir s'il peut interagir, puis il devrait se déclencher. OK ? C'est vrai. Donc, lorsque nous appuyons sur ce bouton, le code que nous avons mis ici sera déclenché. S'il ne le peut pas, il ne fera rien. C'est essentiellement tout ce que nous devons faire. Nous avons donc maintenant un moyen de détecter si nous pouvons interagir ou non. Et nous avons un moyen d' envoyer un message à l' autre objet si nous le pouvons. Maintenant, cette partie va devoir connecter les deux. Donc, ce que nous allons faire, c'est faire glisser l'autre composant acteur vers l'extérieur afin de pouvoir nous connecter à l'autre acteur avec lequel nous nous chevauchons pour interagir avec lui. Revenons maintenant en arrière et jetons un coup d'œil à nouveau à notre interface. Notre interface s'appelle donc Interact. Double-cliquez dessus. Et à l'intérieur d'interact se trouve une fonction simple appelée nouvelle fonction. Nous allons changer son nom en fonction de soulignement d' interaction. OK, c'est ce qu'on appelle une fonction d'interaction. Maintenant, si nous revenons au plan à la troisième personne, vous verrez l'autre acteur. Si nous nous éloignons de l' autre acteur pour aller dans l'espace, et quand Unreal Engine nous demande ce que nous voulons, nous tapons le mot interagir Et en descendant, vous remarquerez qu'il existe une classe avec interaction, un moyen d'envoyer un message, et elle affiche une fonction d'interaction. Cliquons donc sur cette fonction d'interaction. Ah, et regardez ce que nous avons ici. Nous avons donc maintenant une fonction d' interaction prête à recevoir une entrée lui demandant de se déclencher. Nous allons donc le récupérer et le traîner ici à ici. Et nous dirons : Hé, s'il est vrai que le joueur a appuyé sur le bouton et qu'il peut interagir, activons cette fonction d' interaction spécifique. Et remarquez, il n'a qu' une cible, et à partir de là, il va envoyer un message au PNJ indiquant qu'il veut interagir avec lui Alors compilons rapidement. Et maintenant, à l'intérieur du PNJ, nous allons également ajouter des nœuds Mais pour commencer, juste pour vous assurer que rien n'est cassé, vous vous rendez ici, et en appuyant sur E, rien ne se passe Je viens ici. Oh, oui, il n'existe pas encore de méthode appropriée pour détecter un moment, appuyez sur Ctrl S pour enregistrer le code. Nous devons maintenant accéder au PNJ pour nous assurer que nous pouvons réellement détecter le moment où le joueur a appuyé sur le bouton Maintenant, ce que nous allons faire, c'est passer au plan paysan des PNJ, puis nous allons passer aux cours En haut, lorsque vous regardez le graphique des événements, il y a un bouton appelé paramètres de classe, sur lequel vous devez cliquer. Ensuite, dans les paramètres de classe, vous allez voir une option pour les interfaces dans les détails, puis vous allez ajouter une interface, et nous allons simplement l'appeler interaction. Nous y voilà. Maintenant que l' interface d'interaction est ajoutée, comme vous pouvez le voir, elle est là, va nous permettre d'accéder à une fonction qui a été appelée depuis un autre plan, essentiellement Maintenant que c'est fait, faisons quelque chose à l'intérieur du PNJ lorsque le joueur appuie sur un bouton Donc, si vous êtes à l'intérieur du PNJ, cliquez avec le bouton droit de la souris puis que vous tapez « interagir », remarquez que maintenant, sous l' interface de saisie d'interaction, droite, vous avez une fonction d' interaction Appuyons dessus. Nous avons donc maintenant cette fonction d'interaction à laquelle nous avons accès. Bien que vous puissiez utiliser cette fonction d'interaction pour être activée, disons, au début du jeu ou pour une autre interaction, ce n'est pas fondamentalement ce que nous voulons. OK. Et si vous double-cliquez dessus, cela vous permet d'interagir. Ce n'est pas ce que nous voulons. en revenir au paysan, si vous faites défiler l'écran vers le bas, vous remarquerez qu' un nouvel événement est également en cours. Et cet événement est appelé fonction d'interaction. Et c'est cet événement sera appelé lorsque le bouton d'interaction sera activé. Appelons donc une chaîne d'impression rapide. Et nous allons laisser ça sur Hello. Nous sommes juste en train de faire une brève démonstration. Disons que c'est interagir. C'est ce qu'il va imprimer. Alors compilez et revenez en arrière et essayons à nouveau d' interagir. Donc, dès que j' appuie sur le bouton, remarque qu'il se trouve dans le coin supérieur gauche. Cela montre avec succès que l'interaction fonctionne. Maintenant que l' interaction fonctionne, nous passons à la bonne position pour le dialogue. Maintenant, si j'appuie sur E ici, laissez-moi m'assurer que vous pouvez le voir. Je vais vous montrer mon clavier. Appuyez donc sur Play. Si j'appuie sur E d' ici, rien ne se passe. Cependant, une fois que je suis à portée de main, commencez à vous chevaucher. Au moment où j'appuie sur E, cela indique que j'interagis. OK ? Mais une fois hors de portée, quand je suis hors de portée, quand j'appuie sur E, rien ne se passe. C'est tout ce dont nous avons besoin pour démarrer correctement la mise en place du système de dialogue. Ensuite, nous allons voir comment repositionner le personnage du joueur au bon endroit pour que le dialogue commence 13. 013 Repositionner le joueur pour le dialogue: C'est bon. Donc, la prochaine chose que nous allons faire est de le configurer. Ainsi, chaque fois que vous essayez d'interagir, lorsque vous êtes à portée, votre personnage principal se met en position de parler. essentiellement que Cela signifie essentiellement que nous allons installer un objet sur le PNJ dans cette région Et chaque fois que le personnage du joueur entre, pour parler au PNJ, le personnage du joueur se déplace juste devant lui ce faire, la première étape consiste accéder au plan paysan du PNJ, la fenêtre d'affichage, et à y ajouter un objet simple, que nous allons utiliser pour positionner Maintenant, la façon dont j'aime le configurer est simplement d'ajouter un composant, et je veux ajouter un simple collisionneur de boîtes C'est bon. Maintenant, je vais appeler cette position parlante du box collider C'est tout ce qu'il doit faire. C'est la position dans laquelle le joueur doit se trouver lorsqu'il dialogue. Je vais le faire glisser jusqu'à environ 200 unités sur l'axe X. Et c'est tout ce que j'ai à faire. Je l'ai fait glisser jusqu'à 200 unités le long de l'axe X, il se trouve donc devant notre PNJ Si nous regardons le monde, c'est par ici. C'est suffisant pour la plupart des conversations. Des conversations avec des marchands, des conversations avec des alliés ennemis, c'est une bonne idée. Maintenant, plus tard, vous pourrez ajuster ce p sur la base d'un PNJ, mais il en sera là pour le moment Maintenant que nous en avons fini avec cela, revenons au paysan PNJ et revenons au graphique des événements Maintenant que la fonction d' interaction événementielle est en cours d'exécution et qu'elle est configurée pour imprimer une chaîne, nous allons la remplacer par des nœuds qui modifieront la position du personnage du joueur. ce faire, nous allons maintenant utiliser l'interface d' interaction pleinement l'interface d' interaction pour la première fois. Passons donc à l'interface d'interaction. Où que vous l'ayez placé, qui interagit, double-cliquez dessus et assurez-vous qu'il est facilement accessible. Donc, à l'heure actuelle, l'interface d' interaction possède une fonction d'interaction. Mais cette fonction n'a aucune entrée, ni aucune sortie. OK. Nous allons maintenant changer cela pour qu' il y ait des entrées, et qu'il y ait des sorties que nous pouvons utiliser. Et cela va nous permettre de transmettre des données via la fonction d'interaction. Maintenant, la toute première chose que nous allons faire est sélectionner la fonction d'interaction puis nous allons entrer dans ses détails, et nous allons ajouter une entrée. Je l'ai ajouté et je l'ai fait en plus. Maintenant, cette entrée, je vais appeler ce joueur personnage. Maintenant, si je l' appelle personnage joueur, c' est parce que je vais changer son type afin que nous puissions l'utiliser pour faire référence au personnage du joueur. Maintenant, le type que nous recherchons sera une référence d'objet. Non, ce n'est pas une référence à un objet de caméra de base. Ce que nous voulons, c'est l'objet acteur. Tapez donc acteur, et vous devriez le voir ici. Type d'objet, acteur, et nous aurons cette configuration comme référence d'objet. Nous avons donc maintenant notre acteur ici et il est configuré comme référence d'objet de base. Assurez-vous que cela fonctionne correctement. Acteur, c'est le personnage du joueur. Alors maintenant, la fonction d'interaction a un personnage de joueur. Control S pour enregistrer, compiler rapidement, je suppose, enregistrer également tous les Control Shift S, tout enregistrer. Revenons maintenant à notre personnage à la troisième personne, c'est le plan du personnage du joueur, et voyons comment la fonction d'interaction a changé Maintenant, en ce qui concerne l'interaction avec le feu, remarquez qu'il existe une nouvelle entrée appelée personnage du joueur. Il écoute donc le personnage du joueur comme une forme de donnée ou de référence qu'il est prêt à accepter. Et puis si vous entrez dans le PNJ paysan, vous remarquerez qu'il existe désormais une sortie appelée personnage joueur C'est la manière fondamentale de transmettre des données d' un plan à un autre et de les laisser communiquer entre elles OK, maintenant que nous avons le personnage du joueur ici, nous pouvons changer sa position au moment où vous interagissez. Nous allons maintenant commencer par le personnage à la troisième personne, car nous devons ajouter ici une référence au personnage du joueur. Maintenant, à l'intérieur de votre personnage de joueur, il est simple d' obtenir une référence. Il suffit de taper self, et nous obtenons une référence à soi car ce plan est exactement le personnage du joueur Et maintenant, nous allons pouvoir accéder à toutes les propriétés du soi dans la fonction d'interaction. Compilons ça. Passons maintenant au paysan PNJ. Et maintenant, en tant que personnage du joueur, ajuster sa position pour qu' il se déplace ici va être assez simple. Vous allez donc, tout d' abord, commencer par faire un simple commentaire, appuyer sur C, et je préfère régler la taille du téléphone sur 50 et la couleur d'arrière-plan sur totalement noire maintenant que nous avons ce commentaire. D'accord, développons-le car cela occupera un espace raisonnable. Et le but de tout le texte ici est de donner plus de place au joueur par rapport à la position de discussion. C'est essentiellement tout ce qu'il va faire. Maintenant que nous avons ce setter, je peux récupérer tous ces autres nœuds et les faire glisser. Ils ne sont pas importants pour nous. Nous n'en avons pas besoin. Ainsi, à partir de la fonction d'interaction événementielle, nous allons faire ressortir le personnage du joueur et nous voulons obtenir la position de l'acteur. Cela va donc conserver l'emplacement ou nous permettre d'accéder à l'emplacement du personnage du joueur, et nous allons le laisser là. Nous voulons maintenant ajouter un nœud pour définir l' emplacement et la rotation de l'acteur. Nous allons donc nous éloigner de la fonction d' interaction de l'événement principal, et nous allons dire définir la position de l' acteur, ce qui nous donnera accès à la position et à la rotation de l'acteur, et nous y arriverons. Et nous allons l' utiliser pour modifier l'emplacement et la rotation de l'acteur. Maintenant, vous pourriez dire, quel acteur ? Eh bien, ce sera certainement le personnage du joueur. Permettez-moi de le faire glisser vers le haut, et sera la cible que nous allons utiliser. Alors compilons rapidement. À l'heure actuelle, il est configuré pour simplement changer son emplacement en 000. Voyons donc si cela fonctionne comme prévu. Donc, si vous retravaillez le personnage et que vous appuyez simplement sur E. Oui, il est téléporté à l'emplacement 000 Pas là où nous voulons qu'il soit, mais au moins nous savons que le code fonctionne correctement. Cela revient à interagir avec le paysan PNJ. Ce que nous allons faire, c'est diviser la douleur structurelle de l'emplacement, fendre l' épingle de la structure. Donc, ce que nous voulons faire, c'est conserver l'emplacement Z actuel. En d'autres termes, sa hauteur. Nous voulons conserver sa hauteur, et tout le reste est ce que nous laisserons changer. C'est sa position horizontale. Le Z va donc être réglé sur cette position. Ensuite, ce que nous allons faire, c'est appeler une référence au soi. C'est le PNJ lui-même. Et ce que nous allons faire, c'est obtenir une rotation des acteurs. Oh, j'ai mal saisi rotation, obtenu la rotation de l'acteur, puis nous voulons diviser cette valeur Et ce que nous voulons, c'est que le personnage du joueur soit face à face avec le PNJ à qui il parle Nous allons donc également diviser la goupille de la structure lors de la rotation. Ensuite, ce que nous allons faire c'est obtenir la rotation Z, qui correspond au jaune d'oeuf, puis nous allons y ajouter des éléments Et lorsque nous ajouterons, le montant que nous ajouterons sera exactement un, il fera exactement 180 degrés. La raison pour laquelle nous utilisons 180 degrés c'est que nous en obtiendrons la rotation. Et lorsque vous ajoutez 180 degrés, c'est comme si vous faisiez demi-tour. Cela garantira donc que le personnage du joueur affrontera le PNJ. Voyons donc à quoi cela ressemble. Je vais donc me diriger vers le PNJ. Au moment où j'appuie sur E, remarque que le personnage du joueur fait directement face au PNJ. Maintenant, laissez-moi détourner le regard, juste pour le montrer plus clairement. Je détourne le regard mais je suis à portée d'interaction. Maintenant, je le regarde droit dans les yeux. C'est parfait. Cela fonctionne correctement. C'est bon. Revenons donc au graphique des événements. Maintenant que la configuration est correcte à 180 degrés, c'est la nouvelle rotation Z. Ensuite, nous allons devoir définir la position réelle de l'acteur jusqu' au nouvel emplacement Y et au nouvel emplacement X. Souvenez-vous de la boîte que nous avons créée et qui indique la position de pointe. Nous allons faire glisser la position de remorquage ici, puis nous trouverons la position OK, nous allons trouver un endroit sauvage. Un emplacement sauvage est ce dont nous avons besoin. Ensuite, nous diviserons cette épingle, puis nous ajouterons la position X et la position Y. Avec tout cela, permettez-moi de bien les réunir ici Ainsi, ces nœuds sont tout ce dont nous avons besoin pour mettre le personnage du joueur en position de conversation pour notre système de dialogue. Je vais donc venir ici. J'appuie sur E, et j'ai l'air d'avoir position de conversation parfaite et idéale. Maintenant, pour le moment, j'ai toujours le contrôle du personnage. OK. Mais ensuite, nous allons le configurer de telle sorte qu'au moment où vous entrez en position de conversation, vous perdiez le contrôle du personnage, et nous ajouterons une interface utilisateur en haut, puis nous passerons à cela expliquant comment faire en sorte que ce dialogue déroule entre les deux personnages. Allons de l'avant. 14. 014 Configuration de la fonction de composant de dialogue: C'est bon. Nous sommes maintenant dans une position où notre personnage peut se diriger vers un PNJ et, en appuyant sur le bouton, il est en position de parler Ensuite, configurons la fonction du composant de dialogue. Maintenant, ouvrons le plan paysan des PNJ. Et vous remarquerez tout de suite qu'elle possède fonction d'interaction événementielle qui obtient les données du personnage du joueur et les utilise ensuite pour réaligner la position du personnage du joueur avec une position et une rotation simples définies de l'acteur Nous allons maintenant utiliser le composant de dialogue que nous avons créé précédemment, maintenant la barre d'espace de contrôle. N'oubliez pas que nous avons créé l' interface d'interaction Blueprint que nous avons utilisée pour communiquer entre le plan du personnage de Clare et le PNJ, et elle se OK, nous l'avons utilisé dans Interact, et c'est ce que nous avons utilisé jusqu'à présent. Maintenant, nous allons ajuster notre composant de dialogue. Double-cliquez donc rapidement sur ce composant de dialogue. Maintenant, en double-cliquant, il s'ouvre ici. Ouvrons l'éditeur Blueprint complet. Maintenant, le composant de dialogue, comme nous le voyons ici, possède une coche d'événement et le début de la partie est activé. Nous n'allons pas utiliser le tick de l' événement pour commencer à jouer, donc je vais simplement les supprimer. Nous n'en avons pas besoin pour le moment. Mais ce dont nous avons besoin, c'est d'une fonction simple. Nous allons donc simplement cliquer avec le bouton droit de la souris et nous voulons créer un événement personnalisé. J'ai tapé Custom. Cela nous donnera la possibilité d'organiser un événement personnalisé. J'ai cliqué sur l'événement personnalisé, et nous l'appellerons Talk C'est bon. Maintenant que nous avons configuré cet événement personnalisé Tk, ce que nous voulons de Tk, c'est créer une interface utilisateur simple et l'appliquer à l'écran. Et à l'intérieur de cette interface utilisateur, souvent appelée widget dans Unreal Engine, nous allons l'utiliser pour gérer le système de dialogue Allons-y étape par étape afin que vous ayez une compréhension complète. Maintenant, à partir de l'événement personnalisé Tk, vous allez le faire glisser et créer un widget. C'est ça. Maintenant, pour l' instant, c'est vide. Nous devons créer une classe, mais pour le moment, nous allons simplement la laisser telle quelle. Nous n'avons pas encore créé le widget. Il s'agit simplement de le configurer. Donc c'est censé le construire, d'accord ? Maintenant, après avoir construit ce widget, nous voulons maintenant ajuster l'interface utilisateur, ce qui signifie essentiellement que nous voulons l'ajouter à la fenêtre d'affichage Nous voulons donc le faire glisser et nous allons dire ajouter à la fenêtre d'affichage. Et qu' ajoutons-nous à Viewpot ? Nous ajoutons tout ce que nous allons construire pour construire des contrôles. Ne t'inquiète pas. Cela sera compilé plus tard. Nous voulons juste le configurer. Maintenant que nous construisons un widget et que nous l' ajoutons à la fenêtre d'affichage, la prochaine chose que nous voulons faire est de simplement obtenir un contrôleur de joueur. OK. Et depuis la manette du joueur. OK, à partir de la manette du joueur, nous allons faire glisser le curseur, puis nous allons régler le mode de saisie. OK. Et nous allons régler le mode de saisie uniquement sur l' interface utilisateur. En d'autres termes, le personnage de notre joueur ne doit contrôler aucun mouvement. Il est configuré pour être strictement contrôlé par l'interface. Permettez-moi de déplacer la manette du joueur vers le bas. Ensuite, en ce qui concerne le widget sur lequel nous allons nous concentrer, faisons glisser la valeur de retour. Parce que le widget que nous créons sera celui sur lequel nous allons nous concentrer. Ensuite, il y a encore une chose que nous allons ajuster. Nous allons nous assurer que le curseur de la souris est affiché. Nous allons donc définir le curseur de la souris. En fait, non, afficher le curseur de la souris. Alors, réglez, affichez le curseur de la souris. Et nous voulons que l'affichage du curseur de la souris soit vrai. OK ? Permettez-moi donc d'aborder cette question très rapidement. Il existe un événement personnalisé dans le composant de dialogue appelé Talk que nous avons créé. Nous l'avons configuré pour créer un widget que nous n'avons pas créé, mais nous allons l'insérer ici. Nous n'avons pas encore configuré le joueur propriétaire, mais nous y reviendrons plus tard. Nous allons l'ajouter à la fenêtre d'affichage. Nous allons connecter cette valeur à partir du widget créé. À partir de là, nous définirons également l'interface utilisateur du mode de saisie uniquement après avoir obtenu la manette du joueur, et nous configurerons le widget d'entrée pour se concentre sur celui que nous construisons, et à partir de la manette du joueur, nous ferons glisser à nouveau le curseur de la souris vers l'arrière et réglerons le curseur d'affichage de la souris sur vrai. Alors maintenant, tout ce trône funk est destiné à créer un widget d'interface utilisateur Et ajoutez-le à la fenêtre d'affichage. Maintenant que nous avons cette configuration, créons rapidement un widget afin de pouvoir le tester. Mais avant de créer ce widget, nous avons maintenant ce composant de dialogue. J'appuie sur Control et S. Cette fonction Tk est donc prête. Compilation rapide. Revenons maintenant au paysan PNJ Maintenant, sur le côté gauche, cliquons sur AD et ajoutons DL. Ajoutons donc un composant de dialogue. Alors maintenant, un composant de dialogue y est attaché. OK ? Et si nous cliquons sur ce composant de dialogue, sur la droite, il ne nous montre que quelques informations de base. Rien de vraiment important pour nous maintenant. Mais plus tard, nous allons l'utiliser pour stocker certaines variables. Quoi qu'il en soit, maintenant que le composant de dialogue est là, juste après la fonction d' interaction avec les événements, que nous déplaçons le joueur en position de conversation et que nous imprimons cette chaîne, nous allons maintenant le lier à fonction spéciale que nous avons créée dans le composant de dialogue appelée toque Et pour cela, il suffit de taper toque. Et remarquez ici vous avez accès à cette fonction toque depuis le composant de dialogue Et faisons-le glisser et connectons-le pour qu'il soit maintenant compilé. Maintenant, une fois le joueur placé dans cette position, il essaiera de déclencher le composant de dialogue toque Maintenant, voyons rapidement OK, non résolu, jouons à un éditeur Il n'est certainement pas encore prêt car nous n'avons pas encore joint le widget, mais voyons vite. OK, donc ce n'est pas encore une connexion. Créons maintenant cette barre d'espace de contrôle du widget. Et je vais essentiellement dire non, laissez-moi quitter le dialogue. Permettez-moi de m'en tenir à ces plans de simplification. Maintenant, cliquez avec le bouton droit de la souris, puis nous voulons passer à l'interface utilisateur et au Widget Blueprint, et nous l' appellerons simplement widget utilisateur, gros, parce que tout est pour l'interface Et appelons ce widget de dialogue. OK. Nous avons donc notre widget de dialogue, les contrôles. Et si nous double-cliquons sur le widget de dialogue, il s' ouvre et ouvre cette interface où nous pouvons modifier le widget. Maintenant, la première chose que nous allons faire est d'aller sur le côté gauche du widget et d'ajouter un panneau Canvas. Le panneau Canvas va le faire glisser vers l'intérieur. Le panneau Canvas est essentiellement notre écran, d'accord ? Ensuite, par souci de simplicité, je vais simplement ajouter un texte. Et dans le bloc de texte, je vais le modifier sur la droite. Je vais juste dire que le dialogue fonctionne. OK. Assurez-vous simplement que la taille du texte est suffisamment grande pour qu'il ne mène nulle part. Donc, essentiellement, nous avons un widget simple, indique simplement que le dialogue fonctionne. Nous allons maintenant revenir au composant de dialogue. Et nous allons sélectionner la classe, et la classe est un widget de dialogue. Nous allons donc sélectionner le widget de dialogue, et nous compilons rapidement. Il ne devrait donc plus y avoir d'erreurs de compilation. Donc compilons ça, compilons, assurons-nous que tout est correctement compilé, et testons-le. Passons donc à notre PNJ parlant. Appuyez sur le bouton d'interaction. Et remarquez maintenant qu'il indique que le dialogue fonctionne et que j'appuie sur des boutons. Permettez-moi de vous montrer mes contributions. J'appuie sur des boutons, j'appuie sur un mouvement, je ne peux pas me déplacer car cela nous a complètement empêchés de démarrer le dialogue, et nous ne pouvons désormais interagir qu'avec l'interface utilisateur. Maintenant que tout est configuré, nous allons maintenant ajouter un peu plus de données. La façon dont nous allons ajouter les données est d' obtenir des informations à partir de cette fonction d'interaction, qui se obtenir des informations à partir de cette fonction d'interaction, trouve dans le plan à la troisième personne, qui est notre plan de joueur Donc, pour le moment, cette fonction ne prend que les données du personnage du joueur, mais elle va en prendre beaucoup plus. Ensuite, nous allons augmenter le nombre de variables de notre composant de dialogue qu'il va accepter, et il va fournir des données à la fonction T, et il va envoyer des données à ce widget. Cela va avoir du sens, et je vais vraiment y aller étape par étape, pour que cela ait du sens tout au long du processus. Maintenant, dans la vidéo suivante, nous allons développer cela. Et ce que nous allons faire, c'est configurer de telle sorte qu'une fois que vous serez venu discuter, la boîte de dialogue commence à jouer. Il va donc y avoir deux vidéos. La vidéo suivante présentera un aperçu rapide de la façon d' enregistrer un dialogue et de le placer dans un véritable moteur, car nous devons ajouter le dialogue pour ce PNJ Ensuite, nous allons passer en revue un bref aperçu de la façon dont les paramètres fonctionnent actuellement, de la façon dont tout est configuré, puis, juste après, ce seront des vidéos très rapides pour nous assurer que vous êtes au courant. Ensuite, nous allons faire en sorte que le PNJ commence à parler Faisons-le et continuons dans la vidéo suivante. 15. 015 Bouton de la boîte de dialogue de sortie: Maintenant, dans notre projet actuel, vous pouvez vous diriger directement vers le PNJ et appuyer sur le bouton d'interaction, ce qui nous enferme dans une conversation Ensuite, nous allons configurer le bouton de sortie de la boîte de dialogue afin de pouvoir quitter cette conversation. Maintenant, pour le configurer, rendez-vous dans le widget de dialogue. À l'intérieur du widget de dialogue, il va y avoir un graphique. Nous allons donc établir les plans ici même. Maintenant, je ne vais rien toucher à tout ça pour le moment. Maintenant, dans la vue concepteur, ajoutons un bouton. Je vais taper le bouton ici pour qu'il puisse trouver un bouton. J'ai ce bouton. Je vais le mettre ici. Permettez-moi d'augmenter légèrement sa taille. Ensuite, je vais chercher du texte. Et je vais ajouter du texte sur le bouton. Nous y voilà. Et je vais appeler ce bouton. Je vais le renommer avec F deux. Je vais l'appeler exit, underscore button. Et puis en ce qui concerne le texte, je vais le renommer, puis je vais l' appeler exit, le bouton de soulignement souligne C'est bon. Et en ce qui concerne le texte, je vais sélectionner le texte, puis le contenu du texte, nous allons l'appeler exit. Juste ça, en restant incroyablement simple. Maintenant, je n'aime pas la couleur de ce bouton. Pour plus de simplicité, permettez-moi ajuster car je veux qu'il soit vraiment facile à voir. C'est donc notre bouton de sortie. Je suis venu ici et j' ai changé la couleur de fond. Maintenant, pour le rendre utilisable, nous voulons nous assurer que ce bouton de sortie situé ici est configuré en tant que variable. Une variable va nous la rendre accessible. Et puis, en bas, nous voulons avoir un événement pour les personnes non cliquées Nous allons donc ajouter un clic sur ce plus. Et maintenant, il a créé pour nous un bouton non cliqué. Avant de publier tout le code, nous allons configurer une commande et appeler cette boîte de dialogue de sortie. OK. Donc, ce commentaire indique le dialogue de sortie, même chose. J'aime que la taille du téléphone soit 50, puis que la couleur de fond soit entièrement noire, de sorte que lorsque j'ai beaucoup de nœuds, je puisse facilement les suivre. Voici donc le commentaire du dialogue de sortie. OK. Dès que vous cliquez sur ce bouton, nous voulons quitter la boîte de dialogue Maintenant, quitter la boîte de dialogue signifie essentiellement que nous voulons changer le mode de saisie. C'est tout ce que nous devons faire. Donc, à titre d'explication simple pour que nous soyons tous sur la même longueur d' onde, compilons-le Ainsi, lorsque nous basculons et accédons au composant de dialogue pour accéder à un événement, l'une des premières choses que nous faisons est de définir le mode de saisie uniquement sur l'interface utilisateur, et de configurer le curseur de la souris pour qu'il apparaisse. Donc, tout ce que nous allons faire, c'est inverser ces deux actions. Revenons au widget. Le commentaire de la boîte de dialogue de sortie a donc cliqué. Donc, la première chose que nous voulons faire est d'obtenir la manette du joueur. Nous allons l'utiliser. Une fois que nous aurons obtenu la manette du joueur, la prochaine chose que nous voulons, c'est de la sortir de la manette du joueur , de composer le mode de saisie et de le configurer uniquement pour le jeu C'est donc la première chose que nous devons inverser. Nous avons terminé. OK. Maintenant que nous avons réglé le mode de saisie sur jeu uniquement, la prochaine chose que nous voulons faire est de masquer le curseur de la souris. Alors, sortons ça d'ici. Ensuite, nous allons taper le curseur de la souris, faire défiler la page vers le bas, rechercher cette fonction. Disons que l'affichage du curseur de la souris est ce que nous recherchons. Et nous voulons définir l'affichage du curseur de la souris, non, car nous ne voulons pas afficher le curseur de la souris. Maintenant, développons cela car il y en a d'autres à venir. Maintenant, nous avons réglé le mode de saisie jeu uniquement et à partir de la manette transparente, et nous avons masqué le curseur de la souris. La prochaine chose que nous devons faire est de détruire le widget que nous venons de créer. Maintenant, le détruire est en fait assez simple. Nous allons simplement cliquer avec le bouton droit de la souris et taper supprimer du parent, ce qui va le supprimer de son parent. Excellente. Ensuite, nous voulons supprimer, nous voulons supprimer tous les widgets de l'écran. Nous voulons donc supprimer tous les widgets. Maintenant, si vous travaillez sur un jeu prêt pour la production, il se peut que vous ne souhaitiez pas le faire en fonction de vos widgets et de la façon dont vous les avez configurés, sauf si vous souhaitez actualiser tous vos autres widgets. Mais juste pour cet exemple, nous pouvons supprimer tous les widgets. Et puis la dernière chose que nous allons faire , c'est ramasser les déchets. C'est pour l'optimisation. La raison en est que tous ces widgets supprimés de l'écran ne sont pas immédiatement détruits. Nous voulons simplement nous assurer qu'An real Engine sait comment nettoyer toutes ces données inutiles. Alors maintenant, avec cette configuration telle qu'elle est, nous allons ouvrir une boîte de dialogue avec ce bouton ici. Nous allons régler le mode de saisie uniquement sur le jeu, désactiver l'affichage du curseur de la souris. Nous supprimerons ce widget du parent, supprimerons tous les widgets et collecterons les déchets pour le supprimer complètement. Maintenant, voyons à quoi cela ressemble dans le jeu. Assurez-vous de compiler rapidement, puis de contrôler S pour tout enregistrer et de contrôler Shift S pour tout enregistrer. Revenons maintenant au vrai moteur, afin que vous puissiez travailler avec votre personnage. J'ai appuyé sur E. Nous sommes maintenant dans le dialogue, comme vous le voyez, comme vous le voyez , le dialogue de texte fonctionne, s'affiche. Il y a le bouton de sortie. Dès que je clique sur le bouton de sortie, j'ai à nouveau le contrôle. OK. Maintenant, laissez-moi le montrer tout en montrant les boutons sur lesquels j' appuie et m'assurer qu'ils fonctionnent exactement du même côté de votre côté. Viens ici, je peux me déplacer et regarder autour de moi. Dès que j'engage un dialogue, peu importe ce que j'appuie et je ne peux pas me déplacer. Je ne peux pas changer l' endroit où je regarde. Au moment où je clique sur Quitter, je suis parti et je peux me déplacer. Cela devrait fonctionner exactement de cette façon. Nous avons donc maintenant un moyen de sortir de la boîte de dialogue. Ensuite, introduisons la boîte de dialogue du PNJ dans le jeu, puis le PNJ commencera à parler Allons-y et faisons-le dans la vidéo suivante. 16. 016 Explication finale du processus de préparation des dialogues: Maintenant, avant d'ajouter la boîte de dialogue PNJ, je vais décrire rapidement comment j'utilise le processus que je vous ai déjà expliqué Donc, pour commencer, nous vous avons déjà ou nous vous avons déjà montré comment j'ai enregistré le dialogue du joueur tout seul. Ensuite, il suffit d'enregistrer le dialogue paysan. Maintenant, toutes les boîtes de dialogue que je lance et que je finis d'enregistrer sont marquées en jaune . Après avoir enregistré le dialogue, il est découpé de la même manière que je l'ai fait pour le dialogue du joueur et exporté. La boîte de dialogue est exportée dans cette structure de dossiers. Tout d'abord, nous avons la langue, qui est l'anglais, pour ce dialogue. Et puis je cherche que j'ai créé un dossier. J'appelle ce sous-titre de PNJ Peasant 001, mais vous pouvez le nommer en fonction de votre personnage Dans ce dossier, nous avons la quête et dans cette quête spécifique, voici comment se nomme la quête. Nous avons la langue, le langage, le caractère dans lequel cette ligne est utilisée, le contexte, qui est défini ici sur la quête zéro, zéro, puis le numéro de dialogue réel. Il s'agit donc de la première ligne de cette quête, de la deuxième ligne, puis de la troisième ligne, puis de la quatrième ligne. C'est l'organisation. Et puis tout cela fait désormais partie de notre projet Unreal Engine Comme d'habitude, Unreal Engine détectera toutes ces mises à jour et demandes de saisie Bien entendu, saisissez tous ces actifs. Alors maintenant, avant de passer à autre chose et d'entrer réellement dans la boîte de dialogue, si nous allons dans notre dossier de dialogue, que nous avons très bien organisé, double-cliquez sur Anglais. Maintenant, il y a un dossier appelé NPC Peasant 001, Quest 00, et quelques dialogues Je le reconnais. OK, la boîte de dialogue est donc prête à être utilisée dans l'Unreal Engine Et puis il y a la joueuse. OK, et jouez aussi un dialogue masculin. Maintenant que toutes nos boîtes de dialogue prêtes à fonctionner dans Unreal Engine, que notre personnage principal est configuré pour pouvoir travailler dessus et entamer travailler dessus et et que notre personnage principal est configuré pour pouvoir travailler dessus et entamer le dialogue ici pendant que nous pouvons sortir, nous passons à les personnages parlent réellement avec leur voix, les différentes lignes qui ont été enregistrées pour eux Nous y reviendrons dans la vidéo suivante. 17. 017 Ajout d'un composant vocal au PNJ: C'est bon. Nous allons maintenant ajouter une composante vocale à notre PNJ. Actuellement, nous pouvons aller chez le PNJ et lancer le dialogue, puis simplement sortir, mais rien ne se passe entre les deux. Nous allons le configurer. Donc, une fois que nous aurons commencé, le PNJ prononcera une ligne de dialogue Maintenant, pour que tout cela fonctionne, nous allons passer au plan des PNJ Et une fois que nous aurons compris le plan des PNJ, nous chercherons un poste pour mettre nos codes vocaux Donc, si nous nous rapprochons , c'est à l' endroit où se trouve la bouche que je veux ajouter la composante vocale, et le véritable moteur ne possède pas de composant spécifique unifié pour la voix, mais nous pouvons ajouter un composant audio à ce PNJ spécifique Maintenant, sur le côté gauche, allez simplement sur Ajouter des composants, et vous souhaitez ajouter un composant audio, ou vous pouvez simplement sélectionner l'audio. Maintenant, compte tenu de la façon dont j'aime organiser les choses, j'aime appeler ce PNJ une voix soulignée OK. Donc en fait, d'habitude, je ne l'appelle pas voix. J'aime l'appeler NPC Underscore Mouth. J'aime bien dire que c'est une bouche, d'accord ? C'est essentiellement ce que c'est. Ce composant va donc être localisé. Donc pour le moment, c'est juste là. J'ai sélectionné la bouche du PNJ. Je vais le faire glisser vers le haut, et je vais le faire glisser jusqu' à l'endroit où se trouve la bouche du PNJ, juste par ici Donc maintenant, chaque fois que ce PNJ parle, il produit un son provenant de cet endroit précis Nous y reviendrons un peu plus tard. Tout ce qui compte, c'est que nous avons la bouche d'un PNJ en ce moment, et compilons rapidement Maintenant que nous avons la bouche d'un PNJ, voyons rapidement comment Unreal Engine gère le Donc, si nous devions entrer dans le niveau maintenant, je mettrais un fichier audio juste devant l'endroit où se trouve le personnage du joueur. Ouvrons-en donc un rapidement. Je vais entrer dans la boîte de dialogue. OK, c'est donc la ligne vocale du PNJ. Je l'ai placé juste ici, puis sur le côté droit, je veux m'en assurer. Sur le côté droit, nous voulons nous assurer qu'il est configuré pour lecture automatique, en nous assurant simplement que la fonction de lecture automatique est bien activée, oui, elle est configurée pour s'activer automatiquement. C'est essentiellement tout ce dont nous avons besoin. Maintenant qu'il est configuré pour s'activer automatiquement, je vais appuyer sur Play. Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l' aide pour la bête. Maintenant, remarquez cet audio, je viens de le diffuser dans le monde entier. Lorsque vous appuyez sur Play, je reconnais le matériel que vous portez. On nous a dit que j'espère que l' enregistrement le captera correctement, mais si vous le testez vous-même, vous l'obtiendrez. Il diffuse le son à volume égal dans toutes les zones. Cependant, ce que je peux faire, c'est sélectionner cet audio, entrer dans les détails, puis rechercher un paramètre appelé atténuation. OK. Maintenant, l'atténuation signifie essentiellement que le son diminue au mieux de la distance Cela l'aide à paraître beaucoup plus réaliste. Je vais donc cliquer sur annuler l' atténuation. Et maintenant, vous pouvez voir la sphère d'atténuation. Maintenant, laisse-moi sauter. Reconnaissez le matériel que vous portez. On nous a dit de nous développer. Maintenant, remarquez que plus je m'éloigne, plus le volume baisse. D'accord ? Maintenant, il y a deux sphères. Cette sphère extérieure est celle qui détermine où il n'y aura aucun volume. Cette sphère intérieure est celle qui gère l'endroit d'où le volume commence à baisser. Maintenant, juste pour montrer une fois de plus, permettez-moi de réduire la distance de chute à peu près aux escaliers. Donc, une fois que tu auras franchi les escaliers, tu n'entendras rien, d'accord ? Sur le côté droit, vous pouvez régler la distance. Il y a le rayon intérieur, qui est le cercle intérieur. Et puis il y a la distance de chute, d'accord ? C'est l'extérieur qui détermine les limites mêmes. Maintenant que je l'ai installé, l'extérieur s'arrête juste là où se trouvent les escaliers. C'est ainsi que vous pouvez reconnaître le matériel que vous portez. Nous étions, tu l'as vu ? Dès que vous sortez de cette plage, le son est terminé. C'est donc essentiellement ainsi qu' Unreal Engine gère le son. Vous pouvez soit avoir un son non atténué, ce qui signifie qu' il joue essentiellement comme s'il était diffusé partout dans le monde en même temps, soit vous pouvez avoir un son atténué . J'y crois fermement et je préfère mes sons soient atténués afin qu'ils ne le soient pas, afin qu'ils soient mieux C'est juste ma préférence, et c'est ainsi que je vais vous montrer comment le configurer. Permettez-moi donc de supprimer l'atténuation de remplacement et de supprimer pour supprimer ce fichier audio Donc, ce que nous allons faire, que si vous regardez notre PNJ en ce moment, il est créé avec un module sonore spécifique Ce module de bouche que nous avons appelé NPC mouth est l'endroit où nous allons lire tous les fichiers audio du PNJ, et c'est ainsi que nous allons le configurer Donc, la prochaine chose que nous allons faire, c'est revenir au paysan PNJ Vous voyez le module sonore, la bouche. Ajoutons-y un peu d'atténuation. Mais entrons dans les détails. Je veux rechercher une atténuation, et là, nous avons remplacé l'atténuation . Maintenant, si vous créez un jeu complet, au lieu de choisir d' annuler l'atténuation et de la gérer au cas par cas, vous devez créer un réglage d'atténuation du son unique pour tous vos acteurs vocaux un réglage d'atténuation du son unique pour tous vos Juste pour vous montrer comment nous procédons à grande échelle, permettez-moi de vous donner un bref exemple. Donc, ce que nous allons faire, nous pourrions faire, c'est contrôler la barre d'espace. Nous sommes donc de retour dans le dialogue ici. Et je vais simplement écrire click, et je vais taper attenuation, ce qui va nous permettre créer un réglage d' atténuation du son Je vais appeler ça. Je vais appeler ça des voix. D'accord ? Ce sera donc le réglage de l'atténuation des voix. Maintenant, permettez-moi de double-cliquer sur le réglage d'atténuation des voix, et de savoir s'il s'affichera tout seul. OK, c'est donc Annual Engine qui le fait. Laisse-moi le traîner ici. Nous avons donc maintenant accès à tous ces paramètres dans Voices. Donc, dans le cas de l'atténuation du volume ci-dessus, je vais régler cela sur true Fonction d'atténuation, vous pouvez régler sur un son linéaire ou sur un son naturel D'accord ? Et puis la forme d'atténuation, la sphère est généralement préférée car elle gère également la distance verticale et horizontale Nous dirons donc rayon intérieur, rayon extérieur 400. Donc, le rayon intérieur, vous pouvez toujours l'ajuster. J'ai tendance à le mettre à 400 pour un dialogue direct entre PNJ Vous pouvez l' agrandir à titre d'exemple si vous avez besoin que vos PNJ parlent pendant le combat, afin qu'ils puissent utiliser différents modules audio et paramètres lorsqu'ils sont au combat et lorsque vous avez des conversations de base, disons à la caméra C'est bon. Cela mis à part, compilons rapidement. Et maintenant, nos voix sont configurées, et attendez, la bouche est prête, et vous pouvez voir que la plage d'atténuation est assez bonne Ainsi, dans ce cadre, le son possède un seul volume. Puis, à l'extérieur, le volume commence à baisser et vous pouvez l'ajuster à votre guise. Jouez avec ces paramètres jusqu'à ce que vous ayez quelque chose de bon à utiliser, devinez. Maintenant, la prochaine chose que nous allons faire est de nous assurer que lorsque nous lancerons la boîte de dialogue, ce module ait accès au son du PNJ qui parle, à cette ligne vocale Maintenant, revenons au plan. Et nous l'avons déjà configuré de telle sorte qu'en cas d'interaction, le personnage du joueur passe en position de conversation. Ensuite, il joue la fonction de tuque Maintenant, permettez-moi de double-cliquer dessus pour vous montrer la fonction de la tuque La fonction de tok se trouve dans le composant de dialogue Elle crée un wudget et l' ajoute à la Ce que nous allons faire, c'est ajouter une petite variable pour qu'avec Tk, il soit prêt à accepter, il soit prêt à accepter les lignes de dialogue que nous mettrons de côté pour le PNJ Laissez-moi vous montrer à quoi cela ressemble. Maintenant, l'aperçu simplifié est que le joueur interagit avec le PNJ Le PNJ possède une fonction toque, et dans cette fonction tok, nous allons ajouter lignes vocales du PNJ au Voici à quoi cela ressemble à l'intérieur d'Unreal Engine. Souvenez-vous de ce composant de dialogue , celui-ci, que nous avons créé ici. OK. Nous allons donc ajouter à ce composant de dialogue que nous avons créé la possibilité de transporter des informations, car en cliquant sur le composant de dialogue, sur le côté droit, comme vous pouvez le voir, cela montre simplement qu'il s'agit d'une variable avec des sockets, des balises et essentiellement des événements. Mais nous voulons qu'il conserve également certaines variables. Ouvrez donc l'endroit où se trouve le composant de dialogue que nous avons créé et double-cliquez dessus. Nous sommes donc maintenant dans notre composant de dialogue. Maintenant, sur le côté gauche, notez qu'il est possible d'ajouter des variables. C'est ce que nous allons faire. Nous allons ajouter quelques variables que nous utilisons pour stocker les lignes vocales. 18. 018 Jouer en premier plan la ligne vocale de PNJ: Maintenant, pour des raisons de clarté visuelle, nous allons passer au plan des PNJ Dans le composant de dialogue, nous allons avoir un tableau de dialogue NPC Cela va contenir tous les fichiers audio. Ensuite, dans le composant de dialogue, nous allons créer un widget de dialogue contenant le tableau de dialogue. Voilà à quoi ça ressemble. Nous allons commencer par entrer dans le composant de dialogue. Nous sommes maintenant dans le composant de dialogue, et vous pouvez voir que c' est tout le code utilisé que nous utilisons pour créer le widget de dialogue. Maintenant que nous pouvons le voir, nous voulons passer à l'événement personnalisé Tk, et lors de l'événement personnalisé tok, nous allons ajouter des entrées qui nous permettront d'y insérer le tableau audio. Nous avons donc sélectionné toque. Après l'avoir sélectionné, nous allons sur le côté droit où se trouvent les entrées, et nous ajouterons un petit plus. OK ? Maintenant, il demande une contribution. Et pour commencer, appelons le PNJ d'entrée underscore les OK. En fait, je n'ai pas besoin de mettre ce V. Ce sont les lignes vocales des PNJ Ce sont les lignes vocales. Ensuite, nous voulons ajouter une autre entrée, et ce sera le trait de soulignement du PNJ En d'autres termes, ce sera le composant audio dans lequel le PNJ parlera Maintenant que nous avons nos entrées dans le composant de dialogue, prenons un peu de recul. Nous allons revenir au présent. Nous savons maintenant avec certitude que la bouche d'un PNJ, si vous zoomez sur ce que vous montre Unreal Engine, vous montre qu' il s' agit d'un composant audio Permettez-moi de cliquer à nouveau dessus. Vous voyez qu'il s'agit d'un composant audio. Donc, pour la bouche du PNJ, nous revenons au composant de dialogue, puis nous sélectionnons à nouveau Talk. Nous n'avons pas besoin que la bouche du PNJ soit un élément de dialogue Nous allons donc cliquer dessus pour rechercher une boîte de dialogue, et ici, nous avons ce composant de dialogue, et nous voulons que ce soit une référence d'objet. À présent, le composant de dialogue NPC mouth est référencé. C'est un code. Ensuite, pour les lignes vocales des PNJ, nous voulons que ces lignes vocales soient un fichier audio Alors, venons-y. Cliquez sur audio. OK. Et cela va nous donner quelques options. Mais ce que nous voulons vraiment OK, donc, n' utilisons pas le son pour ça Ce que nous voulons, c'est un réseau d'ondes sonores. OK, nous avons donc une onde sonore. Ensuite, nous avons le type d'objet, dit onde sonore. Sélectionnons la référence de l'objet. Ce sont donc des ondes sonores. Cependant, au lieu de le définir sur une seule variable, faisons-en un tableau. Nous avons donc maintenant le composant de dialogue de la bouche des PNJ. Et les lignes vocales des PNJ qui sont une onde sonore en entrée. Maintenant que ces entrées sont configurées, passons à gauche et compilons d'abord. Vous remarquerez maintenant que nous avons des lignes vocales et une bouche de PNJ. Assurez-vous en fait que la bouche est en haut et au-dessus des lignes vocales. Recompilez rapidement. OK, nous devons donc insérer le composant buccal du PNJ et le noyau des lignes vocales Ensuite, en ce qui concerne l'intérieur du composant audio, nous voulons également créer des variables, d'accord ? Et la première variable que nous voulons, ce ne sera vraiment qu'une pour le moment. O pour avoir un PNJ, un soulignement, des lignes vocales. Et ça va être une onde sonore. OK, viens ici, onde sonore, référence à un objet. Et nous voulons nous assurer que cela, vous pouvez simplement cliquer avec le bouton droit de la souris, est défini sur array. Nous avons donc des lignes vocales de PNJ configurées sous forme d'ondes sonores. Donc, si nous effectuons un zoom arrière, donc avant la fonction de touche, nous insérerons la molt du PNJ et les lignes vocales du PNJ Contrôlez S pour enregistrer, compiler et assurez-vous de tout enregistrer. Maintenant, entrez à nouveau dans le paysan PNJ et dans son graphique d'événements Maintenant, vous remarquerez que nous avons une tuque ici. Et nous avons déjà inséré un composant de dialogue comme cible. Donc, si nous double-cliquons dessus, nous devons sélectionner la bouche et les lignes vocales du PNJ OK. Revenons donc au présent. Alors, placez le composant de la bouche du PNJ là-bas et faites-le glisser vers le bas Maintenant que nous l'avons fait glisser vers le bas, il suffit de le connecter à la bouche du PNJ. Un instant, faites-le glisser dans la bouche du PC. OK ? Donc, si cela ne fonctionne pas, dès que vous voyez que cela veut changer, vous voyez ce bleu et rouge, cela signifie qu'il demande à défiler. Cela signifie que les deux ne correspondent pas. Cela essaie donc d' accepter un audio. Voyons voir, référence à l' objet du composant de dialogue. Bien qu'il s'agisse d'un composant audio. Nous devrons donc ajuster cela pour qu'il corresponde. Nous revenons donc au composant de dialogue. OK ? Alors nous viendrons ici. Ensuite, je vais simplement taper composant audio. OK, donc composant audio, et nous voulons avoir une référence à un objet. Il fait maintenant référence à un composant audio. Compilons rapidement, revenons à la compilation paysanne des PNJ et voyons s'ils vont se connecter directement Boom, et maintenant il se connecte directement. Ainsi, chaque fois que les objets n'acceptent pas de se connecter sans changer de type, il suffit de vérifier et de s'assurer que les types correspondent. Maintenant, le composant buccal des PNJ, qui se trouve ici, d' où ils parleront, est entièrement connecté Cela est donc lié à la fonction toque du composant audio Donc, en double-cliquant dessus, nous arriverons au composant audio. Et maintenant, le composant audio veut accepter les lignes vocales des PNJ Bien. Nous allons donc revenir aux contrôles paysans, et vous pouvez voir les lignes vocales des PNJ juste ici OK. Donc, nous allons le faire glisser vers arrière, sélectionner le lien vers le composant de dialogue et cliquer dessus. OK. Maintenant que nous avons cliqué sur le composant de dialogue, si vous allez vers la droite, vous remarquerez qu'il existe un élément appelé default, qui affiche ses variables, et vous verrez les lignes vocales des PNJ Faisons un petit plus, et il cherche maintenant une ligne vocale ici. Nous avons ajouté un membre au tableau. Maintenant, pour obtenir la ligne vocale, nous allons simplement contrôler la barre d'espace. En anglais, passez à NPC Peasant 001, Quest 00. Et comme vous pouvez le constater, nos dossiers sont très bien organisés. Nous savons donc qu'il s'agit de la première ligne de dialogue de la quête en anglais pour le PNJ chargé de cette quête Vous allez donc l'obtenir et vous allez le faire glisser ici. Et maintenant, nous l'avons comme premier objet dans le tableau. Maintenant, par souci de simplicité, sachez que vous pouvez en ajouter encore plus au tableau. Mais pour l'instant, permettez-moi de le supprimer afin que nous entrer dans le tableau avec une seule ligne vocale, puis je vous montrerai comment travailler avec les lignes vocales ajoutées plus tard. Nous avons cette seule ligne vocale. Maintenant que nous avons cette ligne vocale, nous faisons référence à la bouche du PNJ et les lignes vocales des PNJ Donc, ce que nous voulons faire, c'est depuis le composant de dialogue, faire glisser vers l'extérieur, puis nous voulons taper les lignes vocales des PNJ Nous y voilà. Alors, procurez-vous les lignes vocales des PNJ Donc, à partir du composant de dialogue, nous obtenons les lignes vocales, puis nous voulons les faire glisser vers l'extérieur. Maintenant, nous avons les lignes vocales des PNJ et elles sont parfaitement connectées Maintenant que nous avons configuré ces deux éléments, nous allons maintenant ajouter les lignes vocales dans notre widget de dialogue. Alors compilons d'abord, c'est bien. Accédez au composant de dialogue. Et comme vous pouvez le constater, nous avons la bouche des PNJ et les lignes vocales des PNJ Ce que nous voulons maintenant faire, c'est partir du moment où nous créons le widget de dialogue, nous voulons ajouter une référence à la bouche et aux lignes vocales qui entrent dans le widget au moment où il est créé. Permettez-moi de vous montrer rapidement comment procéder. Maintenant, la toute première étape consiste à voir tous ces nœuds qui vont de la création du widget à l'ajout à la fenêtre d' affichage en passant par le mode de saisie Nous n'en avons pas besoin pour être là. Donc, pour nous en débarrasser, nous allons simplement tout faire, de l'ajout à la fenêtre d'affichage, nous allons tout récupérer et nous le déplacerons légèrement vers le haut Ensuite, pour des raisons d'organisation, nous appuyons sur C pour configurer notre commentaire, et il s'agit simplement d'ajouter un widget à la fenêtre d'affichage Donc je vais le chercher, le mettre ici. Bien sûr, comme d'habitude, la taille du téléphone est de 50 pour simplicité et l'arrière-plan totalement sombre. Je l'ai donc sélectionné, et maintenant je vais en agrandir la taille. Je veux qu'il gère tout cela, tous ces nœuds ici afin que nous puissions les séparer, et cela simplifie tout le reste de ce que nous allons faire. Maintenant, la prochaine chose que nous allons faire après tout cela est d' aller dans le widget de dialogue, et nous allons ajouter quelques variables. Nous savons donc avec certitude que nous avons un composant audio appelé bouche de PNJ, et que nous avons des lignes vocales de PNJ qui sont des ondes sonores, et nous voulons les ajouter à notre widget comme références Ajoutons donc un composant audio et une onde sonore. Nous allons donc passer au widget de dialogue. Souviens-toi de ça. Accédez au widget de dialogue. Examinez son graphique, puis nous voulons puis nous voulons voir où nous plaçons les variables, et vous verrez sur le côté gauche que c'est là que se trouvent les variables. Je veux donc ajouter rapidement une variable, et cette variable s' appellera NPC, underscore mouth OK ? C'est le composant. Et vérifions rapidement de quel type de composant il s'agit pour revenir au composant de dialogue. Il s'agit donc d'un composant audio. Nous allons donc passer au widget. Bouche de PNJ. Il s'agit d'un composant audio et d'une référence d'objet. Nous avons donc maintenant la bouche des PNJ, bonne référence aux composants audio La prochaine chose que nous voulons ajouter, ce sont les lignes vocales des PNJ, et nous savons qu'il s'agit d'un réseau d'ondes sonores Nous accédons donc au widget, nous ajoutons, et nous appelons cela les voix de soulignement des PNJ et nous savons qu'il s'agit d'un réseau d'ondes sonores, donc d'une onde sonore, donc d'une onde sonore Référence d'objet. D'accord, mais ce n'est pas un objet unique. Il s'agit d'un clic droit. Il s'agit d'un tableau. Le composant audio de la bouche du PNJ est donc là, et le réseau de lignes vocales des PNJ est maintenant prêt Maintenant que les deux sont prêts, connectons-les en nous assurant que les données sont envoyées dans ce widget. Nous allons donc revenir au composant de dialogue. Et maintenant, il est dit que juste après avoir créé le widget de dialogue, nous voulons maintenant ajouter ces données dans ces variables. Nous allons donc faire traîner et taper set NPC mouth. Cela va donc donner la parole aux PNJ. Ensuite, nous voulons encore une fois nous étirer. Définissez les lignes vocales des PNJ. Il va donc définir les lignes vocales des PNJ. Maintenant que nous avons ces deux points, assurons-nous de relier les points. Permettez-moi de le ramener un peu vers le bas pour qu' ils soient plus proches l'un de l'autre. Maintenant, nous allons faire glisser la bouche du PNJ vers la bouche du PNJ, puis nous allons faire glisser les lignes vocales du PNJ vers les lignes vocales du PNJ C'est donc essentiel, nous en avons fini avec ça. Permettez-moi également d'aller un peu plus loin. Permettez-moi d'avancer un peu plus loin. OK. Maintenant, nous avons simplement besoin de nous connecter, nous devons connecter la voie de logique et de l'exécution à celles-ci. Donc, ce que nous allons faire, c'est les connecter au set, le déplacer légèrement vers l'avant, le faire glisser vers l'extérieur. Et cette fois, je vais taper une séquence. Maintenant, ce qu'est une séquence, c' est une série d'actions entreprises dans un ordre logique, de zéro jusqu'au point où vous l'arrêtez. Je vais donc m'assurer que la première chose fasse, c'est de mettre la bouche d'un PNJ Ensuite, le second est de configurer les lignes vocales des PNJ. Et puis juste après cela, nous pouvons nous assurer que la troisième chose est qu' il ajoute à la fenêtre d'affichage, il ajoute le widget à la fenêtre d'affichage Maintenant que tout cela est fait, faisons un test rapide pour voir si tout le code fonctionne avant de continuer. Je vais donc entrer, je vais marcher jusqu' au PNJ, appuyer sur le bouton Interagir, et si le jeu ne plante pas, rien ne sort de l'ordinaire C'est une bonne chose. Maintenant que nous avons cette configuration , allez dans le widget de dialogue et créons le code pour jouer cette toute première ligne vocale. Maintenant, ce que nous allons faire, c'est utiliser la construction événementielle pour cela. Nous allons donc faire glisser la structure de l' événement, puisque nous allons l'utiliser, et nous allons appuyer sur C. Maintenant, appelons cela « play first voice line ». Nous allons simplement le nommer ainsi pour l' instant, au fur et à mesure que nous avançons, la taille du texte à 50 comme toujours et le fond noir, voulons nous assurer que nous pouvons lire le texte de notre commentaire, a rendu assez grand. Excellente. Maintenant, juste après l'événement Construct ici, vous pouvez également utiliser begin play Okay, begin play et event construct here sont fondamentalement les mêmes, c'est là que nous allons mettre dans le code. Souvenez-vous donc de la variable NPC mouth ici. Donc, ce que nous allons faire, c'est sortir la bouche du PNJ et la placer juste devant le bâtiment de l'événement. Nous utiliserons G, donc ce sera la bouche d'un PNJ G. Maintenant que nous avons accès à la bouche du PNJ, juste pour la mémoire, souvenez-vous la variable NPC mouth contrôle essentiellement ce composant qui est censé lire Nous avons la bouche d'un PNJ. Nous voulons régler le son qu'il émet. Nous allons donc simplement nous en éloigner et taper le son défini. Le son du set décide essentiellement de l'actif qu'il va jouer. Maintenant que nous avons retiré le son défini, la prochaine chose que nous devons faire est d' obtenir la toute première ligne de dialogue. Maintenant, n'oubliez pas que nous avons placé cette toute première ligne de dialogue en tant qu' élément sous les lignes vocales des PNJ depuis le composant audio Donc, ce que nous allons faire, puisque nous l'avons transféré ici même, nous devons obtenir les lignes vocales des PNJ Nous allons faire traîner les lignes vocales des PNJ et simplement obtenir de bonnes lignes vocales des PNJ Ensuite, nous allons devoir accéder à cette première ligne. Nous allons donc le faire glisser, puis simplement taper get et il vous demandera d'en obtenir une copie. Et pour l'instant, je viens de le mettre à zéro. Zéro doit être la toute première ligne vocale, puis faites-la glisser jusqu'ici en tant que son. Ainsi, le premier son de la bouche du PNJ est réglé sur la première valeur du tableau, ce qui est une bonne chose Nous allons maintenant faire glisser le concept de l'événement. Maintenant, si nous devions nous arrêter ici et simplement compiler, passer au jeu et passer à ce PNJ, rien ne se passerait Il en sera toujours de même parce que nous lui avons demandé de l'obtenir. Nous voulons maintenant ajouter le nœud «   play to play » et faire jouer cette ligne vocale. Donc, juste après le son défini, maintenant que nous avons appliqué le son auquel il va accéder, nous voulons maintenant ajouter play. Nous allons donc sortir de la bouche du PNJ et taper simplement play. Maintenant que nous avons joué à partir du composant audio, sélectionné play, nous l'avons simplement connecté Une fois que tout sera configuré, nous devrions pouvoir entendre la ligne vocale dans le jeu. Je vais donc maintenant me diriger vers ce PNJ et appuyer sur Interagir. Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l' aide pour la bête. Ensuite, je pars et le teste une fois de plus pour confirmation. Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l'aide. Je suis là pour la bête. OK. Fantastique Maintenant, nous avons le son de ce personnage juste en face de nous. Donc, juste un bref aperçu avant de passer à la section suivante où nous ajouterons les lignes vocales des joueurs afin que tout corresponde Nous partons du personnage du joueur. Nous testons et voyons si l'interaction est possible, et si l'interaction est possible, nous interagissons en utilisant la fonction d'interaction avec le PNJ, et le message de la fonction d'interaction est envoyé ici Maintenant, au niveau du PNJ, nous avons accès au personnage du joueur et nous le plaçons dans la bonne position pour le dialogue Et puis une fois que nous avons terminé, nous activons la fonction tok. Dans la fonction toque, nous stockons les données ou une référence à la bouche du PNJ, qui est un composant audio situé à l'embouchure du Nous enregistrons également à partir du composant de dialogue les lignes qui vont être jouées, et nous transportons ces données via la fonction toque À partir du composant tuque. Maintenant, à l'intérieur de cette fonction tok, elle crée un widget de dialogue tout en conservant les données de la bouche et des lignes vocales du PNJ Ensuite, il envoie ces données au widget de dialogue, qui apparaît à l'écran et l' utilisera pour sélectionner le dialogue. Une fois cela fait, il le construit et l' ajoute à la fenêtre d'affichage, définit le mode de saisie uniquement sur l' interface utilisateur et affiche le curseur de la souris Une fois cela fait, nous allons dans le widget de dialogue. Si le joueur choisit de quitter la boîte de dialogue, il rétablit simplement le mode de saisie uniquement sur le jeu, masque le curseur de la souris, supprime ce widget du parent, puis collecte les déchets. OK. Cependant, la première chose qu'il fait pour le moment est de jouer la première ligne vocale en accédant au composant audio de la bouche du PNJ Et la voix du PNJ écrit , puis définit cela comme un son et le joue Si tout ce que j'ai dit a du sens, vous avez acquis les bases fondamentales du système audio. Ensuite, il y a toutes les petites choses que nous devons mettre en place pour que cela fonctionne correctement. Passons à la vidéo suivante. Si ce que j'ai dit n'a pas de sens, je recommande de procéder à un examen rapide et à une vérification des connaissances avant de poursuivre. Passons à la leçon suivante. 19. 019 Faire jouer au joueur une ligne de dialogue: Maintenant, très rapidement, notre système de dialogue est configuré. Donc, si vous vous dirigez vers le PNJ, je reconnais que vous en avez un On nous a dit de nous attendre à de l' aide pour la bête. Il va lire ce clip audio, ce qui est bien. Maintenant, nous avons fait en sorte que via le composant de dialogue, nous accédons à la bouche et aux lignes vocales des PNJ, et nous nous sommes assurés de les envoyer dans des variables dans notre widget de dialogue Et pour le moment, il est configuré pour fonctionner immédiatement lors de la construction de l'événement, il ne joue que la première ligne vocale. C'est cool. Ensuite, nous allons voir comment faire jouer les lignes vocales du joueur une fois qu'elles sont sélectionnées. Maintenant, pour ce faire, commençons par passer au plan du joueur Dans le plan du joueur, nous allons donc suivre une série d'étapes similaires Pour commencer, nous allons ajouter un composant audio, et nous allons appeler ce lecteur de composants audio underscore mouth Essentiellement, ce sera le composant d'où sortira le son. Ensuite, nous allons faire défiler la page vers la droite, et ici, nous allons sélectionner les paramètres d'atténuation Nous allons sélectionner les voix. Vous pouvez maintenant voir comment utiliser un seul réglage d'atténuation pour les voix et le voici Donc, une fois que nous l'avons ajusté une fois, il change pour tous ces personnages. Maintenant que nous avons la bouche de notre personnage ici, nous allons Maintenant que nous avons la bouche de notre personnage ici, nous passer dans le graphe des événements, et vous verrez cette fonction d'interaction. Cette fonction d'interaction porte actuellement le personnage du joueur. Pour qu'il soit référençable. Si nous examinons le PNJ présent, vous pouvez voir que cette fonction d' interaction est présente et que nous sommes en mesure de faire référence au personnage du joueur Nous allons donc procéder à un ajustement assez important. Nous allons revenir sur le personnage du joueur. Vous voyez cette fonction d'interaction. Nous allons maintenant sélectionner la fonction d'interaction, et nous voulons ajouter une autre entrée. Mais au lieu du personnage du joueur, cette entrée sera un composant audio. Cela s'appellera Player Underscore Mouth. Et ce sera un composant audio. Et ce sera une référence à un objet. OK, maintenant, la bouche du joueur va être référencable Compilons-le rapidement. Retournez voir le paysan PNJ et remarquez que maintenant c' est la bouche du joueur est référencée ici, ce qui est une bonne chose Maintenant, la prochaine chose que nous allons faire, c'est que nous voulons ajouter les lignes vocales des joueurs et aussi les ajouter dans la bouche du joueur elle-même. Nous allons donc passer à la fonction toque. Et ce que nous allons faire, c'est simplement sélectionner la bouche du PNJ, et je ne peux pas simplement la dupliquer , mais je vais la sélectionner Et je vais appeler ce lecteur underscore mouth, et il sera configuré sur un composant audio et sur une référence à un objet Ensuite, je vais ajouter ondes sonores pour que nous ayons une onde sonore ici comme référence à un objet, et nous voulons que ce soit un tableau. Permettez-moi donc de faire un clic droit, de cliquer le bouton droit de la souris et de sélectionner un tableau. Nous avons donc la bouche du PNJ, les lignes vocales des PNJ, nous avons la bouche du joueur, puis nous avons du joueur qui souligne les lignes vocales. Et les deux seront envoyés dans le widget, ce qui est cool. Maintenant, laissez-moi m'assurer que tout cela est enregistré. Contrôlez S, compilez et contrôlez Shift S pour vous assurer que tout est enregistré. Maintenant que nous avons configuré la bouche et les lignes vocales du joueur, revenons aux variables des composants du dialogue. N'oubliez pas comment il possède les lignes vocales des PNJ. Nous allons simplement ajouter une autre variable, configurer comme une onde sonore. Référence d'objet, cliquez avec le bouton droit de la souris pour le configurer sous forme de tableau. En cliquant avec le bouton droit de la souris, nous allons le transformer en tableau. Ensuite, nous voulons changer cela pour souligner les lignes vocales du joueur Maintenant, le composant Dialo va pouvoir héberger les lignes vocales du joueur, ce qui est vraiment une bonne chose pour nous, alors compilez-le rapidement Maintenant, si nous entrons dans le paysan PNJ, nous entrons dans son composant de dialogue Nous avons des lignes vocales de PNJ et des lignes vocales de joueurs. Maintenant, par souci de simplicité, permettez-moi d'ajouter une ligne vocale solo. Je vais donc ouvrir la barre d' espace de contrôle pour l'ouvrir , passer à la boîte de dialogue en anglais, à Joueuse, Quest Zero, puis je vais y trouver la toute première phrase. C'est la première ligne vocale et mettez-la ici. Maintenant, c'est là que se trouve cette ligne vocale. Nous avons donc une ligne vocale pour un joueur et une ligne vocale pour PNJ incluses. Maintenant, nous pouvons retourner voir le paysan NPC, assurer que tout est compilé. Nous sommes déjà là. Bien. Ensuite, à partir du composant de dialogue situé ici, nous allons faire glisser le pointeur et taper get player voice lines. Nous voulons donc obtenir les lignes vocales du joueur et nous assurer qu'elles sont insérées. OK, maintenant, la fonction to a les lignes vocales du joueur. Ensuite, nous allons revenir à la fonction d'interaction avec les événements, récupérer la bouche du joueur et la relier à la bouche du joueur ici. Maintenant que c' est lié, il ne nous reste plus qu'à appuyer sur compiler, et nous voulons ajouter un peu rapidement des variables car, souvenez-vous, nous partons du lecteur. Ah, la bouche du joueur n' est pas insérée ici. Oui, c'est ce que je cherchais. Je veux donc faire glisser la bouche du joueur vers le bas et la connecter à la fonction d'interaction. OK ? Alors maintenant, il est capable de transmettre correctement. Passons donc maintenant au widget de dialogue. Et maintenant, le widget de dialogue dispose d'un espace pour accepter la bouche du PNJ, d'accord, cette référence au composant audio Ajoutons une autre variable. Même chose, le joueur souligne la bouche. Ensuite, nous allons le configurer en tant que composant audio. Et une référence à un objet de composant audio. Maintenant, je dois m' assurer que c'est P. Maintenant nous avons les composants audio de la bouche du PNJ et de la bouche du joueur qui sont tous deux référencés Ensuite, la prochaine chose que nous allons faire est d' ajouter les lignes vocales des joueurs. Le joueur souligne donc les lignes vocales non en tant que composant audio Ce sera une onde sonore, c'est vrai, et nous voulons que ce soit un réseau. Nous avons maintenant le composant audio de la bouche du PNJ, référençable, le composant de la bouche du joueur, référençable, puis nous avons le réseau d'ondes sonores de la ligne vocale du PNJ et le réseau d'ondes sonores des lignes vocales du joueur, tous ces éléments se trouvant dans notre widget de dialogue Maintenant que nous les avons correctement configurés, nous voulons maintenant les tester. Donc, le test le plus simple que nous allons faire est configurer de telle sorte que, dès que vous aurez fini de jouer, nous jouerons les lignes vocales du joueur et nous voulons l'entendre. Une fois que nous l' avons entendu et confirmé, nous pouvons ajouter d' autres lignes vocales et le configurer pour que le joueur puisse les sélectionner. Maintenant, avant de les ajouter ici, vérifions-le rapidement pour nous assurer que les informations sont transmises. Donc, personnage à la troisième personne, évent d' interaction, personnage du joueur, bouche du joueur. Cela fonctionne correctement. Cela concerne le paysan PNJ. OK. Personnage du joueur, bouche du joueur. Nous l'avons correctement liée, appelée fonction Tk. OK, maintenant nous devons simplement cartographier la bouche du joueur et les lignes vocales du joueur ici. Pour ce faire, voyons voir, nous devons le faire glisser depuis le widget de création, et nous voulons définir la bouche du joueur. Sympa. Je n'ai pas envie de mettre la bouche du joueur. Réglez, ignorez la bouche du joueur. Set. OK, réglez ça. Ensuite, nous voulons définir les lignes vocales du joueur, les faire glisser vers l'extérieur, définir les lignes vocales du joueur. Nous avons donc ces deux ensembles. Je vais rapidement venir ici, rompre le lien qui monte. Nous allons donc passer à la troisième séquence au réglage de la bouche du joueur, puis à la quatrième au réglage des lignes vocales du joueur. Ensuite, nous en ajouterons un autre et nous le renverrons directement à la fenêtre d' affichage pour nous assurer que NRL Engine fait tout dans le bon ordre Maintenant que c'est fait, nous allons faire glisser la bouche du joueur. Dans la bouche du joueur défini, nous allons faire glisser les lignes vocales vers les lignes vocales du joueur. Ensuite, nous allons appuyer sur compiler. Maintenant que nous avons cliqué sur Compiler, cela signifie que le plan du widget ou le widget que nous créons contiendra à lui tout seul la bouche et les lignes vocales du PNJ, ainsi la bouche et les lignes vocales du joueur Maintenant, nous allons entrer dans le widget et nous allons configurer un test rapide ici. Maintenant, juste pour clarifier l'état actuel, même si nous transférons les informations, si nous venons, je reconnaîtrai le matériel que vous portez. On nous a dit de nous attendre à de l'aide. Je suis là pour la bête. Et puis une fois que c'est fait, c'est fait. Maintenant, ce que nous voulons, c'est qu'après cela, la prochaine ligne de dialogue du joueur soit jouée. Nous allons donc passer dans le widget de dialogue. Nous allons prendre la bouche du joueur et la traîner ici. voulons avoir la bouche du joueur, et nous voulons obtenir les lignes vocales des joueurs. Nous allons donc obtenir les lignes vocales des joueurs. Maintenant, à partir du lecteur, nous allons le faire glisser. Et nous allons utiliser le nœud sonore défini de la même manière que nous l' avons fait avec la bouche du PNJ Nous allons donc avoir le son défini. Ensuite, pour ce qui est du son, nous allons le faire glisser hors des lignes vocales du lecteur utiliser le nœud G et le laisser sur zéro, car il s'agit de la première ligne vocale du tableau, et nous la connecterons au son. Maintenant, si nous le connectons directement ici, il produira deux sons à la fois, ce il produira deux sons à la fois, qui n'est pas fondamentalement ce que nous voulons. Nous allons donc ajouter quelques nœuds pour nous assurer qu'une fois le dialogue oral du PNJ joué, la ligne de dialogue suivante sera jouée Maintenant, pour ce faire, nous allons utiliser un événement contraignant. Maintenant. La façon dont cela fonctionne est assez simple. Nous allons donc simplement me laisser glisser ceci devant. Donc, juste après la lecture, nous voulons lier l'événement à la fin du son. Liez donc l'événement à l'audio. OK ? Il n'accepte pas de se retirer de là. Permettez-moi de venir ici en le faisant glisser depuis la bouche du PNJ, événement Bind sur le son C'est ça juste là. Il ne se déclenchera donc qu'une fois le son terminé. Maintenant que l'événement bind sur audio est terminé, faites-le glisser ici. Nous avons besoin d'un événement simple. Nous allons donc taper un événement personnalisé. Et nous voulons ajouter un événement personnalisé ici. Il s' appelle donc simplement pour le moment événement personnalisé. Nous allons en rester là. Il n'est pas nécessaire de lui ajouter un nom. Ce n'est pas si important. Ensuite, nous allons le faire glisser vers le son défini. Maintenant, permettez-moi de développer le commentaire. Maintenant que le son défini est terminé, ne nous reste plus qu'à ajouter un nœud de lecture pour qu' il joue le son. C'est bon. Il est donc configuré pour jouer le son. Maintenant, cela devrait fonctionner parfaitement. Testons-le rapidement. Pour en revenir à l'afficheur de niveaux, je vais passer au PNJ. Je reconnais que vous en avez un. On nous a dit de nous attendre à de l' aide pour la bête. Bonjour. C'est bon. Il a donc joué correctement le son, ce qui signifie qu'il fonctionne correctement. Maintenant, si vous voulez réellement voir ce qui se passe en ce qui concerne les nœuds, vous pouvez appuyer sur le widget de dialogue, puis sur Play. Aujourd'hui, il est autonome. J'ai deux moniteurs, donc cela pourrait être plus facile à voir pour moi. Mais en gros, si les nœuds sont là, je reconnais le B, vous en avez un. On nous a dit de nous attendre à de l'aide pour la bête. Bonjour. Vous pouvez donc voir ce nœud se déclencher. C'est beaucoup plus facile à faire avec vos moniteurs, mais comme je ne peux enregistrer que sur un seul moniteur, je ne peux que vous le montrer là-bas. Cela fonctionne donc correctement. Maintenant, avant d'aller de l'avant, passons en revue les bases générales. Nous envoyons à Access une référence à la bouche du joueur biais de la fonction d'événement indirect. Et maintenant, à l'intérieur du PNJ, nous avons accès au personnage et à la bouche du joueur La première chose que nous faisons est positionner dans la zone de position de discussion. Ensuite, nous obtenons des informations du composant de dialogue, notamment le tableau de lignes vocales des PNJ et le tableau des lignes vocales des joueurs Nous les envoyons dans la fonction tok. Dans la fonction tok, nous créons un widget. Cependant, ce widget contiendra également une référence à la bouche, aux lignes vocales du joueur et du PNJ Ensuite, nous contrôlons tout le reste du jeu dans le widget de dialogue. heure actuelle, il s'agit de la version la plus simple où il suffit de parler et de jouer en deux lignes. Nous passons maintenant à autre chose, et tout ce que nous allons faire, c'est passer du temps dans le widget de dialogue, à ajouter cette interactivité J'espère que tout a fait sens jusqu'ici. C'est très important. Ensuite, il s'agit simplement d'un petit nettoyage et d'une certaine complexité pour le rendre beaucoup plus fonctionnel Passons à la vidéo suivante. 20. 020 Dialogue de lecture sur la sélection: La dernière fois que nous avons terminé ces leçons, vous les avez configurées de manière à ce que vous jouiez la première ligne vocale du PNJ, et vous entrez immédiatement et jouez la ligne vocale du joueur C'est cool. Nous allons maintenant effectuer un ajustement pour en faire un système de dialogue approprié Nous allons donc laisser le joueur sélectionner la boîte de dialogue. Voilà à quoi ça va ressembler. À titre d'exemple avec les lignes que nous utilisons déjà, le bonjour qui sortirait ici, en fait, nous devons changer cette ligne vocale. Quoi qu'il en soit, la ligne vocale que le joueur peut sélectionner sera sur la gauche, puis le bouton de sortie se trouvera ici. Et nous allons le configurer de manière à ce qu'il soit possible de cliquer sur l'option de dialogue suivante, puis le joueur indiquera cette option de dialogue, ou vous pourrez simplement quitter la boîte de dialogue. Maintenant, afin de m'assurer que cela fonctionne correctement, permettez-moi de revenir sur le PNJ présent et les options de dialogue Et je vais changer de ligne vocale. Alors, voyons voir. La première ligne vocale du PNJ est : «  Je reconnais le matériel Il parle de l'équipement, puis je vais le configurer. Oui, je le suis. Non Laissez-moi changer , sachez que je vais l'utiliser. Oui, je le suis. Oui, c'est la ligne de dialogue que je vais utiliser. Je vais donc l'utiliser comme prochaine ligne de dialogue. Nous allons donc demander au paysan de discuter de suivante : « Es-tu là pour cette bête ? Ensuite, le personnage du joueur va dire «  je le suis », puis il va demander le poste du marchand. Elles ont un sens logique. Maintenant, la prochaine chose que nous allons faire est d'accéder au widget de dialogue et de passer à la vue concepteur. Maintenant que nous sommes en mode concepteur, nous allons obtenir cette ligne de texte indiquant que dialogue fonctionne et la supprimer. Il n'est plus nécessaire. Nous n'en avons pas besoin. On va y aller, on va revenir à la palette et on va chercher un bouton. Et nous allons faire glisser un bouton sur l'écran. Maintenant, pour des raisons de simplicité, voyons voir. Je vais choisir l'un des points d'ancrage et je vais l'ancrer dans cette direction. OK ? Ensuite, je mettrai sa position Y à zéro. Sa position X ne va pas être très importante. Sa taille X sera de 500. Sa taille Y sera de 200. Oh, c'est trop gros. D'accord, 100. Bien mieux. Alors voilà. Donc, ce sera notre option de dialogue A. Donc, je vais la nommer au lieu d'être simplement un bouton, je vais l'appeler option A. D'accord, donc cela se trouvera sous la boîte de dialogue sélectionnable Maintenant que nous avons le bouton, ajoutons rapidement du texte de base. Vous voulez faire glisser le texte, fois que vous avez sélectionné du texte, il suffit de le faire glisser dedans, puis je vais sélectionner ce bloc de texte. Je veux que ce soit euh hein. Je vais juste dire que c'est vide. En fait, laisse-moi juste faire Lorem Epsum. Ce que tu mets ici n'a pas d'importance, honnêtement. Je pourrais même simplement mettre un chiffre. La seule chose qui compte, c'est qu'il y ait du texte. Maintenant, assurez-vous de nommer l'option de bouton A, et l'option de texte A, de souligner le texte Et assurez-vous de sélectionner le texte et de vous assurer qu' il est configuré en tant que variable. OK ? Il est donc variable car nous allons changer ce qu'il contient. Une fois que vous avez cette configuration, passons au graphique. Maintenant, pour le moment, il est configuré pour être construit immédiatement. Jouez le son du PNJ, puis une fois cet événement terminé, plutôt qu'une fois le son terminé, il joue le dialogue du joueur Nous allons faire en sorte que cela soit beaucoup plus organisé. La première chose à faire est de tout supprimer. Ce n'est pas du tout nécessaire. Nous l'utilisons simplement pour nous assurer que tout fonctionne bien. Et nous allons créer un événement personnalisé. Nous allons créer un événement personnalisé, et nous allons appeler ce dialogue de progression de l'événement OK. Maintenant que nous avons l'événement personnalisé de la boîte de dialogue Progress, nous allons le configurer de telle sorte que, juste après la création de l'événement, nous fassions avancer le dialogue. Nous allons donc désigner exactement cet événement personnalisé. Ce sera l'événement principal des citations que nous allons utiliser pour progresser dans le système de dialogue. Maintenant que c'est fait, nous allons créer une toute nouvelle boîte de commentaires. OK ? J' appuie simplement sur Control C puis Control V pour simplement le coller. Mais il suffit de créer une autre boîte de commentaires, puis nous l' appellerons boîte de dialogue de progression. Cette zone de commentaires ici va contenir tout le code pour faire avancer la boîte de dialogue, et il va être très important d'avoir une telle taille car elle va en contenir pas mal Nous allons donc obtenir cet événement personnalisé de la boîte de dialogue Progress. Et déposez-le ici. Et maintenant, nous pouvons commencer à configurer le système de dialogue proprement dit. C'est maintenant le flux très simple que nous allons utiliser. Donc, dès que nous construisons, nous avançons dans le dialogue. Au fur et à mesure de la progression, le dialogue contiendra les nœuds permettant au PNJ Une fois cela fait, nous revenons à la neutralité. Ensuite, si vous sélectionnez l'option A, le joueur joue sa boîte de dialogue puis revient à la boîte de dialogue de progression, qui permettra au PNJ de parler à nouveau C'est ainsi que nous allons le configurer de manière très simplifiée. Retournez maintenant dans Unreal Engine pour le configurer. C'est bon. Nous sommes donc de retour dans le moteur de la LNR. La toute première chose que nous allons faire est de passer aux variables et de créer des nombres entiers qui nous permettront de suivre la ligne vocale qui a été prononcée pour faire avancer le dialogue OK ? Il suffit maintenant de cliquer pour ajouter une variable. Ce ne sera pas une onde sonore. Ce sera en fait un entier, et ce ne sera pas un tableau, il suffit de cliquer avec le bouton droit de la souris, d'accord ? Faites-en une variable unique, pas un tableau. Ensuite, nous appellerons simplement ce trait de soulignement actuel, en fait, dialogue en cours, PNJ de soulignement, donc nous l'aurons, puis nous créerons une autre variable également entière et nous l'appellerons dialogue actuel Et c'est terminé. Maintenant, juste pour vérifier et nous assurer que tout va bien, nous devons nous assurer que nous allons compiler et assurer que les valeurs par défaut sont totalement définies à zéro. OK ? Assurez-vous qu' ils sont tous deux mis à zéro. Nous savons donc qu'une fois que le dialogue démarre, il commence initialement avec les deux options totalement mises à zéro. Maintenant que c'est fait, utilisons ces entiers pour jouer la bonne ligne de dialogue Maintenant, nous l' avons déjà configuré pour que, dès la création de l' événement, nous fassions avancer le dialogue, et pour faire avancer le dialogue, il faut jouer les lignes vocales du PNJ Nous allons donc faire sortir la bouche du PNJ, trouver la bouche du PNJ. OK. Ensuite, nous allons simplement régler le son. Nous voulons donc régler son son et nous allons le connecter. C'est la première chose qu'il fait lorsqu'il fait avancer le dialogue. Ensuite, nous allons obtenir les lignes vocales des PNJ, et nous les avons ici. Et à partir des lignes vocales des PNJ, nous allons en obtenir une copie Ensuite, cela va être lié au son qui va être joué. Cependant, nous avons besoin de cet entier. Nous obtiendrons donc le PNJ du dialogue actuel, et nous obtiendrons le PNJ du dialogue actuel OK. C'est donc ici, et c'est lui qui règle le son. Une fois que c'est fait, nous sortons de la bouche du PNJ et nous lançons le jeu Parce que nous voulons que cela diffuse le son. OK. Ensuite, la prochaine chose que nous allons faire est d'obtenir le PNJ de dialogue actuel Ensuite, nous allons ajouter, nous allons simplement ajouter. Nous allons utiliser un opérateur d'ajout, d'accord ? Et nous voulons simplement en ajouter un, il suffit d'en ajouter un, puis nous allons définir le dialogue, NPC, et nous allons le lier Cela signifie que la boîte de dialogue PNJ, une fois qu'elle est configurée pour être jouée, est configurée pour passer à 0-1 C'est une bonne chose. Il continue de recevoir la ligne suivante du tableau. Maintenant que c'est entièrement configuré, voyons voir. Nous allons donc le connecter ici. Excellente. Nous avons donc obtenu le dialogue actuel du PNJ, y avons ajouté un, et nous l'avons configuré comme dialogue actuel du PNJ C'est bien fait. Cela est correct. Une fois que c'est fait, nous allons le faire glisser, puis nous allons le lier à l'audio. Attends, faisons-le glisser. Nous allons donc lier l' audio terminé. Vous pouvez donc voir que j'ai tapé audio fin. La liaison de l'événement sur l'audio est donc terminée. C'est configuré ici, puis il écoute un événement. OK ? Nous allons donc laisser ça ici pour le moment. Il n'est pas nécessaire d'ajouter quoi que ce soit. Ensuite, nous compilerons rapidement en attente d'un événement. D'accord, nous devons d'abord créer un événement personnalisé rapide, afin qu'unreal nous permette de le compiler Donc, en gros, faire avancer le dialogue signifie que nous jouons l'événement en fonction du numéro de dialogue actuel, d'accord. Il va jouer ça puis incrémenter la boîte de dialogue. Et puis juste après, quand le jeu aura fini de progresser, il indiquera en gros que «   OK, cool, nous en avons fini avec ça », et cela déclenchera un événement personnalisé. Nous n'avons pas encore configuré l'événement personnalisé. Il se compile rapidement. Et voyons à quoi cela ressemble. Je reconnais assez bien. Nous savons que cela fonctionne correctement, nous allons donc rapidement compiler. La prochaine chose que nous allons faire est de configurer les nœuds de telle sorte que cet événement ici, cet événement ici, ne s'affiche pas immédiatement. Nous voulons que le texte ne s'affiche qu'une fois la lecture audio terminée. Mais d'abord, je vais le sélectionner et changer sa couleur d'arrière-plan pour une couleur un peu plus foncée, ce qui est cool, puis je réduirai sa valeur Alpha pour qu'elle soit un peu plus transparente. Laissez-moi passer à Alpha 0.75. C'est suffisant. C'est bon. Revenons maintenant au graphique. Maintenant, nous voulons nous assurer que c'est bien, dix. Nous voulons donc nous assurer que lorsque le joueur passe devant les PNJ, vous disposez de l'équipement dont vous disposez On nous a dit de nous attendre à de l'aide. Donc, ce que nous allons faire , c'est revenir dans le widget de dialogue puis nous allons le configurer, voyons voir, nous allons revenir au concepteur, nous allons sélectionner le bouton Option A, puis nous allons rechercher le visible. Ici, j'ai sélectionné le bouton Option A, puis j'ai saisi les détails visibles, et c'est réglé sur visible Cependant, je vais maintenant le configurer pour qu'il soit masqué. Il apparaîtra ici, mais il n'apparaîtra pas dans le jeu. Donc, si nous essayons de marcher dessus et d'appuyer sur Internet. Je reconnais que c'est caché. C'est une bonne chose. Cependant, ce que nous voulons, c'est le montrer dès que la première ligne de dialogue est terminée. ce faire, nous allons passer à l'événement personnalisé que nous avions déjà configuré. Ensuite, nous allons trouver l' option A parmi nos variables. C'est là-bas. Nous allons faire glisser l'option A vers l'intérieur, obtenir l'option A, puis nous voulons taper visible. En d'autres termes, définissez la visibilité, puis nous la définirons comme visible. D'accord, il sera donc défini comme visible. Chaque fois qu' il sera défini comme visible, le dialogue est immédiatement terminé. Donc, à ce que l'on voit maintenant, c'est si on se dirige vers le PNJ. Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l' aide pour la bête. Maintenant c'est visible. Maintenant, cela fonctionne assez correctement. Maintenant que c'est fait, ajoutons un autre ensemble de nœuds lorsque le joueur appuie sur l'option A. Je vais ouvrir cette boîte de dialogue de sortie et la déposer encore plus loin. Ensuite, je vais ouvrir la boîte de dialogue de progression, la copier et la coller car c'est elle que nous utiliserons. Je pense que c'est une bonne quantité d'espace. Oui, c'est presque parfait. Et nous appellerons simplement cette option play option A. C'est exactement comme ça que nous allons l'appeler. Nous allons rester simples comme ça. Maintenant, cette option de jeu A va provenir du moment où l'on clique sur l'option Nous allons donc entrer dans le concepteur, sélectionner le bouton de l'option A, faire défiler l'écran vers le bas, et il y a une fonction permettant de décliquer ici et de cliquer dessus Maintenant, à l'intérieur de notre plan, il supprimera une petite fonction lorsque l'on clique sur A. Nous allons maintenant le placer dans cette boîte de commentaires. Maintenant que cette fonction est configurée, la première chose qui se produit lorsque nous cliquons sur option A est que nous voulons obtenir l'option A. Ensuite, nous voulons définir la visibilité. Je vais donc taper visible, définir la visibilité, et nous voulons la rendre invisible, encore une fois, la masquer. Donc, dès que nous cliquons sur l'option, nous la masquons juste après. Maintenant, la prochaine chose logique avec l'option A, c'est que nous voulons obtenir la bouche du joueur et la placer ici. Ensuite, nous voulons régler le son. D'accord, nous allons faire le son défini. Ensuite, nous allons faire glisser les lignes vocales du joueur pour obtenir les lignes vocales du joueur. Ensuite, nous voulons en obtenir une copie ici, et nous voulons la connecter au nouveau son. Mais maintenant que nous pouvons déterminer quelle ligne vocale se trouve, nous allons jouer, vous voulez obtenir le dialogue actuel du joueur. glisser ici, obtenez-le, et nous utiliserons la boîte de dialogue actuelle du joueur juste ici pour choisir la ligne vocale que nous allons utiliser. Et avec toute cette configuration, nous l'associons après le son défini. Et une fois que nous en aurons fini avec ça, nous jouerons également. Nous allons donc sortir de la bouche du joueur, et nous allons simplement jouer maintenant que nous avons joué ici, nous le connectons, pour qu'il joue cette ligne vocale. C'est donc aussi simple que cela. Et puis, après cette ligne vocale, vérifions-le rapidement et assurons-nous que tout fonctionne comme prévu. Nous allons donc passer en revue, je reconnais le matériel que vous portez. On nous a dit de nous attendre à de l' aide pour la bête. Maintenant, l'option A est apparue, et je vais cliquer sur l'option A. Oui, le vendeur avec mes affaires est-il arrivé ? OK, parfait. Cela fonctionne correctement. Maintenant, nous allons nous assurer que l'option A ne sera pas composée de quelques chiffres. Cela va réellement mettre à jour le texte avec les lignes que le personnage va réellement prononcer. C'est ce que nous allons faire dans la vidéo suivante. 21. 021 Afficher le texte de la boîte de dialogue: Pour la partie suivante, il ne nous reste plus qu'à ajouter le texte du sous-titre dans le texte la boîte de dialogue afin qu' au lieu de voir des chiffres, lorsque le joueur clique sur la boîte de dialogue, ce que le personnage va dire ou une description de ce qu'il va dire Maintenant, juste pour plus de clarté, si vous décidez de passer chez le PNJ, nous commencerons à parler au PNJ L'équipement dont vous disposez est un. On nous a dit de nous attendre à de l'aide pour la bête. Ensuite, nous avons cette boîte de dialogue, puis nous pouvons simplement cliquer dessus. Mais pour le moment, il n'y a que quelques chiffres. Oui, le marchand avec mes affaires est-il arrivé ? OK, alors c'est fait, non ? Nous allons donc modifier cela. Maintenant, l'un des avantages de la façon dont Unreal Engine enregistre le dialogue est que nous pouvons saisir le texte du sous-titre directement dans le fichier de dialogue Maintenant, juste pour m'assurer que je fais référence au bon fichier, je vais entrer dans les caractères. Paysan PNJ, ouvrez-le, le composant de dialogue, puis laissez-moi vérifier Donc, pour le moment, la seule ligne vocale du joueur est « laissez-moi voir » de laquelle s'agit-il ? Il s'agit de Quest 00, 002. C'est la ligne vocale. Je dois m' assurer que je sélectionne le bloc 1. Et celui-ci, si j'appuie sur Ctrl et sur la barre d'espace, laissez-moi chercher cette ligne de dialogue Voyons jouer une Quest 00 féminine, c'est 002 Maintenant, ceci se trouve à l'intérieur d'Anreil Engine Five. Ainsi, le moteur Unreal le stocke avec un peu plus de données que le fichier lui-même. Il vous suffit donc de double-cliquer dessus. Cela nous amène quelques détails sur ce dossier. Maintenant, dans ce fichier, nous allons rechercher ce que l'on appelle des sous-titres. Les détails défilent donc vers le bas. Voilà, il y a des sous-titres. D'accord. Maintenant, les sous-titres sont un tableau. Vous pouvez donc voir qu'il existe des éléments du tableau. Nous allons donc ajouter un seul élément du tableau, et vous pouvez voir qu'il indique index zéro, zéro. Maintenant que je connais le texte de cette boîte de dialogue, je vais simplement indiquer quelque chose d' aussi simple que Voyons voir si le vendeur est arrivé ? Parce que d'habitude, lorsque vous rédigez un texte de sous-titre, vous savez, nous pouvons le définir comme descriptif ou nous pouvons dire que la ligne complète, peu comme acteur, laissez-moi simplement dire si le vendeur est arrivé D'accord ? Il s'agit donc d'un simple texte de sous-titre Maintenant que nous avons ce simple texte de sous-titre, nous devons l'ajouter Nous devons l'ajouter et nous assurer que cela s'affiche plutôt que cela entre dans le champ de texte. Maintenant que nous en avons terminé, laissez-moi simplement mettre ici pour m' assurer que je puisse vérifier. Maintenant, contrôlez la barre d'espace. Nous voulons nous ouvrir. Nous voulons ouvrir le widget de dialogue. Ensuite, nous passons au graphique. Maintenant, ce que nous voulons faire, c'est juste après le dialogue de progression, mettre à jour cette option A avec les lignes du sous-titre Pour ce faire, cela signifie que le dialogue sur le progrès est essentiel. Maintenant, je vais juste copier cette boîte de commentaires , puis je vais la publier ici. Ensuite, je vais modifier le contenu de la zone de commentaire, et je vais le modifier pour mettre à jour l'option A, le texte. D'accord, parce que c'est ce que ce code va faire. Cela va juste mettre à jour l'option Un texte. Ensuite, nous allons passer à la boîte de dialogue Progression. D'accord. Et dans la boîte de dialogue de progression, à la toute fin, une fois la définition de la visibilité terminée, nous allons créer un événement personnalisé. Événement personnalisé. D'accord. Et nous allons appeler cette option de mise à jour un texte. Nous voulons avoir un nom descriptif simple et agréable. Maintenant que nous avons cet événement, nous voulons sélectionner Afficher un lien vers ce texte, plutôt qu'un lien vers cette fonction ici. Bien. Alors maintenant, mettez à jour le texte de l' option A va s' afficher juste après le dialogue de progression. Nous allons donc obtenir cette option A, fonction de texte, mettez-la ici. Maintenant, nous pouvons commencer à travailler à partir d'ici. Donc, ce que nous allons faire c'est obtenir les lignes vocales des joueurs. Laissez-moi les faire glisser ici, pour obtenir les lignes vocales du joueur, cette variable. Après avoir obtenu les lignes vocales du joueur, nous allons obtenir une copie du tableau afin de pouvoir accéder aux données depuis le tableau. Ensuite, nous voulons faire glisser le curseur dans la boîte de dialogue actuelle du joueur, nous allons la récupérer et la lier ici afin sélectionner le bon membre dans le tableau. Maintenant, une fois que nous aurons terminé , la ligne vocale que nous avons sélectionnée sera retirée du Get, puis nous allons taper get subtitles. D'accord. Nous allons donc obtenir les sous-titres, ce qui nous donnera accès aux fichiers de sous-titres Ensuite, à l'intérieur des fichiers de sous-titres, nous allons en obtenir une copie à nouveau. Il y aura beaucoup de choses à récupérer une fois que nous aurons ce premier fichier de sous-titres. Ensuite, nous allons casser le sous-titre Q. Cassez le sous-titre Q, c'est comme récupérer une fois que nous aurons ce premier fichier de sous-titres. Ensuite, nous allons casser le sous-titre Q. Cassez le sous-titre Q, c'est casser le sous-titre Q. Cassez le sous-titre ça que ça s' appelle Et cela fait essentiellement ressortir les sous-titres sous forme de texte. D'accord. Nous avons donc maintenant un fichier texte avec les sous-titres. Excusez-moi Ensuite, nous partirons d'ici. En fait, non. Nous allons maintenant faire glisser l'option Un texte, qui est l'option Un texte, le faire glisser. Ensuite, à partir du texte de l'option A, nous allons le faire glisser et appeler la fonction de réglage du texte. D'accord. Vous verrez donc le texte du widget défini. Il va donc définir le texte et nous allons le faire glisser du sous-titre Q vers le texte défini. Nous y voilà. Ensuite, nous allons faire glisser le texte de l'option A de mise à jour ici. Et c'est tout ce qu'il fait. Nous pouvons donc faire un test rapide dans Unreal Engine pour voir si cela fonctionne comme prévu, puis je reviendrai et je vous expliquerai tout ce qu'il fait une fois de plus avant de continuer pour nous assurer que personne ne soit laissé Donc, dans le moteur Vanual, marchons simplement dessus puis appuyons sur le bouton « Je reconnais le rapport que vous avez sur vous On nous a dit de nous attendre à de l' aide ici pour la bête, et nous y voilà. Il est en train de remplir le texte. Il s'agit plutôt de remplir l'option Une zone de texte avec ce que nous avons mis dans les sous-titres Le vendeur est-il arrivé ? Oui, je suis le marchand avec mes affaires, est-il arrivé ? Maintenant, sortons rapidement. Maintenant, voici la chose de base que nous avons faite. Ce que nous avons fait, c'est obtenir les lignes vocales des joueurs. Ensuite, nous avons obtenu les sous-titres de la ligne vocale du joueur que nous avons sélectionnée. Une fois que nous l'avons fait, nous avons essentiellement obtenu la toute première ligne, qui se trouve dans le tableau, qui est mise à zéro. Nous avons cassé le sous-titre Q, obtenu le texte, et nous l'avons mis comme texte défini pour le texte de l'option A. C'est essentiellement tout ce que nous avons fait. Maintenant, c'est le moyen le plus simple de mettre à jour le texte à l'intérieur des sous-titres. Cependant, une chose à ce sujet est que si vous avez des sous-titres et que vous entrez actuellement dans votre index zéro et que vous les configurez comme sous-titre, cela vous posera quelques problèmes La raison en est que si vous avez l'index zéro et que vous avez cette ligne comme sous-titre, cela vous empêchera d' avoir les sous-titres idéalisés Donc, ce que vous voulez faire chaque fois que vous le faites, c'est juste après l'avoir fait, vous pouvez simplement énumérer la gamme complète. Je me suis contentée de me présenter à l'arrivée du vendeur, car cela simplifie les choses. Mais lorsque vous demandez à votre joueur de dire une ligne, les gens n'aiment pas regarder une ligne à l'intérieur, qui ne correspond pas à ce que dit le joueur. Vous devez donc ajuster la boîte de dialogue de votre joueur pour corresponde à la taille du manuel Vous pouvez donc augmenter la taille de la zone de texte si vous voulez que le joueur prononce des lignes plus grandes Vous pouvez également vous assurer que lorsque vous rédigez la boîte de dialogue de votre joueur, vous devez simplement en tenir compte. Mais il s'agit d'un moyen simple et évolutif de configurer votre boîte de dialogue et vos sous-titres pour qu'ils fonctionnent de manière interchangeable et fonctionnent main dans la main Maintenant que nous avons cette configuration, passons à l'ajustement du système de dialogue afin que le joueur le mette à jour régulièrement. Et chaque fois que le joueur a fini de parler, le dialogue progresse. Il continue de le faire progresser. C'est ce que nous allons faire dans la vidéo suivante. 22. 022 Ajouts à la boîte de dialogue de progression: C'est donc ce que nous faisons dans cette vidéo. Nous avons déjà le point de départ et le passage à la ligne vocale des PNJ Cool. Ensuite, nous allons configurer la logique pour partir de la première ligne vocale du PNJ Cela donne au joueur la possibilité de choisir l'option A. Si le joueur choisit option A et ne quitte pas simplement la boîte de dialogue, il jouera la ligne vocale du joueur X. Il mettra X à X plus un, puis il jouera la ligne vocale du PNJ suivant et donnera au joueur la possibilité de sélectionner l'option A suivante, à savoir ce bouton Voici le schéma simplifié de ce que nous faisons. Passons à Unreal Engine. Maintenant, restons vraiment très simples. Donc, dans le jeu actuellement, nous l'avons déjà configuré. Donc, si le personnage du joueur se dirige vers le PNJ, reconnaissez l'équipement que vous portez On nous a dit de nous attendre à de l' aide pour la bête. Ensuite, nous avons la possibilité de sélectionner l'option A. Ensuite, nous pouvons sélectionner. Oui, le marchand avec mes affaires est-il arrivé ? C'est bon. Et puis ça s'arrête là. C'est ainsi qu'il est actuellement configuré. Cela ne progresse pas davantage car lors de la construction de l'événement, nous lançons la fonction de dialogue de progression. Et actuellement, la fonction de dialogue de progression joue le dialogue NPC actuel, puis elle incrémente le dialogue NPC actuel Et puis une fois l'audio terminé, le texte de l'option A est mis à jour. Passons donc à l' option A (mise à jour). Nous y voilà. Ce sont les nœuds. Vous voyez la valeur des commentaires, c'est très important. Maintenant, la mise à jour de l'option A met essentiellement à jour le texte de l'option A. C'est tout ce qu'elle fait. Ensuite, il sort, non, il joue à l'option A si vous cliquez, donc il lance l'option A. Il place d'abord cette tête en tête, puis il joue la boîte de dialogue de l' option A. Parfait. Donc deux choses, tout d'abord, je pense que cet ensemble est visible sur l'option A, je vais contrôler X pour le supprimer. Ce n'est pas nécessaire pour être là. Nous allons le mettre dans l'option de mise à jour Un texte, faites-le glisser ici. C'est le configurer pour qu'il soit visible. Ça peut être ici. Je ne pense pas que ce soit nécessairement de l'autre côté. Bien. Cela permet de nettoyer un peu le code. Voilà à quoi ressemble maintenant le texte de l'option A de mise à jour. Donc, avec tout cela en l'état, revenons à la façon dont nous allons l'organiser. Alors n'oubliez pas, si vous voulez passer de ligne vocale du PNJ à l'option A, ligne vocale du joueur, mettre à jour les lignes vocales, puis nous faisons le tour en cercle Mais pour ce faire, nous devons essentiellement nous assurer d' avoir plus de lignes vocales de PNJ et de lignes vocales de joueurs Revenons donc au paysan NPC et examinons rapidement sa composante de dialogue Donc, pour le moment, nous n'avons qu'une seule ligne vocale pour le PNJ et une pour le personnage féminin. OK. Alors contrôlez l'espace B. Passons au dialogue en anglais. Voyons voir, PNJ. Et celui-ci est 01. Nous voulons donc en ajouter quelques autres dans ce tableau. Donc, le 01, laissez-moi le mettre dans la ligne de dialogue 02. La ligne de dialogue 03 et la ligne de dialogue 04. Laissez-moi savoir ce qu'est 04. Je reconnais le OK, ça permet de jouer le son sélectionné. Laissez-moi compiler. Il semble que je doive compiler avant que ces boutons de lecture n'apparaissent. Je ne l'avais pas remarqué avant. C'est juste un moteur irréel. Quelques centaines de marches le long de la rivière. Il est allumé. OK, nous n'avons donc pas besoin de cette ligne. Il ne faut donc que trois lignes . Permettez-moi de le supprimer. Nous ne voulons pas de lignes de dialogue vides. Nous avons donc, je reconnais, je reconnais le matériel. Il l'a fait. Indique simplement au personnage du joueur où il se trouve. Bonne chance Tu sais. Ensuite, c'est fait. Nous avons donc trois lignes de dialogue pour le NPC. C'est cool. Passons maintenant au joueur. Oui, je le suis. OK. Maintenant, ajoutons-en deux. Alors, retournez en arrière. Incarnez une femme dans cette quête. Oui, dispose également de trois lignes de Hold on. Bonjour OK, le bonjour n'est pas nécessaire. Cela signifie donc que la prochaine ligne de dialogue sera ? Oui, je le suis. Oui, je le suis. OK. Cela peut varier en fonction de votre projet, mais vous devez simplement vous assurer que la boîte de dialogue est logique. Compilez rapidement. Et nous avons terminé à 100 %. Nous avons donc trois lignes de dialogue pour le PNJ et trois lignes de dialogue pour le joueur Merci Je vais m'en aller. OK, parfait. Le PNJ prononce donc la première ligne vocale, le joueur Oui, je dis la seconde. Le PNJ sera alors en mesure de répondre. Juste quelques-uns, d'accord. Alors merci. Je vais m'en aller. Le PNJ. Terminé. Nous avons donc trois lignes de dialogue pour le PNJ et trois lignes de dialogue pour le joueur Ça suffit. Maintenant que nous avons suffisamment de dialogue pour vraiment laisser le système s'adapter de lui-même, nous allons procéder à un ajustement très, très simple. Nous allons donc faire une compilation rapide. Maintenant, nous allons le configurer pour qu'il fonctionne. En jouant à l'option suivante juste après plutôt qu'en jouant à l'option suivante juste après l'option A, permettez-moi de revenir au graphique. Nous commençons donc à jouer à la ligne vocale du PNJ, rendre l'option A disponible, jouer à la ligne vocale du joueur par incrémentation d'une unité, puis nous revenons et parcourons à nouveau les lignes vocales Donc, juste après la fin de l'option de lecture A, nous voulons configurer un événement en mode audio, d'accord ? Donc, en gros, nous voulons lier cet événement à l'audio terminé. Donc, pour ce que nous allons faire, nous devons monter dans la boîte de dialogue du joueur. Nous allons donc commencer par obtenir le dialogue actuel du joueur. OK, récupère le dialogue actuel du joueur. Ensuite, nous voulons définir Okay, dialogue actuel du joueur, et nous allons arrêter ça. Allons ajouter. Vous voulez une fonction AD de base. Et nous voulons simplement y ajouter un élément. Maintenant que nous y ajoutons un élément, le dialogue du joueur sera augmenté d' une unité, ce qui est une bonne chose, ce qui signifie que la prochaine fois le joueur sélectionnera l'option A, il sélectionnera la ligne de dialogue suivante Assurons-nous que dans l' option de mise à jour , un texte fonctionnera correctement. Oui, cela fonctionnera correctement. C'est une bonne chose. Ensuite, juste après avoir joué à l'option A, nous voulons jouer au dialogue sur l'événement de progression. Nous voulons accéder à cette fonction. Faites-le donc glisser vers l'extérieur et nous ferons apparaître la fonction de dialogue de progression. C'est la même fonction que nous allons utiliser pour beaucoup de nos éléments. Maintenant que cette fonction de dialogue de progression est activée, c'est fondamentalement une bonne chose. Si nous entrons, sortons par ici. Je reconnais le matériel que tu as vu dessus. On nous a dit de nous attendre à des conférences la première année pour The Beast. Nous pouvons maintenant sélectionner Option. Oui, le marchand avec mes doigts. Tu as un problème. Tiens bon. Retournons en arrière. C'est une erreur fondamentale de moi. Je l'ai configuré pour faire avancer le dialogue, mais je ne l'ai pas configuré pour le faire une fois le dialogue terminé. Voyons voir. Réglez le son. Voyons voir, Event Bind Event est toujours en vente. Le son est terminé. Oui, nous devons créer cet événement de liaison lorsque l'audio est terminé. Et la raison pour laquelle nous le faisons est que nous voulons que cela ne soit joué qu'une fois le son terminé. Nous ne voulons pas que le son soit diffusé. Oh, laissez-moi d'abord venir ici. Ajoutez simplement un événement personnalisé rapide. Nous n'avons même pas besoin de donner un nom à cet événement. Il va maintenant faire avancer le dialogue. Nous ne voulons pas que les dialogues se chevauchent. Maintenant qu'il ne nous reste plus qu'une fois, souvenez-vous que l'achat de l'événement sur audio a terminé le dialogue de progression. Maintenant que nous l'avons, cela va fonctionner. Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l' aide pour la bête. Oui, je, euh, le marchand avec mes affaires, est-il arrivé ? Il a fait quelques centaines de pas le long de la rivière sur la rive ouest. Oui, je suis le vendeur de mes affaires. Maintenant, tout va bien. Il n'y a qu'un seul autre problème. Permettez-moi de m'en assurer rapidement. Oui, j'ai deux lignes de dialogue identiques ici dans les lignes vocales du joueur, ce qui est incorrect. Permettez-moi donc d'en supprimer une parce que j'en avais mis deux sur la même ligne vocale. C'est un problème fondamental. Maintenant que j'ai résolu ce problème, voyons si le dialogue se déroulera de manière logique Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l'aide pour la bête. OK. Nous avons la première ligne vocale ? Oui, je, euh, le marchand avec mes affaires, est-il arrivé ? Il l'a fait. Quelques centaines marches le long de la rivière, sur la rive ouest. OK. Maintenant, la ligne de dialogue suivante, le fichier wav suivant, ne contient pas de sous-titres, mais ceux-ci peuvent facilement être ajoutés Merci Je vais m'en aller. Bonne chance Tu sais, une fille de notre village cette voix. Tu n'as presque pas réussi. Mais son père est introuvable. Je vous en prie, nous avons besoin de ce qu'il y a de mieux. OK, et puis c'est fait. Notez maintenant que la boîte de dialogue pour le PNJ et le joueur est épuisée, mais que vous êtes toujours dans l'option de dialogue Donc, dans la vidéo suivante, nous allons configurer, tout d'abord, nous allons configurer une boîte de dialogue de saut afin que vous ne soyez pas obligé d' écouter toute la boîte de dialogue. Ensuite, après la boîte de dialogue d'abandon, nous allons la configurer de telle sorte qu'une fois qu' ils auront épuisé leur boîte de dialogue, elle se termine. C'est ce que nous allons faire dans la vidéo suivante. 23. 023 Ajouter un bouton de dialogue Skipper: OK, donc la toute première chose que nous allons faire est d'ajouter un bouton ici pour nous aider à ignorer la boîte de dialogue. Maintenant, pour ce faire, il suffit de commencer par sélectionner le bouton de sortie. D'accord. Ensuite, nous allons simplement en faire une copie rapide, sélectionner le panneau Canvas et le coller. Et ce que cela va faire, c'est coller le bouton de sortie ainsi que son texte. Ensuite, nous pouvons procéder à un simple ajustement. Nous l'appellerons donc le bouton suivant. D'accord. Ensuite, nous allons appeler le texte le bouton de soulignement suivant, le trait de soulignement, le Nous allons faire en sorte que ce soit aussi simple que cela. Ensuite, nous allons déplacer le bouton suivant vers le bas , essentiellement là où se trouve le bouton de sortie. Nous le voulons juste là-bas. Et puis le texte le fera passer de la sortie à la suivante. Tu peux vraiment l'appeler Skip. Tu peux l'appeler comme tu veux. D'accord. Tant que vous communiquez correctement avec le joueur , car parfois vous n'avez pas envie de rester là à attendre dans un dialogue incontournable Ce n'est pas un poil. Maintenant que nous avons le bouton suivant en tant que variable, sélectionnons rapidement le bouton suivant, puis faisons défiler la page vers le bas. Et, bien sûr, nous allons créer un événement non cliqué ici Alors maintenant, nous avons le bouton suivant non cliqué juste là, ce qui est cool Je vais donc le récupérer et le placer ici, puis sélectionner le commentaire de la boîte de dialogue de sortie. Sélectionnez le commentaire du dialogue de sortie, copiez-le et collez-le, placez-le ici. Ensuite, je vais passer au bouton suivant. Ignorez la boîte de dialogue en cours avec cela, cela configurera essentiellement le bouton suivant pour ignorer la boîte de dialogue en cours, ce qui est cool. Maintenant que nous avons cette configuration, nous allons avoir besoin d' une autre variable. Nous allons donc passer aux variables, et nous allons ajouter une compilation. Et cette variable, nous allons dire, nous allons l'appeler variable. Le joueur est en train de parler. Nous l'appellerons simplement : le joueur parle. D'accord. Maintenant que nous avons cette configuration variable, ce qui est rapidement compilé, le joueur parle de configuration. Nous allons nous assurer que sa valeur par défaut est zéro. C'est aussi simple que cela. Maintenant que le joueur parle, qu'il d'un taureau et d'une configuration de base, nous savons que s'il est égal à zéro, cela signifie que le joueur ne parle pas. Si c'est le cas, cela signifie que c'est le joueur qui parle. Nous avons juste besoin de l' avoir à portée de main. Nous avons maintenant ce bouton suivant, et nous voulons ajouter du code pour nous assurer que si quelqu'un appuie pour accéder à la boîte de dialogue, assurez-vous. Je reconnais le matériel que tu portes. Lorsque quelqu'un appuie sur ce bouton, tous les dialogues sont interrompus. D'accord. Donc, c'est la première chose que nous allons faire. OK, maintenant que nous avons notre propre bouton, cliquez sur Suivant ici et que notre joueur parle ici. La prochaine chose que nous allons faire est d'ajouter une branche rapide. D'accord. Maintenant que nous avons ajouté la branche, nous allons utiliser la condition get player is talking ». Ce sera la condition nous utiliserons pour contrôler cette branche. Maintenant, ce que nous allons faire c'est que si le joueur parle est réglé sur True, cela signifie que c'est le joueur qui parle, donc nous allons faire traîner le jeu. En fait, nous allons avoir besoin de la bouche du joueur. Regardez les composants ici. Vous devriez être en mesure d' accéder aux composants. Nous allons sélectionner la bouche du joueur, la faire glisser ici. Réglez-le pour qu'il saisisse la bouche du joueur. D'accord. Ensuite, nous allons sortir de la bouche du joueur, puis nous allons taper stop parce que nous voulons simplement arrêter ce que dit le joueur. Nous voulons que ce dialogue prenne fin immédiatement. Maintenant que nous avons configuré cela pour y mettre fin, la prochaine chose que nous allons faire est bouche du PNJ, de la faire glisser ici, de la récupérer Ensuite, nous voulons faire la même chose. Nous voulons simplement qu'il cesse de parler, qu'il cesse immédiatement. Faites-le glisser ici. Et c'est fait. Donc, si c'est le PNJ qui parle, nous allons le faire Maintenant que nous avons cette configuration d'arrêt initiale, assurons-nous qu' elle fonctionne comme prévu. Alors, en me dirigeant vers le PNJ, je reconnais le. Cela arrête simplement le dialogue. Oui, le marchand avec mes affaires est-il arrivé ? D'accord. Il s' enregistre donc correctement lorsque le PNJ parle et qu'il l'ignore, mais il ne s'enregistre pas correctement lorsque c'est le joueur qui ne le saute pas, ce qui est Donc, ce que nous voulons faire, c' est que le joueur parle est configuré comme base de référence égale à zéro. Donc, ce que nous allons faire, c'est jouer à l'option A, qui se trouve essentiellement juste après le début du jeu. C'est moi qui l'ai déplacée. Je n'avais pas l'intention de le déplacer. OK, donc juste après avoir joué à l'option A, permettez-moi de faire avancer ces événements un peu. Juste après avoir joué à l'option A, nous voulons changer qui parle, n'est-ce pas ? Nous allons donc faire en sorte que le joueur parle, faire glisser ici et le joueur parle, et nous voulons définir le joueur qui parle, et nous voulons le configurer. En fait, supprimons le fait que les joueurs parlent. Je veux le mettre à un, ce qui signifie que c'est le joueur qui parle. C'est bon. Ensuite, je vais copier ce nœud et partir juste après que le PNJ ait parlé juste après le jeu Alignez-le et nous le mettrons à zéro pour qu'il sache que est le PNJ qui parle pendant cette période Ensuite, nous allons le compiler, et nous verrons dans quelle mesure la boîte de dialogue peut maintenant être ignorée Alors, courez jusqu'ici. Je reconnais le concert suivant. Oui, c'est ce que j'ai fait. Juste quelques centaines ensuite. Merci Je serai le suivant. Bonne chance Prochaine. D'accord. Notez maintenant que nous sommes en mesure de sauter rapidement le dialogue. Le simple fait de sauter le dialogue fonctionne donc comme prévu Maintenant, la seule chose que nous devons faire est de vérifier rapidement si nous avons terminé le dialogue en cours entre le joueur et le PNJ, et une fois que c'est fait, quitter et activer la fonction de sortie du dialogue C'est ce que nous allons faire dans la vidéo suivante. 24. 024 Stop All Dialogue à la sortie (Cap: Maintenant, pour aller de l'avant, nous allons revenir au graphique, puis nous allons chercher le point où nous avons quitté la boîte de dialogue, et nous allons en ajouter un peu plus pour rendre la sortie de la boîte de dialogue encore meilleure Faisons donc avancer les choses. Maintenant, ce que nous allons faire en quittant la boîte de dialogue, c'est prendre la bouche du PNJ et lui dire d'arrêter de jouer OK. Ensuite, nous allons aussi prendre la bouche du joueur, faire glisser vers l'intérieur, et le faire arrêter de jouer, ARRÊTEZ. Voilà, ce qui garantit qu'au moment où nous déciderons d'appuyer sur le bouton de sortie, tous les dialogues cesseront de jouer, de sorte que nous n'en aurons pendant que nous nous éloignons. Je reconnais le matériel que tu portes. Une fois que j'ai cliqué sur Quitter et que j'ai terminé avec cette boîte de dialogue, elle s'arrête immédiatement. Passons maintenant à quelques petits ajustements. 25. 025 Dialogue de sortie automatique à la fin des lignes vocales: Dans l'état actuel du jeu, si vous allez parler au PNJ, voici comment se déroulent les interactions . Laisse-moi baisser le volume. Je reconnais que le matériel que vous avez , le W parle, vous pouvez venir. Oui, je le suis. Le marchand m'a balayé. Il l'a fait Et puis quelques centaines de pas. Et si vous l'ignorez encore une fois, vous pouvez vous remercier. Je vais m'en aller. Bonne chance PNJ. Tu sais, parle à une fille dans notre villa. Mais si vous cliquez à nouveau sur Suivant, cela vous renvoie en guise de remerciement. Ce n'est pas vraiment ce que nous voulons. C'est en fait la cause de ces erreurs. Ce que nous voulons, c'est vérifier de base si toutes les boîtes de dialogue sont épuisées. Maintenant que le système est actuellement configuré, nous allons procéder à une vérification de base après le dialogue de progression . Et si cette vérification indique essentiellement que le dialogue est terminé, cela mettra simplement fin à la session de dialogue. Voyons maintenant comment procéder. Pour ce faire, nous allons configurer un petit zoom arrière, je suppose, juste à gauche du dialogue de progression. Nous allons créer une autre boîte de commentaires. Permettez-moi de le copier-coller. C'est une boîte de commentaires basique avec juste Oh, mon Dieu. C'est vraiment nul. C'était quoi ça ? Qu'est-ce que c'était ? Comment est-ce que ça a bougé ? Hein ? OK, c'est un truc unilatéral. Laisse-moi régler ça. C'est bon. J'ai recommencé à me comporter sans relâche, j'ai dû le refaire j'ai dû Quoi qu'il en soit Donc, après l'avoir configuré, nous allons configurer nous allons le refaire Et ce que nous voulons vraiment faire, c'est vérifier la fin du dialogue. OK. Nous voulons simplement vérifier la fin du dialogue. Maintenant, pour ce faire, ça va être assez simple. Nous allons avoir une succursale de base, d'accord ? Une branche très basique. Maintenant que nous sommes entrés dans cette branche, ne vous inquiétez pas. Nous verrons comment lire depuis la branche. Nous voulons commencer par obtenir le dialogue actuel du PNJ Voici donc le dialogue actuel du NPC. Ensuite, nous voulons voir la taille du réseau de lignes vocales des PNJ Nous allons donc obtenir les lignes vocales des PNJ. D'accord, le réseau de lignes vocales des PNJ est vraiment ce que nous voulons obtenir Ensuite, nous voulons simplement en faire glisser le pointeur et obtenir la longueur du tableau. OK, je veux connaître la longueur exacte du tableau. Puisque nous avons le dialogue actuel du PNJ sous forme de tableau N et que nous avons la longueur des lignes vocales du PNJ sous forme de tableau, et que nous savons pertinemment que les tableaux, la longueur du tableau va compter le nombre d' éléments qu'il contient, d'accord Nous voulons donc comparer les deux, mais gardez à l'esprit que nous devrons supprimer un de la longueur du tableau. Nous allons donc obtenir la longueur du tableau, puis nous utiliserons une fonction de soustraction de base, et nous en soustrairons une car le dialogue commence à zéro puis augmente d'un Mais la longueur compte même zéro un lorsqu'il s'agit de la taille d'un tableau. Nous allons donc en supprimer un à partir de là. Ensuite, nous voulons faire une vérification de base, d'accord. Et cette vérification sera supérieure à une valeur de base , de même qu'une vérification de base supérieure à. Et ce que nous voulons vérifier, c'est vérifier si la longueur du tableau est supérieure à celle du dialogue actuel du PNJ C'est vraiment ce que nous voulons vérifier et voir. Donc, avec cela, nous allons relier cela à la condition. OK ? Maintenant, ce que nous allons faire, attendez, nous allons commencer par utiliser une impression de base pour que vous puissiez voir. Configurons donc l'impression. Imprimer la chaîne d'impression. Et ici, il dira que s'il est supérieur à, je vais le copier-coller. Ensuite, il mettra et puis s'il n'est pas supérieur à , il affichera la valeur du dialogue actuel du PNJ OK ? Ensuite, nous allons le configurer de telle sorte que si le dialogue actuel du PNJ est supérieur à la longueur des lignes vocales du PNJ, ce qui est vrai, nous allons jouer, nous allons taper en fait, non, nous allons taper pour mettre fin au Si c'est faux, il affiche simplement le dialogue actuel du PNJ. Ensuite, nous allons créer un événement personnalisé. OK. Et nous allons renommer cet événement personnalisé en appuyant sur F deux, et nous allons le renommer et Check En gros, cela me permet simplement de taper le dialogue, souligner et de le vérifier pour rendre plus compréhensible visuellement Et nous avons cette vérification du dialogue. Et ce que nous allons faire, c'est ici, plutôt après un dialogue sur les progrès. Voyons voir si le son de l' événement est terminé. En fait, nous allons venir ici. Il est écrit que l' option de mise à jour A est un texte. Nous allons également venir ici et nous allons faire appel à la fonction de dialogue et de vérification. C'est donc ce que nous voulons faire. Alors compilons rapidement. Voyons maintenant si notre vérification du dialogue fonctionne correctement ? Je reconnais le matériel que tu portes. Nous l'étions. OK. Donc, l'un d'eux indique que si vous pouvez le voir, alors oui, je suis, vous l'avez fait. Juste quelques-uns, il est également visible maintenant. Merci Je vais m'en aller. Bonne chance Et puis il dit « fin », alors maintenant il s'affiche correctement. Maintenant que nous savons qu'elle affiche correctement la fin, revenons en arrière et ajoutons la fonction finale. Et la fonction que nous voulons est la fonction de dialogue de sortie. Et c'est ce que nous allons faire. Il suffit d'appeler. Nous devons créer une fonction personnalisée autour de l'endroit où le dialogue se termine. Créez donc cet événement personnalisé. Et nous allons l'appeler exit, en fait, dialog, underscore exit s'agit de l'événement personnalisé, et nous allons le lier au reste du code sortant de la boîte de dialogue Nous allons donc maintenant revenir à la vérification de la fin du dialogue, et nous allons rechercher la fonction, sortie du dialogue. Ainsi, immédiatement après avoir imprimé la fin de la chaîne, il quittera simplement le dialogue. Vérifions-le maintenant et assurons-nous qu'il fonctionne comme prévu. Ainsi, lorsque nous jouons puis que nous passons au PNJ, je reconnais l' équipement que vous portez Nous étions un ? Bien ? Oui, je suis le marchand. Il l'a fait. Quelques centaines de pas. Deux, c'est bien. Merci Je le serai. Bonne chance Tu sais, une fille de notre village n' entendait rien à ce sujet Elle a failli ne pas s'en sortir. Mais son père est introuvable. Je vous en prie, nous avons besoin que l'on s'occupe de la bête. Et c'est terminé, c'est fait. Et maintenant, juste après la fin du dialogue, comme vous pouvez le voir, vous êtes éliminé. Je récupère, si je recommence et que je continue à cliquer sur Suivant, oh. Oui, je le suis. Il l'a fait. Merci Bien. OK, ça marche correctement. C'est ainsi que le dialogue se termine correctement. Ensuite, nous allons le modifier pour que je reconnaisse le suivant, il sélectionne automatiquement la première ligne de dialogue ou l'option A. Certains joueurs veulent simplement sauter le dialogue et ne veulent pas perdre leur temps à tout écouter. Nous allons donc le configurer de telle sorte que lorsque quelqu'un clique sur Suivant, il sélectionne automatiquement le Oui, je suis. C'est ce que nous allons faire dans la vidéo suivante. 26. 025 dialogue Skipp et fonctions personnalisées: C'est bon. Nous allons donc entrer et nous assurer que si le personnage du joueur est reconnu, nous pouvons immédiatement sauter Et chaque fois que quelqu'un clique sur Suivant, en gros, il veut sauter la boîte de dialogue, il va s' assurer de simplement sauter la fenêtre et comme s'il avait immédiatement sélectionné si le vendeur était arrivé et qu'il avait simplement sélectionné l'option a. C'est ce que nous allons faire. Donc, tout d'abord, nous avons déjà la configuration de base tous les dialogues s'arrêtent, selon la personne qui parle, d'accord ? C'est très important. Maintenant, il y a quelques autres fonctions personnalisées que nous voulons créer. Tout d'abord, faisons un zoom arrière. Et nous allons commencer par passer par nœud de dialogue de progression. Le nœud de dialogue Progress est maintenant configuré. En gros, il définit le son du PNJ en fonction de notre tableau Ensuite, il le joue, puis il le sélectionne et le configure. Hé, est-ce que le joueur parle à zéro ? Cela signifie que nous savons pertinemment que c'est le PNJ qui parle Ensuite, lorsque nous avançons un peu, il est actuellement configuré pour mettre à jour le dialogue actuel du PNJ juste avant la fin de l'événement de liaison audio sur l'audio Et nous allons complètement changer cela. OK ? Donc, ce que nous allons faire , c'est tout d' abord rompre ces liens. Brisons rapidement ce lien et rompons ce lien. Et nous allons le faire glisser ici, parce que nous allons mettre à jour, nous allons changer la façon dont nous mettons à jour le dialogue actuel avec les PNJ Maintenant que c'est fait, nous allons voir. Nous avons donc la fonction de mise à jour du texte en mettant essentiellement à jour l'option A texte, ainsi qu'une simple vérification de fin de boîte de dialogue. Maintenant, nous allons d'abord commencer par ajouter un événement personnalisé Skip NPC Créons donc rapidement un événement personnalisé. Et nous allons appeler cet événement personnalisé. Ok, nous allons l' appeler Skip Okay, N PC. Et si nous avons créé l'événement personnalisé Skip NPC c'est parce que parfois nous voulons simplement être en mesure d' exécuter toutes les fonctions qui se produisent normalement après que le PNJ parle, mais nous voulons les faire sans que le PNJ ait besoin de jouer le Ensuite, nous allons rompre le lien vers l' option de mise à jour, un texte. Nous allons rompre ce lien, et nous allons ajouter un simple « do once ». OK ? Il suffit de le faire une fois. Et cela signifie que cette fonction ne s'active qu'une seule fois. Nous allons faire cela pour éviter les erreurs lorsque l'événement personnalisé souhaite jouer et le PNJ oublié souhaite également jouer Parce que n'oubliez pas que nous allons ignorer cela, mais cet événement personnalisé, qui est diffusé lorsque l' événement audio est terminé, voudra toujours se déclencher, ce que nous ne voulons pas C'est pourquoi nous avons configuré le nœud Do Once Après le nœud Dance, vous vous demandez maintenant comment le réinitialiser ? OK ? Nous allons créer un autre événement personnalisé. OK, et ça s' appellera NPC Reset. Et nous l'activerons dans situations où nous savons qu'il est désormais possible de réinitialiser en toute sécurité la possibilité pour les fonctions de post-dialogue des PNJ de se déclencher C'est bon. Maintenant que nous avons cette configuration, nous allons ajouter ces nœuds, qui font progresser le dialogue du PNJ, le compteur de dialogues du PNJ Nous allons donc les ajouter ici, ce qui est plutôt cool. Il y a maintenant une autre fonction que nous allons devoir ajouter. Passons maintenant à l'option A. Maintenant, nous allons la configurer de telle sorte que juste ici, après le bouton suivant, après le bouton suivant, nous allons forcer l'option A, qui consiste essentiellement à sélectionner l'option A pour le joueur s'il veut sauter le dialogue. Si c'est la bonne ou la mauvaise option, les joueurs pressés veulent sauter le dialogue. Nous allons donc ajouter un événement personnalisé. Et cet événement personnalisé, nous allons l'appeler option Force Underscore A parce que c'est le cas lorsque nous voulons forcer l'option A, qui est la boîte de dialogue de l'option A dans notre système de dialogue. OK. Et ceci est configuré car plus tard, vous aurez peut-être à la fois les options A et B. Mais si le joueur veut sauter la boîte de dialogue, il sélectionnera toujours l'option A. Maintenant que c'est fait, vous pouvez remarquer que nous avons défini nos nœuds sonores, notre nœud de lecture, et que nous vérifions que le joueur parle. Ensuite, nous allons faire la même chose ici avec le compteur de dialogue. Brisons rapidement ce lien. Mettez-le ici, puis rapprochez-les , car nous voulons que ce compteur de dialogue cet événement lorsque nous l'ignorons, car le fait de sauter complètement l' événement de dialogue sera un élément clé du système de dialogue, et nous ferons exactement la même chose Nous allons également créer un autre événement personnalisé, que nous appellerons Skip Player. OK. Donc, en gros, il ignore le joueur. Maintenant que nous avons ce CstomEvent ici, nous allons interrompre l'événement lorsque la fonction audio est terminée Et nous allons créer un nœud Do Once. Et souvenez-vous de la raison pour laquelle nous utilisons le signe D une fois. OK ? La raison pour laquelle nous utilisons le nœud D once est d' empêcher les deux de se déclencher en même temps. C'est très important. Ensuite, nous créons un autre événement castom appelé réinitialisation du joueur OK. Et il s'agit essentiellement réinitialiser pour réinitialiser le nœud Do Once dans les situations où il est possible de jouer en toute sécurité pour jouer à toutes les fonctions une fois que le joueur a besoin de parler, et nous l'aurons complètement configuré. Maintenant que nous l'avons entièrement configuré et organisé, nous pouvons simplement incrémenter le dialogue actuel du joueur comme auparavant Et nous pouvons lancer l' événement de dialogue sur les progrès comme avant. Et maintenant, dans cette région, avant l'événement de dialogue sur les progrès, nous voulons que le texte de mise à jour nous voulons que le texte de mise à jour de l' option A soit défini ici. Il mettra donc à jour l'option A. Texte, puis poursuivra la progression de la boîte de dialogue Maintenant, avant de poursuivre, permettez-moi de m'assurer rapidement que ces noms sont cohérents. Permettez-moi de définir cela comme réinitialisation, souligner le PNJ, puis d' ignorer le PNJ de soulignement Bien, puis allez dans le lecteur et renommez-le pour réinitialiser le soulignement Ensuite, pour sauter, ajoutez un lecteur de soulignement rapide pour des raisons de clarté visuelle et d'organisation OK. Maintenant, nous avons ajouté un certain nombre d'événements personnalisés, et nous allons devoir déterminer précisément où les utiliser pour nous assurer que tout fonctionne comme prévu. La première chose que nous allons aborder étape par étape sera donc allons aborder étape par étape le dialogue sur les progrès et nous devons nous assurer que avons mis en place de manière totalement correcte. D'accord, nous allons donc commencer par le début des nœuds de dialogue de progression, et j'espère que vous serez en mesure suivre. C'est vraiment simple, mais il y a plein de pièces simples qui peuvent commencer à paraître très complexes. La première chose à faire dans la boîte de dialogue de progression est donc de définir le son de la bouche du PNJ comme étant sa ligne vocale actuelle en fonction de la configuration, de la position du dialogue actuel du PNJ la position du dialogue actuel du Ensuite, nous le diffusons dans le composant audio et nous le configurons pour qu'il sache que le lecteur ne parle pas. De plus, pourquoi est-ce que le joueur parle ? C'est un peu cassé. Tiens bon. Permettez-moi de changer cela rapidement. C'est en train de parler, mec. Parler ? C'est quoi ça ? C'est dingue. OK. Le joueur parle. Le joueur est en train de cumuler. Quoi qu'il en soit, le joueur parle. Ensuite, nous associons cet événement à l'audio terminé, sorte qu'il va simplement passer en revue et exécuter celui-ci. Mais nous l'avons configuré pour ne faire qu'une seule fois, et nous pouvons soit passer par ici en omettant le PNJ soit passer par cet événement personnalisé une fois le son terminé, et cela ne peut être fait qu'une seule fois à moins que nous ne réinitialisions le PNJ Ensuite, d'accord, gardez à l'esprit que le dialogue progresse, nous augmenterons le dialogue actuel du PNJ un par un Nous l'augmentons, ce qui est une bonne chose. La prochaine chose que nous faisons est de courir rapidement, laissez-moi interrompre ce dialogue et mettre fin à cette vérification. Nous avons créé cette fonction il y a quelques vidéos. Et si cette vérification de boîte de dialogue est correcte, nous exécuterons l'option de mise à jour A text. OK. Passons maintenant à l'option de mise à jour A text. Et l'option Une mise à jour du texte est assez simple. Nous avons défini la visibilité de l' option Un texte sur visible. Ensuite, nous sortons la première ligne des la première ligne sous-titres de ce fichier audio spécifique, qui est cool car cela permet vos sous-titres de fonctionner dans le texte, ce qui est vraiment fantastique. Ensuite, nous en avons essentiellement terminé avec cela. Maintenant, nous devons trouver un endroit où ajouter le PNJ réinitialisé. Sinon, cela ne se déclenchera jamais. Cela ne marchera pas. OK. Passons donc à l' option A et passons-en en revue. On joue donc normalement à l'option A et on passe à l'option A. Les deux font la même chose. Nous définissons l'option A Nous définissons l'option A pour qu'elle soit complètement masquée, ce qui est important. Ensuite, nous viendrons ici pour le son du set, et nous allons essentiellement faire la même chose. Nous déterminons de quelle ligne vocale il s'agit en fonction du dialogue actuel du joueur, et nous diffusons ce son Ensuite, nous le réglons pour qu'il sache que c' est le joueur qui parle. fur et à mesure que tout cela se passe, nous allons passer Au fur et à mesure que tout cela se passe, nous allons passer à l'événement bind sur le son terminé, puis nous aurons le lecteur skip et le lecteur reset, qui font tous deux essentiellement la même chose. Vous voulez tout lancer après le joueur sans avoir à passer par le dialogue. Et puis, juste après, OK, nous avons fait avancer le dialogue, ce qui est cool, puis nous avons mis à jour le texte de l'option A, ce que nous voulons faire après avoir incrémenté le dialogue actuel du lecteur Maintenant, c'est ici que nous allons ajouter quelques ajustements différents. Au lieu d'avoir l'option de mise à jour, plutôt que d'avoir le texte de l'option de mise à jour A ici, nous allons le modifier légèrement car dans le cadre de la mise à jour de l'option A, notez que nous avons défini la visibilité de l'option A sur visible. Permettez-moi de copier ces nœuds. Mais nous ne voulons pas qu'ils soient visibles. Nous ne voulons pas qu'ils soient visibles de façon constante, juste après. Il existe de nombreuses façons de résoudre le problème, mais pour le moment, nous allons utiliser la plus simple. Nous allons simplement définir la visibilité comme masquée ici, car nous voulons toujours mettre à jour le texte, mais nous ne voulons pas nécessairement voir quelle est l'option A ici. Maintenant que nous l'avons, compilons rapidement et passons à autre chose. Maintenant, la prochaine chose que nous allons également faire est de nous arrêter ici. Nous allons faire traîner cela, taper PNJ, réinitialiser le PNJ parce que cela indique au jeu qu' il est possible d'exécuter les fonctions du PNJ en toute sécurité par la suite Donc, juste après avoir terminé avec option A pour le joueur, nous voulons maintenant réinitialiser le PNJ afin que le mode « sauter et faire une fois  » fonctionne correctement. OK. Ensuite, nous allons également ajouter une réinitialisation pour le joueur dans la boîte de dialogue du PNJ, d'accord ? Nous allons donc venir ici et juste après avoir défini le dialogue actuel du PNJ, nous allons ajouter la fonction de réinitialisation du joueur Il sait donc qu' il est sûr d'exécuter les fonctions juste après le joueur. Maintenant, avec cette configuration, nous reste plus qu'à savoir comment ignorer la boîte de dialogue et les options actuelles ? Allons-y maintenant. Nous allons donc passer au bouton suivant qui ignore la boîte de dialogue en cours, et nous allons faire deux ou trois choses Je veux donc commencer par vérifier qui parle. Donc, si c'est le joueur qui parle, ce qui est vrai, nous voulons arrêter la bouche du joueur, puis nous voulons venir ici et exécuter la fonction, sauter le joueur. En gros, c'est mon alarme de travail, peu importe. Nous voulons exécuter la fonction, sauter le joueur parce que nous voulons venir ici et faire toutes ces choses pour ici et faire toutes ces choses assurer que le dialogue est mis à jour, que le texte est mis à jour et qu'il est masqué, réinitialiser le PNJ et faire avancer Nous voulons le faire sans jouer les dialogues du joueur. Et nous l'avons configuré pour qu'il ne fonctionne qu'une seule fois , afin qu'il puisse être utilisé en toute sécurité et qu'il ne fonctionne pas deux fois. Nous ne voulons pas qu'il fonctionne deux fois. OK ? Nous voulons donc que ce soit ici. Il ignore donc actuellement le lecteur, puis il met à jour les options Il fait toutes ces choses, ce qui est vraiment très bien, et c'est ce que nous voulons. Ensuite, nous passons au PC N. Nous avons déjà arrêté la gueule des PNJ. Ensuite, nous voulons exécuter la fonction Skip NPC. Nous avons donc toutes les données mises à jour sans avoir besoin de jouer. OK ? La prochaine chose qu'il fera si quelqu'un appuie sur Skip, d'accord ? La prochaine chose qu'il va faire est de forcer un OK, donc si quelqu'un veut ignorer cette boîte de dialogue, il sautera immédiatement la ligne, puis il forcera l'option A juste après, et c'est terminé. Maintenant, compilons-le rapidement et regardons-le dans le moteur. Donc actuellement, compte tenu de la façon dont il est configuré et de toutes ces belles bennes, si vous marchez jusqu'au bout, je reconnais l'équipement que vous avez Oui, le marchand. Il l'a fait. Juste quelques centaines. Merci. Je vais partir. Bonne chance. Tu sais, et c'est fait. Maintenant, notre fonction Skip fonctionne correctement et comme prévu. Passons maintenant à la vidéo suivante pour terminer l'introduction au fonctionnement des systèmes de dialogue dans Unreal Engine Ensuite, nous allons configurer un système de caméra simple telle sorte que, selon la personne qui parle, la caméra change de position. Allons 27. 026 Ajout d'un système de caméra sélectionnable: Maintenant, créer un sélecteur de caméra va être assez simple Nous allons installer des caméras pour six joueurs. OK. Ensuite, nous vérifierons simplement qui parle, puis nous sélectionnerons l'une des caméras des PNJ ou des caméras du joueur Laissez-moi vous expliquer en vous montrant simplement l'intérieur d'un moteur VNRL. C'est bon. Donc, actuellement, à l'intérieur d'un moteur VNRL si je me permets de m'y rendre rapidement pour la journée, je reconnais le matériel On nous a dit de nous attendre à ce qu'il advienne de la bête. Oui, je suis le marchand Rob. Est-il arrivé ? Ce qui est très bien. Maintenant, sortons rapidement. Maintenant, permettez-moi d' ouvrir le plan du personnage à la troisième personne l'heure actuelle, le plan du personnage à la troisième personne ne contient que cet appareil photo, qui est le seul appareil photo utilisé Ce que nous allons faire, c'est créer un réseau de caméras autour de lui, puis en utilisant la fonction d' interaction, nous allons envoyer ce réseau de caméras. OK. Et puis au PNJ, bien sûr, nous enverrons ce tableau et nous l'enverrons dans la fonction Tk, qui l'ajoutera au widget de dialogue, en gros, juste comme référence, n'est-ce pas ? Ensuite, dans le widget de dialogue, nous allons configurer essentiellement une petite zone de commentaires, et nous allons exécuter une fonction qui recherche quelle ligne vocale est prononcée, puis sélectionner la caméra. Cela aura de plus en plus de sens au fur et à mesure que nous approfondirons. Commençons donc par utiliser une référence. Nous savons donc que le pédant du PNJ place le joueur ici. Cette position est la position de conversation, et elle est actuellement configurée à 200 unités sur l'axe X. Donc, ce que nous allons faire c'est passer au personnage à la troisième personne. OK, puis nous passerons dans la fenêtre d'affichage. Ensuite, nous allons fabriquer une boîte de base. OK ? Nous voulons créer une boîte simple. Tiens bon. Non, nous voulons ajouter une boîte simple. OK, un box collider de base. Et nous allons l'appeler Talk reference parce qu' elle va simplement maintenir la position de référence lorsque les personnages parlent et vous pouvez voir que c'est la boîte. Mettons-le à 200 unités devant. Nous savons maintenant que c'est la position de notre boîte de référence. Maintenant que nous avons cette position de boîte de référence, nous voulons commencer à y ajouter des caméras. Je vais donc sélectionner la position de la boîte de référence, d'accord ? La référence Tk. Je vais ajouter, et je vais ajouter un appareil photo. Parfait. Et toutes ces caméras sont connectées à la référence de tuque, et j'appellerai la première zéro Je vais l'appeler zéro, un. Ensuite, je vais juste le dupliquer rapidement. Et AnULEngine fait un assez bon travail en gardant simplement un ensemble de noms sympas Maintenant, nous allons fabriquer six de ces caméras, six. Maintenant que nous avons ces six caméras ici, modifions-leur leur position. Maintenant, pour des raisons de simplicité, permettez-moi de faire un zoom arrière. Donc, pour que les choses restent très simples, laissez-moi vous montrer ma souris afin que vous puissiez voir sur quoi je presse avec ma souris et comment je l'utilise. Ainsi, lorsque je clique sur le bouton central de la souris, je peux me déplacer. Si je le maintiens, je peux changer la position de cette caméra. Je regarde donc maintenant les choses du point de vue d'ensemble avec WAS Day. Et la première position de la caméra sera une simple façon de regarder juste devant le joueur, regarder la personne devant, d'accord ? Donc, en gros, avec cette position de caméra, la caméra semble simple. C'est bon. Maintenant, pour la position deux de la caméra, je vais faire en sorte que la caméra regarde sous un angle. Je vais donc le déplacer exactement, disons, environ 200 unités vers la droite. Oui, c'est une bonne chose. Ensuite, je vais probablement le faire pivoter d'environ 45 degrés. Laissez-moi le faire pivoter sur l'axe Z. Disons 45 degrés, moins 45 degrés. Il pointe donc vers la boîte de ce côté. Alors je vais avoir un autre appareil photo. Remarquez, ils sont tous à peu près à la hauteur de la tête. La hauteur de la tête est donc d'environ 60. Cela représente également environ 60. C'est une bonne chose. Nous allons donc sélectionner la caméra numéro trois. Il augmentera également d'environ 60 unités. Mais au lieu de cela, il va être, voyons voir, un peu plus élevé. OK, un peu plus haut. Tout comme quelques positions de base de caméra. Portons-le à, disons, environ 1 h 20 OK. Ensuite, nous allons le faire pointer légèrement vers le bas. Disons jusqu'à moins 15, noyau. OK ? C'est notre prochaine position de caméra. Ensuite, nous allons sélectionner la caméra quatre, porter à environ six, en fait, non, la caméra quatre la rapprochera un peu plus du sol. Non, non, ce n'est pas vraiment un angle de caméra cool. OK, très bien. Nous allons le déposer plus près du sol à moins 60. Je vais le déplacer légèrement vers la droite jusqu'à moins 200 sur l'axe Y. Ensuite, nous allons le faire pivoter à environ 45 degrés. C'est le cœur. En fait, je pense que ce serait encore plus cool si je le réduisais à environ moins 90. OK, moins 90 c'est trop bas. Il pénétrera dans le sol. Disons 60. Mais puisque nous voulons qu'il soit pointé vers la tête de quelqu'un, soulevons-le, voyons voir, élevons-le d' environ 30 degrés, pour qu'il pointe vers le haut. N'oubliez pas que nous pouvons toujours réajuster la position de ces caméras ultérieurement Maintenant que c'est fait, ne nous reste plus qu'à fabriquer un appareil photo cinq et six. Donc cinq et six, c'est vraiment facile. Nous allons essentiellement les configurer, les faire pivoter, oh, désolé, les faire pivoter de 180 à 15 degrés pour que tout soit un peu centré sur le joueur, ce qui est plutôt bien. Et puis oui, ça devrait prendre six photos. La caméra 6 est la dernière. Nous devons découvrir quel est l' endroit idéal pour placer la caméra 6. OK, je vais le déplacer vers la droite. Pas assez bon. Laisse-moi le déplacer ici. Faites-le pivoter de 100 %. C'est bon. Après avoir effectué quelques réglages, j'ai maintenant les six caméras, et je les ai placées autour de moi. Nous avons donc des caméras. Oui, nous avons toutes ces caméras ici, une, deux, trois, quatre, cinq et six. Nous avons donc une référence Tk de base qui contient nos six caméras de style dialogue. Et, bien sûr, nous avons la caméra de suivi, qui est comme notre caméra normale que nous utilisons en tant que personnage du joueur. OK. Maintenant que nous avons ces caméras, bien sûr, si vous appuyez sur Play, vous savez, personnage du joueur utilisera toujours la caméra de suivi. Et ne vous inquiétez pas, cela ne fera pas chuter votre FPS. La caméra est juste la position de rendu. fait d'avoir plusieurs caméras ne détruira pas votre FPS car elles ne sont pas toutes actives en même temps. D'accord. Je reconnais. C'est plutôt cool. Il ne nous reste plus qu'à transférer les données des caméras dans le composant de dialogue. Nous allons donc apporter des modifications au composant de dialogue ensuite. Nous voici donc à l'intérieur du composant de dialogue. Et si vous vous souvenez, nous avons les lignes vocales des PNJ et les lignes vocales des joueurs. C'est cool. Nous allons créer deux nouvelles variables. La première, nous l' appellerons player underscore camera OK. Et nous allons le configurer sous la forme d'un entier et d'un tableau d'entiers. Nous allons configurer sous la forme d'un tableau d'entiers. Bien sûr, vous pouvez le faire en cliquant avec le bouton droit de la souris, ce qui le fera passer d'une valeur unique à un tableau. Ensuite, nous en ajouterons une autre, que nous appellerons cette fois la caméra NPC Underscore OK. Et pareil, ce sera un entier. Ces deux valeurs de la caméra du lecteur et de la caméra N PZ seront donc la caméra du lecteur et de la caméra N PZ celles que nous utiliserons pour choisir laquelle des caméras nous utiliserons C'est plutôt cool. OK. Maintenant que nous en avons fini avec cela, faisons une compilation rapide. OK, parfait. Les éléments de la caméra du joueur et de la caméra du PNJ sont donc maintenant là, et ce sont des entiers, des tableaux d' entiers Maintenant que ce tableau d' entiers est entièrement configuré, la prochaine chose que nous voulons faire est les ajouter également en tant qu' entrées ici pour l'événement personnalisé de la fonction toque Sélectionnez donc l'événement personnalisé de la fonction toque , puis passez aux entrées Et nous allons ajouter deux entrées. Et nous allons appeler la première entrée. Joueur, trait de soulignement, caméra, costume , et puis bien sûr, ce sera un tableau d'entiers, sélectionnez-le ici et faites-en un tableau Ensuite, le suivant, bien sûr, sera NPC, soulignement, caméra, et ce sera un tableau d'entiers. C'est aussi simple que cela. Vous remarquerez maintenant que la fonction a la caméra du joueur et la caméra du PNJ ici sous forme de tableau d'entiers, ce qui est bien Ensuite, nous devons les ajouter au widget de dialogue, passons au widget de dialogue, puis nous devons ajouter deux variables. Maintenant, ces variables, bien sûr, comme vous pouvez l'imaginer, seront celles de la caméra de soulignement du joueur Et ce sera un entier et un tableau d'entiers. Ensuite, nous aurons un PNJ sous caméra. Et c'est pareil. Les deux ne sont que des tableaux d'entiers. Maintenant que nous avons cette configuration dans le widget de dialogue, nous compilons, puis nous revenons au composant de dialogue, nous compilons. Ensuite, nous allons ajouter quelques nœuds supplémentaires à cette séquence. Nous allons donc ajouter ces deux éléments de plus en plus. Ensuite, nous allons casser l'AD pour voir le lien du port. D'accord, parce que nous voulons toujours faire le port d'ajout à la vue en dernier après avoir tout configuré. Ensuite, la prochaine chose que nous allons régler , c'est de régler, voyons voir, la caméra, nous y sommes. Nous voulons donc régler la caméra du PNJ. Ensuite, nous voulons régler la caméra du lecteur. OK, réglez la caméra du joueur. Nous avons donc réglé la caméra du PNJ et la caméra du joueur. Nous allons les configurer pour qu'ils soient les prochains sur la séquence, ce qui est cool. Enfin, nous allons le renvoyer comme dernier élément de la séquence. Oui, c'est plutôt cool. Maintenant c'est fait. Maintenant, nous allons simplement faire glisser la caméra du joueur vers la caméra du joueur et nous allons faire glisser la caméra du PNJ vers la caméra du PNJ Ce sont des sortes de sorties évasées. Quoi qu'il en soit, peu importe. Envoyez la caméra du PNJ vers la caméra du PNJ et la caméra du joueur vers la caméra du joueur Ensuite, nous reviendrons au paysan PNJ, au graphe d'invention, et remarquerons que nous avons, à l'entrée de la fonction d'événement Tok, une caméra joueur et une caméra PNJ Donc, ce que nous allons faire, c'est attendre. Ici Nasna Jago. Ce que nous allons faire, c'est à partir du composant de dialogue, en le faisant glisser vers l'extérieur. Ensuite, nous allons dire : « Hé, PNJ, procurez-vous la caméra du PNJ », puis elle se connectera à la caméra du PNJ, puis nous dirons « Hé, procurez-vous une caméra de couche », puis elle sera liée à la caméra du joueur Et puis c'est terminé. OK, nous en avons terminé avec la configuration de base. Compilons. Ensuite, nous passerons au composant de dialogue, qui est le composant de dialogue que nous utilisons. Et remarquez que nous avons deux autres variables, la caméra du lecteur, puis la caméra du PC. Ajoutons rapidement trois éléments pour les deux, et nous allons commencer par sélectionner un, un, un, et ici 444. OK. Cela ne servira qu'à des fins de test. OK. Une fois que vous avez terminé, faites une compilation rapide. Maintenant que c'est complètement compilé, allez dans le widget de dialogue, assurez-vous que tout est enregistré, et assurez-vous de cliquer sur Enregistrer tout car le projet prend de l'ampleur, et nous voulons nous assurer que nos modifications sont enregistrées. Maintenant que ceux-ci sont enregistrés, passons au widget de dialogue et entrons dans le code. Maintenant, nous allons créer une nouvelle boîte de commentaires. Je vais juste copier-coller celui-ci, d'accord ? Voyons voir que changer d' appareil photo est un gros problème. Permettez-moi donc de le configurer ici comme boîte à part entière, car c' est un gros problème, et il y aura pas mal de choses dedans. Et il va assez haut, donc ça va être bien. Et puis cela va mettre à jour la caméra, mettre à jour la caméra. OK, je pense que ça devrait avoir du sens. Mise à jour de l'appareil photo. De plus, je pense que la taille du téléphone devrait être d'environ 100 à ce stade, car nous recevons beaucoup de notes et je fais beaucoup de zoom avant. Hum. Quoi qu'il en soit, nous avons donc cette mise à jour de la caméra. Juste ici et il n'y a rien dedans. Ensuite, nous allons créer un événement personnalisé, que nous allons appeler événement personnalisé. Nous allons appeler cette mise à jour, en fait, nous l'appellerons caméra, soulignement, mise à jour OK, c'est tout ce que son travail va faire. Son travail sera de mettre à jour la caméra. Et maintenant, nous pouvons voir comment modifier l'appareil photo. Commençons par compiler. Maintenant, la toute première chose que nous voulons faire est de savoir quelle personne parle. Alors entrons et commençons par une simple branche. Et à l'intérieur de la branche, nous voulons, voyons voir, que c'est le joueur qui parle pour être le bon. Donc, si le joueur est en train de parler, il se déclenchera en vrai. Si ce n'est pas le joueur qui parle, le signal sera faux, ce qui est cool. Ensuite, nous allons en créer une autre, nous allons créer une autre fonction spéciale. Maintenant, nous allons l'appeler fonction personnalisée, et nous allons l'appeler caméra, sélecteur. OK. Nous n'en avons pas encore besoin, mais c'est bien de l'avoir là, d'accord ? Ensuite, nous sélectionnerons le sélecteur de caméra. C'est celui-ci, et nous voudrons un sélecteur de caméra, prêt à être activé, et puis voilà, pareil Un sélecteur de caméra à activer. Mais la seule différence entre les deux est qu'ici, nous allons tout d' abord obtenir le dialogue actuel pour le PNJ OK. Ensuite, nous utiliserons le dialogue actuel du PNJ pour contrôler cette caméra puisque c'est le PNJ qui parle Ensuite, nous allons obtenir la caméra du PNJ, voulons obtenir le réseau de caméras du PNJ Ensuite, on le traîne ici. Ensuite, nous voulons en obtenir une copie ou une référence, puis créer un lien ici. OK. Et puis sélecteur de caméra. Ici, nous allons avoir besoin d'ajouter une entrée. Et l'entrée que nous ajouterons à cela sera, comme vous pouvez le deviner, un entier. Maintenant, il suffit de sélectionner que nous appellerons caméra. D'accord, nous l'appellerons simplement caméra. Le nom n'est pas si important, mais maintenant, un événement personnalisé du sélecteur de caméra contient la caméra en entrée Maintenant que c'est le cas, la caméra est également là en tant qu'entrée, et nous allons la faire glisser, la connecter ici. C'est essentiel, et c'est pour le PNJ. Maintenant, pour le joueur, nous allons faire la même chose. Je souhaite obtenir la boîte de dialogue actuelle pour le joueur. Ensuite, nous voulons obtenir un joueur, en fait, vous voulez une caméra de joueur. Parfait. Nous voulons acheter la caméra du joueur. Maintenant que nous avons les deux, nous voulons obtenir toutes les données du joueur plutôt que d'en obtenir une copie, obtenir la boîte de dialogue en cours, la lier ici, puis nous l' utiliserons comme sortie. En gros, cela signifie que nous relions les lignes vocales des joueurs et les lignes vocales des PNJ à la matrice située à l'intérieur des caméras qui la matrice située à l'intérieur des caméras va sortir, ce qui est cool Maintenant que c'est fait, il suffit de sauvegarder, compiler, et nous avons les bases de ce dont nous avons besoin. Maintenant, nous pouvons réellement nous lancer et entrer dans le sélecteur de caméra proprement dit. OK. Maintenant, je suppose que pour des raisons d' organisation, laissez-moi appuyer sur le sélecteur de caméra ici, sur la fonction de sélection de caméra Maintenant, c'est la seule fois où nous allons utiliser le casting. OK ? Maintenant, nous allons rester simples. Nous allons chercher le joueur Pawn. OK. Permettez-moi de zoomer car c'est complexe. Nous récupérerons le pion du joueur, puis nous passerons au plan à la troisième personne En gros, nous voulons faire référence au personnage à la troisième personne et nous assurer que c'est bien celui que nous affectons, d'accord ? Et puis une fois que nous en aurons fini, la prochaine chose que nous allons faire est de commencer à appeler. Nous allons commencer à appeler les différentes caméras. OK ? Mais avant commencer à faire appel aux différentes caméras, nous voulons passer à SWITCH. OK, sur Int. Activer Int signifie qu'il sélectionnera une valeur basée sur le nombre entier. Maintenant, mettons le lien ici si le casting est réussi, puis nous associons la caméra à la sélection. C'est aussi simple que cela. Ensuite, nous en ajouterons exactement six. En fait, six. Je ne sais pas pourquoi j'en ai fait autant. J'en ai fait trop. Comment puis-je le supprimer Supprimer une épingle, supprimer une épingle. Retirez une épingle, retirez-la et retirez-la. OK, parfait. Ils sont six. Ils ont une fiche de 0-5. Il y a donc six broches différentes. Maintenant que nous l'avons, nous pouvons sélectionner n'importe quelle valeur de 0 à 5, et cela fonctionnera pour contrôler le commutateur Ensuite, nous voulons cibler quelques points. Je vais donc en tirer un plan de personnage à la troisième personne. Je vais le traîner, et je dirais « prenez zéro », « un ». OK ? Ce sont les noms des caméras. Ensuite, obtenez 02. Et en gros, c'est tout ce que je vais faire. Je vais obtenir 01, 02 et aussi 03. OK. Maintenant, les snaps vous emmènent ici. Et nous faisons essentiellement la même chose, obtenir 04 puis 05, puis 06. OK. C'est essentiellement ce que nous faisons. Nous y sommes, nous y sommes. OK, laisse-moi les aligner. Alignement, alignez-les tous vers la gauche. Ensuite, en cliquant sur chacun d'eux, en cliquant avec le bouton droit de la souris, puis en les alignant , puis je vais les empiler verticalement. Sympa. Maintenant, ils ont l'air bien organisés. OK, nous avons donc accès à toutes ces six caméras maintenant, ce qui est cool. Maintenant que nous avons accès à ces six caméras, nous allons utiliser une fonction de base assez basique, nous allons activer l'une d'entre elles. OK. Et ce que cela signifie, c'est que nous allons faire traîner les choses. Laisse-moi voir. Non, non, non, non, pas ça. Voyons voir, un set est actif. Oui Donc, la première chose que nous allons faire est de le mettre en mode actif. Donc, si vous sortez de l'appareil photo et que vous tapez set actif, cela peut en fait rendre toutes ces caméras inactives, d'accord ? C'est ça. Donc, une fois que nous avons configuré ce nœud actif, connectez toutes ces caméras désespérées, d'accord, ces caméras séparées, connectez-les toutes pour qu' elles deviennent inactives. C'est ce que nous faisons, comme vous pouvez le constater. ce que nous avons fait. Ensuite, laissez-moi traîner, puis je vais prendre la caméra de suivi. Et je l'ai également configuré pour qu'il soit inactif. D'accord, parce qu'il ne devrait y avoir qu' une seule caméra active à la fois. Maintenant que nous en avons fini avec cela, nous allons passer à l'interrupteur, et c'est là qu'il y aura des variations. Je vais donc m'éloigner de la première et la configurer pour qu'elle soit active. Et en gros, si le nombre qui entre est 01, il le définira comme actif. Et nous allons répéter le même processus pour chacune de ces caméras. Il suffit de faire glisser l'ensemble actif, puis de l'ajouter. C'est donc le cas pour la caméra numéro un. Ensuite, nous voulons le faire pour la caméra 2. C'est le joueur. Si la ligne de dialogue est composée de deux et que vous voulez vous assurer que l'activ est coché, laissez-moi simplement contrôler C et contrôler V la coller afin d'accélérer Ça fait donc deux, trois, quatre, cinq et six. Oui, ces nœuds sont en fait en train de devenir grands. ai donc lié deux. Il y en a trois, quatre, cinq et six ici. Et nous voulons nous assurer que les nœuds que nous sélectionnons entre eux fonctionnent comme prévu. Ce zéro n'est pas une valeur, mais pour des raisons de simplicité, laissez-moi laisser zéro en blanc. Ensuite, faites glisser le pointeur vers l'extérieur de la caméra , puis tapez set active. Donc, en gros, s' il passe à zéro, la caméra de suivi de base normale restera active. C'est plutôt fantastique. OK. Maintenant que nous l'avons, ce qui est plutôt cool, nous allons faire autre chose. Vous remarquerez que ce nœud ici active la caméra normale. Maintenant, ce que nous allons faire, c'est organiser un événement personnalisé. OK ? Et nous allons appeler cela une réinitialisation personnalisée du soulignement de la caméra événementielle OK. Et nous allons le lier à l'activation de la caméra de base de la caméra de base. OK. Maintenant que nous en avons terminé, nous allons revenir et passer à la vérification de la fin de la boîte de dialogue, ce qui est normal. Ensuite, nous allons taper, voyons voir. Nous allons taper la réinitialisation de la caméra. En gros, chaque fois que vous laissez attendre. Oui, c'est celui pour la sortie du dialogue. Chaque fois que le personnage du joueur quitte la boîte de dialogue, il doit toujours revenir à la position normale de la caméra. OK ? C'est bon. Maintenant que nous en avons terminé avec toutes ces fonctions personnalisées, nous pouvons commencer à les tester pour assurer qu'elles fonctionnent comme prévu. La dernière chose à faire est d'ajouter un nœud de mise à jour de la caméra. Donc, en gros, nous allons déclencher le nœud de mise à jour de la caméra. Laisse-moi voir. OK, donc juste après la boîte de dialogue de progression, d'accord, nous allons lancer le nœud de mise à jour de la caméra. Nous allons donc passer directement à la boîte de dialogue Progression. Viens ici. La mise à jour de la caméra sera l'une des premières choses que nous voulions faire. Laisse-moi déplacer ça, d'accord ? Je veux donc qu'il mette à jour la caméra. Et puis, en gros, après avoir joué à l'option A, avançons un peu. Nous voulons qu'il mette à jour la caméra avant de faire quoi que ce soit d'autre. Maintenant, je sais que cela a demandé beaucoup de configuration avant d' entrer dans le vrai moteur, mais maintenant, vous avez une assez bonne compréhension de ce que nous faisons. C'est bon. Maintenant, nous devons faire quelques tests de base. Alors, passez en mode jeu. Vous devez vous assurer que cela fonctionne comme prévu. Je reconnais que tu en as un. On nous a dit de nous attendre à de l'aide ici pour le numéro quatre ? Oui, le marchand avec mes affaires est-il arrivé ? Il l'a fait. Quelques centaines de marches le long de la rivière sur la rive ouest. Je vais m'en aller. Bonne chance Vous savez, une fille de notre village a été attaquée. Elle a failli ne pas s'en sortir. Mais son père est introuvable. Je vous en prie, nous avons besoin de ce qu'il y a de mieux. OK. Parfait. Cela fonctionne donc à peu près comme prévu. Donc, en gros, ce qui se passe , c'est passer à la composante dialogue. Je veux vous montrer en temps réel ce qui se passe réellement. Jouons donc rapidement à partir d'ici. Ce sont tous les nœuds. Je sais qu'ils sont assez petits, mais ce sont les nœuds qui sélectionnent. Maintenant, nous avons ce cliché. OK, ça va prendre un certain temps, je vais avoir besoin de changer avant que ça n'apparaisse vraiment. Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l'aide pour la bête. Oui, je le suis. OK. Le marchand avec mes affaires. Est-il arrivé ? Il l'a fait. Quelques centaines de marches le long de la rivière. Sur la rive ouest, celui de la rive ouest. Je vais m'en aller. Bonne chance Actif. Maintenant, ça fait une fille de notre village a été attaquée. Elle a failli ne pas s'en sortir. Mais son père est introuvable. Je vous en prie. OK ? Nous avons besoin du Bara en ce moment. Et puis, boum, nous revenons à notre appareil photo normal. C'est ainsi que nous fabriquons un système de caméra. Maintenant, sortons de là. OK. Maintenant, le plus important est que nous pouvons choisir entre plusieurs caméras. Nous devons essentiellement aller là-bas, et vous pourriez dire : OK, vous voulez pimenter les choses parce que nous savons que dans le plan à la troisième personne, nous savons que la première caméra fait face au PNJ Nous savons que la caméra 2 fait face au PNJ, et la caméra 3 fait face au PNJ, Et puis quatre font également face au PNJ. Hum, cinq font face au personnage du joueur, et six font face au personnage du joueur. Modifions-le donc de manière à sélectionner entre quatre, plutôt cinq et six pour le personnage du joueur. Ensuite, pour le PNJ, nous pouvons choisir entre les autres. Gardez à l'esprit que cela dépend de votre discrétion. Vous pouvez modifier la position de la caméra en fonction de ce que vous voulez. Ainsi, lorsque le joueur parle, il appuie sur la première ligne. Mettons-le en position six, deuxième ligne, position cinq, puis revenons à la position six, d'accord ? Je parle de cette ligne vocale par ligne vocale. Ensuite, pour le PNJ pour sa première ligne, passons à la première position Tiens bon. Permettez-moi d'abord d'y retourner. Tiens bon. Revenir en arrière, revenir en arrière, revenir OK, donc nous allons faire six, cinq, six. Ici, nous allons en faire un, nous en ferons deux et nous en ferons trois. Je pense que ce sera une façon simple de les examiner. Permettez-moi de m'assurer du widget de dialogue. Tout devrait fonctionner comme prévu. D'accord, cela devrait fonctionner comme prévu, sans aucune limitation. Voyons les nouveaux actifs, les nouveaux actifs, les nouveaux actifs. Les substances actives fonctionnent comme prévu. Retournons en arrière. OK. Maintenant, voici à quoi cela peut facilement ressembler. OK, à quoi ça peut ressembler ? Je reconnais le matériel que tu portes. On nous a dit de nous attendre à de l' aide pour la bête. Oui, euh, le marchand avec mes affaires est-il arrivé ? Il l'a fait. Quelques centaines marches le long de la rivière, à l'ouest du Bk. Appareil photo. Merci Je vais m'en aller. Bonne chance. Vous savez, une fille de notre village a été attaquée. Elle a failli, puis nous avons trouvé le premier bogue. OK. Donc, à la sortie, cela ne nous redonne pas le contrôle direct de la caméra. OK. Donc, tout d'abord, laissez-moi m'en assurer. Voyons voir, dialogue en cours, caméra du joueur, dialogue en cours, PNJ, caméra, selon la personne qui parle Cela fonctionne généralement comme prévu. Attends, je joue c'est parler, c'est un. Attends, laisse-moi vérifier ça. Jouer c'est parler, c'est l'option après le jeu, hein. Hein. Toutes les mises à jour de la caméra auront lieu avant que le joueur ne parle. Cela n'est pas correct. Ce que nous devons faire, c'est mettre fin à tout cela. Tiens bon. Détruisons ça. Cassez toutes les épingles. Cassez toutes les épingles. Ce dont nous avons besoin, c'est de me laisser également expliquer cela. Nous devons déterminer qui parle avant de mettre à jour la caméra. Alors, commencez par ça. Nous allons donc dire que le joueur parle , puis mettre à jour la caméra. Je me demandais pourquoi les choses ne fonctionnaient pas. Ok, ouais, ça y est. L'ordre doit être réajusté, compilé. OK, c'est compilé. Cela résout donc un problème, et nous ferons de même pour faire avancer le dialogue Brisez ce lien, rompez ce lien. Détruisons ça aussi. Nous voulons le joueur. En gros, nous voulons d'abord configurer et sélectionner qui parle avant de mettre à jour la caméra. cas contraire, l'appareil photo sera mis à jour avec de mauvaises informations. accord ? Sélectionnez-le, puis compilez rapidement. Et puis en ce qui concerne la vérification de la fin du dialogue, nous avons la fonction de réinitialisation de la caméra. OK. Cependant, lors de la sortie du dialogue, nous avons également besoin de la fonction ici. Donc, en gros, dans le dialogue de sortie, je pense que je vais réinitialiser la caméra très tôt. Je pense que je vais avoir besoin de le prolonger. OK. Immédiatement, le bouton de sortie de la boîte de dialogue est enfoncé. Nous devons immédiatement effectuer une réinitialisation rapide de l'appareil photo. Anwa maintenant Control S. Essayons encore une fois. En entrant, je reconnais le matériel que tu portes. Nous l'étions. Oui, je suis mon marchand. Il l'a fait. C merci. Je vais m'en aller. Bonne chance PNJ. Anva et maintenant, mesdames et messieurs, c'est ainsi que vous configurez un système de dialogue assez simple qui constitue votre introduction Je sais que cela a été assez complexe, mais si vous avez compris tout cela, croyez-moi, vous serez meilleur dans la mise en place de systèmes de dialogue. OK, tu vas être le meilleur. Et une fois que vous l'avez organisé, vous pouvez créer n'importe quel système de votre choix en quelques petits ajustements et Ensuite, la vidéo suivante sera une vérification rapide de votre santé mentale et une vérification des connaissances pour vous assurer que vous avez bien appris ce didacticiel Ensuite, je donnerai quelques recommandations sur les prochaines étapes et sur la façon planifier votre propre système de dialogue pour vos jeux complets. Passons à la vidéo suivante. 28. 027 Vérification finale des connaissances et réflexions finales: C'est bon. Faisons une dernière vérification rapide des connaissances. Il s'agit de votre dernière introduction pour vous assurer que vous avez appris tout ce que vous pouvez dans ce cours. Nous avons commencé par les bases de l'acquisition d' Unreal Engine Audacity et de toute écriture, puis rapidement expliqué comment écrire et créer Nous y parvenons en utilisant un bon décor et en comprenant que le décor crée les problèmes que vos personnages essaient de résoudre. Le conseil le plus important est probablement de toujours utiliser ce que vous avez à votre disposition. Cela signifie que vous devez utiliser en toute confiance vos dialogues, vos scripts, les appareils d' enregistrement et les talents vocaux dont vous disposez. Utilise juste ce que tu as. C'est le seul moyen de vraiment faire de votre mieux, puis nous avons abordé la question de savoir comment obtenir du son, commencer à l' enregistrer, à l'utiliser et à le découper pour l' exporter dans Audacity, ou dans n'importe quelle application de montage vocal dont vous disposez Nous avons également examiné une structure de dossiers recommandée lorsque vous enregistrez vos lignes vocales et fichiers vocaux afin de vous assurer que, quelle que soit la taille de votre projet, vous puissiez facilement retrouver vos fichiers et simplifier les options de localisation. Ensuite, nous sommes entrés dans Unreal Engine, et nous avons commencé à travailler sur la mise en place d'un PNJ avec lequel nous pouvons interagir Je reconnais que tu dois parler à. Nous l'étions. Nous sommes arrivés et avons défini une grande partie de la logique fondamentale, à savoir sauter le dialogue, faire avancer le dialogue et même un sélecteur de caméra plutôt sympa qui nous permettrait de choisir entre les différentes positions de caméra pour notre Voici un aperçu très simplifié dizaines de petites choses que nous avons abordées. Cependant, maintenant que vous en êtes là, j'espère que vous avez une compréhension suffisamment approfondie et raisonnable de la façon dont Unreal Engine gère peut plutôt être utilisé pour gérer un système de dialogue L'une des choses les plus importantes est de comprendre les interfaces. Vous savez maintenant comment faire en sorte deux plans différents communiquent entre eux, en comprenant les composants Vous savez maintenant comment créer un composant, et les composants peuvent être utilisés pour de nombreuses choses différentes, et les utiliser pour créer un système de dialogue en gérant un widget et en y transmettant des données. Et comme il est évolutif, ce composant de dialogue peut être ajouté à n'importe quel PNJ du monde Et en gros, vous pouvez ajouter un dialogue à pratiquement n'importe quel PNJ, tant qu'il possède ce composant de dialogue, vous pouvez l'ajouter, ce qui est cool Il fonctionne de manière universelle. Maintenant, pour terminer, le dernier conseil que je vais vous donner est de toujours vous rappeler que planifier, c'est bien. Une bonne planification avant de configurer votre système vous votre système garantira qu'il fonctionne comme vous le souhaitez. Bien entendu, vous avez besoin de quelques connaissances de base sur le fonctionnement d'UnrelEngine, et j'espère que je vous en ai donné suffisamment pour que vous puissiez configurer ou au moins démarrer votre système de dialogue pour votre De plus, il s'agit d'Hyper Dev, ce qui met fin à l' introduction du système de dialogue Unreal Engine Maintenant, si vous avez vraiment aimé ce cours, ne me dérangerait pas si vous l'avez révisé et noté, et quoi qu'il arrive, j'écoute toujours les commentaires. Comme cela touche à sa fin, je voulais vous montrer une animation spécifique. Ça, le Non, je vais le faire. Non. Va-t'en. En ce qui concerne Unreal Engine, l'un des points les plus intéressants d'Unreal Engine est la façon dont il vous permet de cartographier Oui, des mouvements du visage. Des méta-humains. L'un des prochains cours que je vais suivre portera donc sur la façon de cartographier mouvements et les animations de votre visage sur le méta-humain et de les utiliser pour aligner le dialogue sur l'animation faciale. Ça va être super cool. Mais c'est tout pour le moment, et je vous verrai probablement dans la prochaine leçon.