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.