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