Transcription
1. Introduction du cours: Bienvenue sur le site de prototypage
rapide d'Unreal Engine Five, Slochar. Si vous êtes prêt à apprendre le développement de jeux en
créant de vrais projets, vous êtes au bon endroit. Dans ce cours, nous allons créer
un jeu Sloccar classique de A à Z en utilisant le système Blueprint d' Unreel Engine Five Ce projet fait partie de la deuxième partie de
ma
série de prototypage rapide publiée ici sur Skillshare , dans laquelle nous nous plongeons
dans des
projets du monde réel tout en acquérant des compétences de base en matière de développement de
jeux vidéo Au fur et à mesure que nous développons, vous acquerrez une expérience
pratique des domaines tels que les splines, la gestion des
entrées, les événements, les fonctions et les
compétences en logique de jeu, qui sont non seulement fondamentales pour le développement de jeux mais également pour le prototypage rapide Ce cours s'adresse à tous les niveaux, mais si vous
débutez avec Unreal Engine, je vous recommande de commencer par ma classe fondamentale Unreal Engine Five
Blueprints Ce cours couvre
tous les éléments essentiels, vous vous sentirez
donc comme chez vous alors que
nous nous pencherons sur ce projet. Et peut-être que pendant que vous y êtes, vous voudriez
suivre la première partie de
ma série de prototypage rapide où nous créons un jeu original Mais ne vous inquiétez pas, si vous ne
voulez pas créer ce jeu, vous vous sentirez également comme
chez vous ici. À la fin de ce
cours, vous aurez un jeu de cartes
à sous entièrement fonctionnel auquel vous et un
ami pourrez jouer même temps, et une meilleure compréhension du prototypage
rapide et du
moteur Unreal pendant que vous Donc, si vous avez hâte de
créer vos propres jeux dans Unreal Engine Five et
d'acquérir de l'expérience
pratique, inscrivez-vous dès aujourd'hui, et je vous verrai en classe
2. Slot Car : introduction: Bienvenue sur un deuxième prototype. Nous allons en fait
créer quelque chose vraiment différent de ce que vous pourriez voir normalement
dans les cours irréels modernes Nous allons créer
un jeu de type carte à sous. La raison en est
que cela
vous apprend beaucoup de choses différentes, notamment en ce qui
concerne le fonctionnement des entrées, le fonctionnement événements dans Unreal et la manière de
les déléguer correctement, ainsi que la façon dont acteurs travaillent dans
le monde du jeu Maintenant, ce que je
vous recommande, c'est de suivre le lien dans la description ci-dessous et de jouer à l'un de ces jeux de machines à sous. Je recommande également de
désactiver le son et,
vous savez, de sélectionner deux joueurs, puis vous pourrez voir
tout droit
et essayer de le jouer principalement par vous-même ou par quelqu'un d'autre si vous avez
quelqu'un à côté de vous. Mais vous pouvez voir ici que vous avez deux touches dans le clavier. Nous avons le contrôle et la touche T va contrôler
les deux voitures différentes. Donc, ce que vous voyez ici c'est que le clavier contrôle
deux entrées différentes, et c'est ce que nous
allons essayer de faire dans notre prototype. Donc, avant de commencer celui-ci, prenez le temps de jouer
à ce jeu ou un jeu similaire et
notez simplement quelques points que
vous pouvez remarquer à ce sujet, ce que vous pourriez penser que
nous devrions
faire pour créer un
prototype comme celui-ci. Je te verrai dans le prochain.
3. Voiture à sous : montage du projet: Comment ça va ? Nous allons
simplement mettre en
place ce projet. Celui-ci va
être beaucoup plus facile. Nous voulons simplement mettre en place un projet
et créer un niveau. Donc, comme la dernière fois, nous
allons créer un blanc. Je vais le configurer comme
je vais l'appeler. Beaucoup de soulignements de voitures. Moi, donc je sais ce que c'est. Je n'ai pas besoin de contenu vedette, et je veux m'assurer qu'il est conforme au plan.
Nous allons donc simplement le créer Cela peut prendre un
peu à la fois juste à cause de l'initialisation, mais encore une fois, c'est
un projet vide, donc tout devrait bien OK, comme la dernière fois, l'Unreal Engine
Five l'a chargé
et il est chargé
avec le niveau par défaut Nous pouvons attendre qu'Abacily soit victime de
discrimination. Cela ne devrait pas prendre longtemps. Il devrait y
avoir des moyens de changer cela, mais pour moi, cela me
convient parfaitement. J'ai un bon ordinateur
pour faire face à ça. Arrête. Ce que nous allons faire,
c'est simplement créer un nouveau niveau. Donc, comme la dernière fois, je
vais passer au contenu. Je vais juste créer un
nouveau dossier appelé levels. Et pendant que je suis ici, je vais
simplement cliquer sur Niveau. Appelons celui-ci, car nous pourrions créer d'autres
pistes pour ce jeu. Nous allons l'ouvrir. Nous vous demanderons de faire des économies. Je vais
trouver du noir. Comme la dernière fois, je veux juste que vous vous rendiez dans les paramètres du projet. Chaque fois que
les paramètres du projet se chargent, nous choisissons les cartes et les modes. Je vais
les définir par défaut. part cela, nous devrions être des moyens simples et gentils
de passer à la leçon suivante, donc je vous verrai dans la prochaine.
4. Slot Car : créer le morceau: Bon retour. Nous
allons donc créer une piste. La première chose que vous
voudrez probablement faire
serait soit de fabriquer une voiture capable de
bouger, soit de créer une piste. Maintenant que nous ne créons pas un jeu de course normal dans
lequel nous contrôlons une voiture, comme vous
le feriez pour la vitesse, nous recherchons un jeu
de gaetrics classique ou de style Slo Cars
Ty Nous voulons probablement d'abord créer
la piste, car nous voulons en fait
créer ce que l'
on appelle une colonne vertébrale pour
faire le
tour de la piste afin que les chariots puissent faire le tour de
la piste d'une certaine manière Nous allons donc avoir besoin d'un morceau pour en quelque
sorte construire notre shaper. Donc, je
vais d'abord
faire un clic
droit sur mon contenu. Je vais également créer un
nouveau dossier appelé Assets. Et dans ce dossier,
je vais prendre une photo d'une piste de
course automobile. Maintenant que j'en ai téléchargé
un sur Internet, vous pouvez accéder à n'importe quel type
de piste que vous voulez. Tant qu'il s'agit d'un fichier PNG,
cela devrait probablement fonctionner. Mais j'ai créé le lien et vous pouvez télécharger
le morceau de Silverson, que j'ai obtenu sur le site de
F one et convertir en PNG dans les notes
Lasser ci-dessous Et ce que je vais faire, c'est
simplement le glisser ici. Il va importer, je
vais faire certaines choses, puis il va importer là-bas. Nous l'avons récupéré maintenant. Nous devons faire quelque chose
avec ça maintenant. Donc, ce que je vais faire, c'est
rétablir le
panel d'acteurs que nous avions auparavant. Je vais juste me
débarrasser de ce
journal de sortie et je n'en ai pas besoin
pour le moment. Et je vais faire venir
ce qu'on appelle un avion. Et ce qu'est un avion, c'est en
quelque sorte une forme en deux D. Je passe à zéro. Écoute, F, le focus. Tu ne le savais pas avant, F, ça mettra toujours tout en évidence. Pour le moment, il est
allumé, donc nous ne pouvons pas le voir. Mais comme je l'ai dit,
un plan est une forme en deux D qui
n'a pas d'axe Z. Il a donc juste une forme en X et en Y. Ce n'est pas le cas, nous pouvons évoluer
en Z et rien ne se passe. Je vais le remettre à
zéro, à nouveau à un. Maintenant, nous devons ajouter
une sorte de lumière à cela. Nous pouvons simplement l'éteindre, et vous pouvez voir qu'il
joue ici, mais j' aimerais avoir une
sorte de lumière Je vais donc
placer le panneau des acteurs, ce petit bouton ici. Je vais faire une lampe
directionnelle, et je
vais probablement la placer face vers le bas
pour que vous puissiez voir. Tant que cette partie est allumée, je devrais être
plus qu'heureuse ici. J'accepte cela comme
zéro, zéro, zéro, puis cela en baisse de 90
degrés, ce qui devrait être bien. Nous pourrions l'avoir, peut-être pour le
faire pivoter légèrement sur le côté, puis en avoir
un deuxième. Cela ajoute donc une ombre. Mais dans le second cas, nous
baissons l'intensité. Il a donc un éclairage un peu plus
uniforme. C'est une technique d'éclairage vraiment très peu coûteuse et rapide. Je ne
recommanderais pas toujours de le faire. Je suis sûr que vous, les artistes de l'
éclairage pourriez peut-être vous assassiner pour cela, mais c'est une méthode très
simple et agréable pour le prototypage Maintenant, j'ai
cette image dedans, par
exemple, mais je veux en quelque sorte mettre
dans ce plan. Nous pouvons facilement le faire glisser
dans notre avion Et ce que vous verrez, c'est cela finira par
créer un matériau, puis nous faire une carte,
ce qui est très beau, en fait. C'est très pratique. Le problème c'
est qu'il est assez petit pour le
moment, et qu'il est également carré. Nous allons donc réellement
agrandir cet avion. Comme nous
l'utilisons en fait comme toile de fond, cela ne devrait pas vraiment avoir d'importance quant à nos collisions à ce sujet. Mais comme il s'agit déjà
d'une image assez texturée et de
haute qualité, moment où nous la modifierons ne
devrait pas avoir
trop d'importance Donc, ce que nous allons faire, c'est sur
mon axe X, je vais en faire 180 et en y, je vais en
faire 100, puis nous
allons au zoo maintenant. Et nous allons
voir un bon Matt, nous pouvons vraiment nous aider.
Je vais prendre du
recul, cliquer sur le haut et passer sur les lèvres et
vous le verrez. En fait, je pourrais
travailler juste pour être en mode
lèvre, juste pour que ça
aide un peu. C'est un peu plus rapide
pour moi de le faire. Nous pourrions jouer un peu avec
le matériel. Donc, si nous ouvrons ce sujet, nous
n'avons pas vraiment travaillé avec matériaux utilisés dans aucun de ces domaines. Mais nous pouvons
travailler là-dessus. Une solution serait peut-être simplement d' ajouter une valeur à la rugosité. Si vous cliquez sur l'un d'entre eux. Cela le rendra brillant ou nous avons dit
de le rendre très rugueux Alors maintenant, sauvegardez ça. Voyons comment cela fonctionne à nouveau. Vous pouvez voir que c'est un
peu plus. Il capte
un peu plus la lumière. Si on le met à zéro, il sera très brillant, et
vous allez le voir. Soyez très, très dynamique,
très réfléchissant. Vous pouvez voir, mais vous
pouvez voir d'où
vient la lumière . Mais c'est bon. Nous allons laisser ce
déchargement. Nous examinerons peut-être matériel une autre fois ou dans le
cours plus avancé par la suite Nous devons donc maintenant nous lancer
sur la piste. Nous avons parlé de
ce qu'on appelle une colonne vertébrale. Nous avons en quelque
sorte besoin de nous embrasser. Donc, la façon dont nous allons procéder est
de créer
un nouvel acteur, un
nouveau dossier appelé Blueprints Tirages. Ensuite, nous allons cliquer avec le bouton droit sur
Blueprint class Actor. Et cela s'
appellera BP Underscore. Ça s'appelle Track. Soulignez l'acteur. Cet acteur de piste est
en fait très simple. Il ne s'agira que d'un seul composant. Ce composant, on l'
ouvre et on le
désactive, va juste être
ce qu' on appelle une colonne vertébrale. Nous cherchons une colonne vertébrale. Maintenant,
vous pouvez même passer le curseur sur une spline , et
elle nous le dira, mais une composante splénique est
essentiellement un ensemble de points,
puis des équations mathématiques pour montrer une trace quelconque Par exemple, dans
Unreal ou si d'autres éléments peuvent être utilisés pour
définir le comportement de l'IA, il peut également être configuré pour
définir les trajectoires de la caméra afin de voir
comment la caméra peut pivoter Ce sont des choses vraiment,
vraiment, vraiment puissantes. Comme vous pouvez le voir
ici, il s'agit en grande partie de visionner des objets
animés, mais en fait, pour nous, nous
allons nous en servir pour avoir la piste que les
voitures vont emprunter. Donc, tout ce que je veux
faire, c'est
configurer cela, définir la spline et je
vais définir la colonne vertébrale comme valeur par défaut Je vais appeler ça colonne vertébrale. Imaginons Track Spine
pour savoir ce que c'est. Vous pouvez les renommer en cliquant
simplement sur FTP ou en cliquant avec le
bouton droit de la souris, puis en renommant.
Compilez sauvegardé. Et ce que nous voulons faire maintenant,
c'est faire glisser cela sous forme de
spline ici Nous allons le faire là où
il commence. Mettons-le donc ici. Et vous pouvez maintenant voir que je
vais essayer de le déplacer. Je l'ai déplacé, donc il est
parfaitement là. Ce que vous allez voir maintenant je vais
savoir que ce que je vais
faire , c'est pour notre propre sécurité, nous allons faire ce qu'on
appelle un panneau d'affichage Ce qu'est un panneau d'affichage est essentiellement
une petite texture en deux D, qui
sera toujours une caméra Facemo Nous allons nous assurer
qu'il est caché dans le jeu,
mais visible, afin que nous
ne puissions voir qu'un éditeur. Alors maintenant, nous pouvons participer
si nous voulons le faire. Nous pouvons simplement cliquer dessus
et il le sélectionnera. Nous avons un ou deux points. En fait, il nous faut
bien plus
de points que deux. Et ce que nous
allons finalement faire, c'est couvrir l'intégralité du morceau
avec ces splines C'est donc ce que nous
allons faire maintenant. Cela prendra un certain temps, et
plus vous ajouterez de points, plus vous
obtiendrez d'informations et plus
elles seront affinées. Pour ce faire, il faut donc cliquer
sur le point suivant. Nous pouvons nous balader. Ils vous rapporteront deux points supplémentaires. Chaque fois que vous
sélectionnez un nouveau point, ils créent les points
tangents. Ces points tangents
modifieront la dureté du virage Car cela changera la
façon dont vous souhaitez le tourner. Donc, si vous les agrandissez,
nous pouvons les fabriquer. En fait, si nous cliquons
sur celui-ci ici, nous voulons passer
du local au mondial. Nous pouvons faire en sorte que
ce soit à très long terme ou à très court terme. le moment, en fait,
je ne veux pas qu' aucun songer Control soit verrouillé.
Je vais y retourner. Donc, en cliquant sur ce
petit point ici, je vais faire glisser cette
partie jusqu'à la fin de la courbe. Nous voyons que nous
en sommes arrivés là. Ensuite, en utilisant la
touche Alt pour dupliquer, je peux ensuite faire glisser
un autre point vers l'extérieur, et le placer là
où nous voulons qu'il se trouve. Mettons-y un point, et passons à un autre. Cela peut aider à le ramener
aux coordonnées mondiales. Et je vais l'étendre
encore une fois pour le faire ressortir ici, et ensuite nous
voudrons probablement y revenir. Maintenant, vous voyez que c'est un comportement
vraiment étrange ici. Qu'est-ce qui se passe ? Déconnectez-vous
de la colonne vertébrale. Cliquez à nouveau pour déconnecter. Ce que nous pouvons voir ici, c'est que
lorsque nous cliquons dessus, vous pouvez voir que c'est une
très longue tangente, donc je vais la
faire glisser et l'introduire Vous pouvez donc voir que
c'est un peu plus d'eptine. Je pourrais
même allonger cette tangente parce que nous voulons un
petit tour, ou nous pourrions aborder cette question parce que nous voulons que
les joueurs
s' enfoncent profondément
dans Comme vous pouvez le voir maintenant, c'est ainsi que nous
allons créer un morceau. Nous allons faire le tour du monde. Donc. Pour le reste de cette leçon, je veux que tu sortes et que tu
fasses le reste de ce morceau. Je vais le faire avec toi.
Il se peut que j' augmente le micro pour que vous ne m'entendiez pas me concentrer,
mais ça ira. Le non. OK, oui, nous sommes juste
arrivés au bout de tout ça. Donc, une chose que nous pouvons facilement faire maintenant pour
terminer cela, que
si vous cliquez sur la colonne vertébrale ici, nous pouvons en quelque sorte descendre
et faire une boucle fermée, et cela se terminera en boucle. Vous pouvez voir qu'il y a
quelque chose de louche ici. Nous pouvons résoudre ce problème en
trouvant la tangente ici. Tangente de courbe personnalisée. Il suffit de
faire un linéaire dessus. Voilà. C'est sympa et facile. Faites une tangente linéaire ici. Oh, non, est-ce que vous obtenez
la courbe complète, ce qui est vraiment agréable et pratique. Alors maintenant, vous avez une
piste complète à emporter. Vous pouvez même cacher l'avion, et vous verrez que la piste
est prête à être parcourue. Nous examinerons encore la leçon suivante, la leçon
suivante, nous
examinerons le mode de jeu et entrées, puis nous
finirons par faire monter la voiture en grue. Fantastique Nous
vous verrons dans le prochain.
5. Voiture à sous : entrée: Bon retour. Vous
devriez maintenant avoir
une piste complète et complète, et il est temps de
commencer à faire
le gros du travail de
ce prototype. Nous devons donc configurer nos entrées, et nous devons également
configurer nos classes,
c'est-à-dire notre mode de jeu,
notre manette de jeu,
et je jouerai un pion Je veux commencer
par faire quelques entrées. Nous allons donc faire la même chose que
la dernière fois. Ce que nous allons faire,
c'est passer au contenu, cliquer avec le bouton
droit de la souris dans un tiroir Mil, créer un nouveau dossier, et nous
allons extraire les entrées. Et puis nous aurons tout ce
que j'aimerais vraiment
faire , c'est une IA. Nous avons juste besoin d'un IA. Je sais que nous avons besoin de
deux IA, en fait, un pour le premier joueur
et un pour le deuxième joueur. Nous allons donc avoir cette bouteille
appelée IA underscore. P. 1. Eh bien,
allons-y, P one, oui. Euh, oui, donc ce que nous voulons juste faire,
c'est ouvrir notre fichier IA. Encore une fois,
assurez-vous qu'il s'agit d'Access Wandi. C'est parce que nous
allons réellement
imiter la force avec laquelle les
fichiers sont impressionnés Même si nous
utilisons un clavier, qui n'est qu'une sorte
d'entrée binaire, activé ou désactivé. Vous voudrez
peut-être l'
implémenter dans un contrôleur
ou nous pourrions le faire plus tard,
car il utilise un Access Wandi,
cela
nous permettra peut-être de faire quelque chose comme
l'accélération également Nous pouvons en faire une très
belle et facile maintenant, en
contrôlant C ou en copiant ou
en dupliquant. Et comme avons
un à la fin, cela ajoutera automatiquement
le chiffre deux à la fin, ce qui est agréable et facile pour nous sauver. Créons donc un IMC. Donc, dans le contexte du mappage des entrées,
nous allons l'appeler IMC,
underscore, SlackR, car encore une fois, nous
pourrions Nous devrions probablement commencer à
appeler la valeur par défaut, mais c'est juste un
bon moyen pour nous savoir lesquelles nous faisons. Et nous allons
ajouter deux mappages. Donc, le premier
aura 41 ans, il y aura le W et le second
, l'automne 2. Et ça va avoir une planche. Mais c'est ce que j'ai demandé. Juste un petit rappel pour obtenir
facilement la clé dont vous avez besoin en utilisant ce petit bouton
ici. Nous allons le configurer. Même au revoir. Sauvegardez ça. Ces entrées sont plutôt
agréables et faciles à faire maintenant. Nous avons donc un trek, agréable facile à faire, et nous avons
apporté quelques contributions. Il ne nous reste plus qu'à
créer tous les cours. Maintenant, nous allons procéder
un peu différemment, comme je viens de vous le dire
lorsque nous effectuons les entrées. Mais normalement, dans les jeux
multijoueurs, vous aurez des pions à deux joueurs, personnages à deux
joueurs, manettes à
deux joueurs parce que vous avez deux
méthodes de saisie différentes, ce qui
signifie que nous aurions peut-être deux manettes pour
contrôler chaque voiture Maintenant, dans ce jeu,
nous
utilisons le clavier
pour les deux manettes, ce qui signifie que nous devons
essentiellement déléguer ces entrées à deux acteurs
différents via une salle de classe elle-même. Nous pourrions donc utiliser une manette de
jeu, et je vais régler tout cela de cette façon. Mais en fait, nous allons
créer un pion joueur, qui contrôle ensuite deux acteurs C'est peut-être une
façon alambiquée de voir les choses,
mais c'est vraiment une bonne
façon d'apprendre des choses comme attachement et la gestion d'événements par le
biais Je vais donc
faire trois choses. Tout d'abord, je vais
créer un mode de jeu, que je vais appeler le mode de jeu
BP Race, lequel je vais automatiquement dans
lequel je vais automatiquement accéder
aux
paramètres du projet et au set. Donc oui, le
mode de jeu BP Race est bien joué. Je vais ensuite créer un pion, qui
s'appellera BP Montroller. Maintenant, ça va être un
peu confus,
mais encore une fois, cela aura
beaucoup plus de sens une fois que nous y serons Et nous allons en
créer un dernier, qui est juste un acteur parce que nous ne le
possédons pas vraiment Cela ne reçoit aucune entrée. C'est le pan, puis les pions
vont déléguer la saisie. Nous allons créer
un acteur appelé BP Car mais sympa et
facile, ces fans gratuits. Ce que nous pouvons faire
instantanément, c'est ouvrir notre manette car nous devons faire quelques
petites choses. Nous devons également ouvrir notre mode de jeu pendant que
nous sommes en mode jeu Assurez-vous de définir notre classe de pion
par défaut comme étant notre pion de manette BP Nous allons nous assurer qu'
il hérite du niveau, mais juste au cas où il serait
toujours pratique de l'avoir Donc, dans notre pion, nous avons
vraiment installé une caméra. Parce que c'est ainsi que
nous allons voir. Nous allons avoir
une caméra parce que c'est réaliste, nous créons en quelque sorte
un jeu solo, mais nous avons contrôle de deux
choses différentes pour deux personnages
différents Donc j'ai besoin que tu
ouvres notre contrôleur de voiture, notre pion de contrôleur BP Ensuite, nous allons ajouter, et nous allons ajouter une caméra. Et nous pouvons facilement régler le problème maintenant. Maintenant, nous pouvons mettre notre pion
manette dedans, et vous pouvez voir qu'il est bien éclairé Si je fais pivoter cette caméra pour qu'elle regarde vers le bas,
puis qu'elle la fasse ressortir. Je me rends compte pourquoi il
n'y a pas de feux directionnels ? Oh, il est dans l'
avion. Voilà. Vous pouvez le voir ici, il est également très lumineux, et si nous le faisons
simplement pivoter, pour qu'il s'intègre parfaitement. Correctement, c'est à l'envers. Ce n'est pas un Tg 108, là. Vous pouvez voir qu'il fait très clair. Et cela est normalement dû à
l' exposition de l'appareil photo. Nous pouvons donc résoudre ce problème
en entrant dans notre appareil photo, puis en cliquant
sur Exposition. Vous verrez tous ces
paramètres ici, qui sont certains éléments. Ce que vous allez regarder, ce sont
les EB 100 minimum et maximum. Est-ce vraiment
intéressant, car il s'agit de trouver le bon niveau de lumière entre
ces deux valeurs massives. Et
il s'agit de la valeur la plus basse possible et de la valeur la
plus élevée possible. Donc, ce que nous
voulons faire, c'est les mettre à une valeur par défaut. Je vais donc les régler tous
les deux pour deux. C'est donc un peu limité
à l'exposition de deux. Et puis vous voyez que cela devient un peu plus
vivant et moins lumineux. Nous pouvons même si vous vouliez le réduire
à nouveau, certaines personnes
voudront peut-être le réduire à un. Je pense que plus il est bas, plus il devient brillant, que nous
pouvons même le libérer, et cela pourrait
parfaitement fonctionner. C'est sympa et facile. Bien que nous devions contrôler ou
mettre en gage, ce que nous voulons vraiment
faire, une fois que nous nous assurons de l'avoir ici, c'est
regarder en bas, comme nous l'avons fait avec
notre dernier prototype, nous voulons nous assurer que
ce soit un désastre Et nous devons nous assurer de
cliquer sur la racine de l'ego. Ou pour posséder, nous allons
avoir le joueur zéro, sympa et facile. Maintenant, nous devrions être
assez bons pour continuer
et puis maintenant, recteur
automobile commence à
diviser tous nos événements et à les préparer pour le départ
6. Voiture à sous : créer la voiture: Fantastique. Bon
retour. Nos acteurs sont maintenant tous prêts, et nous avons également notre
piste d'athlétisme à parcourir. Nous pouvons maintenant commencer à fabriquer notre voiture, ce qui
va être vraiment très agréable et facile, en fait, parce que nous avons cette colonne vertébrale, et tout ce que nous voulons, c'est
faire rouler la voiture
le long de la colonne vertébrale. Cela ne devrait pas être
aussi difficile que nous le souhaitons. Maintenant, c'est ce que
je dis, et je touche de l'eau
en disant cela. Donc, la première chose que je fais,
c'est ouvrir notre voiture pornographique. Pour le moment, nous n'avons pas
vraiment grand-chose pour notre voiture. Nous n'avons pas de moustiquaire pour voitures. Peut-être tard ou plus tard, ou nous pouvons organiser
une session d'extension, qui indiquera où nous pouvons
trouver des actifs à placer ici. Il ne s'agit pas d'un cours
de création d'actifs. Nous n'allons pas nous
libérer là-dessus. Nous ne faisons pas ce genre de choses. Nous sommes juste là pour créer
des jeux avec ce que nous avons. Je vais donc juste
utiliser un tube cube. Les tubes s'en
sortent avec plein de choses, et c'est très facile à utiliser. Et voici notre cube. Nous pouvons appeler cela.
Appelons cela un filet de voiture. C'est notre coût. Vous pouvez
utiliser un peu d'imagination ici. Nous pourrions même y ajouter
une flèche, mais en fait, ajoutons-y
une flèche. Les flèches sont de
petites choses
vraiment très puissantes qui
nous aident à stimuler le
regard des voitures , parce
que c'est pareil Tout est symétrique. Nous devons nous assurer de
savoir dans quelle direction se trouve le front. Nous avons donc mis cette
petite flèche ici, et nous pouvons cliquer un
tout petit peu sur Se cacher dans le
jeu sur la flèche, afin de pouvoir même voir où
la
flèche est dirigée lorsque nous jouons . Par coffre-fort.
Ouvrons notre graphe d'événements. Nous avons deux ou trois choses ici. En fait, ce que nous
aimerions faire ici c'est d'abord suivre la trajectoire d'une voiture afin de
savoir où elle se trouve, puis nous assurer de
vouloir déplacer la voiture le
long de la Je dois donc créer
une nouvelle variable. Je vais appeler ça. En fait, nous n'
allons pas créer une variable nous allons le faire un
peu différemment. Ce que je vais faire,
c'est non, non, oui. Nous allons en créer un nouveau. Je vais donc créer
une nouvelle variable. Je vais l'appeler track actor
ou track actor, appelons-le track actor. Acteur de piste. Et ce sera une piste
de soulignement BP
de type variable piste
de soulignement BP
de type Comédien. Maintenant, c'est une leçon vraiment
amusante où n'importe quel acteur que nous avons créé ou n'importe quelle classe de
plan que
nous avons créée, nous pouvons le
définir comme variable Nous pouvons définir une référence d'objet, qui signifie que cela obtiendra une référence à quelque chose
dans le monde. Si nous voulions une référence de classe,
nous pourrions obtenir du suf. Nous pourrions peut-être accéder à
du contenu provenant de cette classe, mais cela ne nous
permettra pas d'accéder à tout ce qui se trouve déjà dans
le monde du jeu Nous voulons donc obtenir cette référence
d'objet. Nous allons
exposer l'instance lors du spawn parce que
nous voulons vraiment le définir dans le monde du jeu ou dans l'éditeur, le
rendre facile et agréable Donc, ce que je vais faire
dans le cadre de notre événement, commencez à jouer. vais chercher notre acteur, et je vais chercher notre spline Get Track. Je ne me rappelle pas encore comment je l'ai
appelé. Obtenez Track Spline.
Et nous allons déterminer la longueur de la colonne vertébrale. Obtenez la longueur de la colonne vertébrale. Cet allongement de la colonne vertébrale
va juste nous
indiquer la longueur de cette piste Nous devons connaître la
longueur de la piste. Mais la première consiste à voir jusqu'où nous en sommes sur
la piste et à savoir quand nous arrivons à la fin
d'une piste afin de
pouvoir la parcourir plus tard dans ce parcours. Nous voulons donc nous
assurer que cela est
défini en tant que variable. Cliquez avec le bouton droit pour
promouvoir une variable. Nous allons appeler cette piste. C'est sympa et facile. Maintenant, ce que nous
allons faire, c'est peut-être la première
fois que nous le faisons, mais nous avons déjà utilisé de nombreux événements
prédéfinis. Nous allons en fait
créer un événement personnalisé. Maintenant, ce qu'est un événement personnalisé
est réaliste, c'est un événement que vous pouvez
appeler quand vous Il n'a aucune logique
préexistante, qui sera
automatiquement appelée. Tu dois l'appeler toi-même. Ce que nous allons
faire, c'est ajouter de la personnalisation. Et nous allons
appeler ce déménagement parce que c'est ce
qu'il va faire. Et tout ce que nous voulons pour le moment, c'est que cette voiture soit déplacée ? Nous avons donc cet événement de
déménagement de voitures. Et ce que nous allons
faire, c'est
ajouter , et nous allons le récupérer ? Nous allons ajouter une entrée.
Maintenant, l'ajout d'entrées fait c'est que chaque fois que nous appelons cet
événement, nous appelons désormais move car, il nous sera demandé de saisir une
entrée. Maintenant, ce que cela va
faire , c'est l'
appeler accélérateur, et nous allons appeler l'
avoir sous forme de flotteur Ce sera probablement
de ce côté. Nous allons modifier
quelques entrées dans un petit moment pour régler
le problème également. Nous allons ensuite
nous en sortir. Et je vais faire
mieux, zéro. Nous allons faire un brunch. Nous
voulons qu'il se passe quelque chose. La raison pour laquelle nous allons le
faire est que si cet accélérateur est
supérieur à zéro, nous voulons que
la voiture bouge Je vais donc ajouter une nouvelle variable qui s'
appellera vitesse. Et ce sera un char. Et nous allons ajouter une deuxième variable qui s'
appellera distance. Et ce
sera également un flux. C'est la distance
que cela va prendre. Et tout ce que nous voulons
faire maintenant, en fait, c'est
prendre la manette des gaz Nous allons faire un plus, et
nous allons faire plus de rapidité. Ensuite, nous allons résoudre
ce problème parce que nous voulons une vitesse maximale. Fixez ce flotteur. Disons que nous
allons le libérer. Nous pourrions même l'avoir
comme vitesse maximale. Définissons cela comme vitesse maximale, comme nous l'avons fait
pour notre dernière instance,
nous allons définir
cette instance comme celle nous allons définir que
j'expose et que j'étale, et qui sera définie
par défaut sur free. Ensuite, nous allons
régler la vitesse, régler la vitesse. Donc, si la manette des gaz démarre, nous allons
augmenter notre vitesse Si nos accélérateurs ne fonctionnent pas, nous allons régler
notre vitesse à zéro Cela va diminuer la vitesse. Ensuite, ce que nous voulons faire, c'est la façon dont nous
conduisons réellement, c' déplacer la voiture le long la colonne vertébrale en fonction de sa
rapidité. Je vais donc prendre de la distance, et je vais le faire en plus. Je vais m'y prendre tout de
suite. Cela va obtenir
le nouveau numéro de vitesse et me permettre de le
saisir ensuite dans autre chose. Ensuite, ce que nous pouvons faire,
c'est réduire la distance. Donc, ce que nous avons fait
ici, c'est que nous avons en quelque sorte accéléré, puis nous allons déterminer le chemin parcouru. Ensuite, nous devons
réellement déplacer l'acteur. Comme nous nous déplaçons
avec Spline, la façon dont je vais procéder
est de traîner Je vais m'occuper du set, de l'acteur,
du lieu et de la rotation. Nous pourrions définir une transformation supplémentaire, mais nous
n'avons en fait pas besoin de modifier l'échelle de la voiture. Nous ne voulons pas le faire,
nous pouvons donc simplement le définir comme suit. Nous allons le
déplacer comme nous, et nous devons trouver
deux nouveaux sites. Ce que je vais
faire maintenant, c'est utiliser le nœud. Pourtant, transformez-vous à
distance le long de la colonne vertébrale. Donc je vais le faire. Pourtant, transformez à
distance le long de Splat. Et nous devons
cliquer sur le bouton « Contact non sensible
» pour que cela apparaisse. Et qu'est-ce que je vais
faire au fur et à mesure ?
Je vais simplement cliquer avec le bouton
droit sur celui-ci, puis le diviser et ensuite nous allons obtenir
notre spline pulmonaire à distance Ce que je dois m'
assurer, c'est que c'est réglé le monde parce que nous
voulons vraiment obtenir l'emplacement de la
colonne vertébrale du monde, et
non celui de la colonne vertébrale, lorsque nous
l'attachons au joueur. Donc oui, nous avons donc cette fonction
incroyable ici. Nous devons maintenant propager cela. C'est sympa et facile. C'est un
peu explicite. Notre site va
y participer et notre rotation
va également s'y intéresser. Cela permettra de déplacer la voiture
vers un nouvel emplacement et de
s'assurer qu'elle tourne de la même
manière que la piste, afin que la voiture ait l'impression de
rouler sur la piste. Encore une fois, nous n'avons pas besoin d'échelle ,
car nous n'allons pas modifier l'échelle. Nous voulons nous assurer que c'est réglé le monde, car nous voulons le lieu dépend de l'endroit où se trouve le morceau dans le monde, non de l'endroit où le morceau
dépend de l'acteur. Cela poserait un énorme problème. Maintenant, nous devons obtenir
un composant de la colonne vertébrale. Heureusement, nous avons ici
une référence à l'acteur de la
chanson. Nous devons maintenant faire le suivi. Et je trouve que c'est
facile et agréable à suivre. Et nous voulons prendre de la distance. Heureusement, nous
avons déjà
une belle variable que nous avons appelée distance que
nous avons créée qui se compile
en toute sécurité. Et c'est
en fait presque terminé. Avant de partir, nous voulons nous assurer de tout mettre en
commun. Donc, celui-ci ici, je
vais
juste définir la longueur. Au début. Cela sera très
utile dans un petit moment. Et puis, comme il se passe
vraiment beaucoup de
choses, je vais m'occuper
de tout ça. Je vais faire du mouvement. Mouvement, je l'ai mal
orthographié. Mouvement, mouvement, mouvement, logique. Ensuite,
si vous cliquez avec le bouton droit sur des éléments, vous verrez que nous pouvons commencer à
utiliser les commentaires des nœuds. Je dois dire que je
ne fais pas tout. Et vous pouvez commencer à les
voir chargés. Celui-ci, par
exemple, nous assurer que la
vitesse de la voiture ne monte pas trop haut, rendre à un nouvel endroit
sur cette ligne. J'en ai écrit certains dans le corps et je les fais très fréquemment. Sur la colonne vertébrale. C'est sympa et facile. Et cela va juste nous
aider un peu plus, surtout quand on
y repense un Maintenant, nous devons retourner
dans notre pion manette. Alors maintenant, pour ajouter un peu de logique au jeu, mettez
le pion
manette en pion Maintenant, ce que nous voulons réellement faire ici, c'est que nous devons en quelque sorte
configurer une variable. Et en fait, je vais
configurer deux variables ici. Oui, mettons-nous
en place. Configurons, configurons une seule variable. Ce
sera la barre du joueur 1. Et ce
sera un point fort de BP. Comédien. Nous allons nous
assurer que c'est une valeur insensible, exposée et étendue,
et nous allons
définir cette catégorie comme obligatoire Nous fabriquons celui-ci.
C'est sympa et facile en lettres
majuscules, donc nous
savons quoi faire Maintenant, ce que nous devons
faire, c'est définir nos entrées. Nous ne l'avons peut-être pas fait auparavant, nous devons
donc organiser un événement. Commencez l'assiette. Et ce que je dois faire,
c'est me procurer une manette de joueur. Même s'il s'agit d'une manette à
câble, ce n'est pas la manette du lecteur. C'est une autre classe au-dessus. Et nous allons obtenir un sous-système de
lecteur local d'entrée
amélioré, exactement comme nous l'avons fait
dans le précédent Et puis, pendant que nous sommes
ici, nous le faisons simplement ajoutant du contexte de mappage. Et nous allons ajouter
le contexte de mappage que nous avons créé lors de notre session précédente. Joli et simple. Nous pouvons donc maintenant accéder à tous ces contextes
de mappage
pour deux actions de saisie. Je vais le faire, je
crois que cela s'appelait IA underscore B's all P one Et il va également proposer
une valeur flottante. Donc, ce que je peux faire maintenant
, c'est m'éloigner de mon joueur O car c'est l'accélérateur P. Je vais déménager. Et comme nous modifions notre saisie, et que nous allons définir notre référence à ce
joueur. Un panier ici, je vais obtenir la valeur de
notre action. Donc, vous savez, c'est la
valeur de l'action et ajoutez-la dedans. Je vais cliquer sur Play Save. Nous avons veillé à ce que
notre bus fonctionne. Maintenant, nous devons nous
assurer que notre joueur
possède une voiture. Je
vais donc cliquer. Nous ne pouvons réellement accéder à
rien pour le moment. Je viens de me rendre compte que c'est écrit Track. Ça ne devrait pas dire «
track ». Joueur 1 voiture. Piste. Il n'y a pas encore
d'acteur à associer à ça. Intéressant. Oh, c'est parce que
nous n'avons pas encore ajouté de voiture. C'est tellement stupide.
Faisons entrer une voiture. Vous pouvez voir qu'en fait, nous
devons définir un acteur de la piste ici, donc je vais y définir
l'acteur de la piste. Nous allons récupérer
notre manette de jeu. Nous allons nous assurer que
c'est l'acteur automobile. Maintenant, si vous cliquez sur
Play, il devrait se charger. Et vous pouvez voir que notre voiture
roule lentement le long de la voiture. C'est assez lent à ce
moment-là, n'est-ce pas ? Nous trouverons
comment l'accélérer. Nous pouvons facilement
accélérer car dans notre voiture, nous définissons notre
vitesse maximale. Disons que c'est peut-être dix. Voyons comment cela se passe maintenant. Cela augmente beaucoup plus vite maintenant. Nous pouvons voir jusqu'où cela coûte. Peut-être que tu l'as dit,
nous avons dit que c'était 25. Voyez à quel point ça va vite maintenant. Et vous verrez cela se poursuivre
tout au long de la piste. D'une manière ou d'une autre, nous avons fabriqué une voiture qui parcourt tout le
long de la piste. Bon travail jusqu'ici. À présent, je vous
verrai lors de la prochaine séance.
7. Voiture à sous : roder: Bon retour. C'est une petite leçon
agréable et facile. C'est surtout pour
s'assurer que nous pouvons faire pivoter la voiture. Une fois que la voiture arrive au bout, vous vous rendrez peut-être compte qu'elle colle en
quelque sorte au bout. Nous devrions aussi probablement
revenir pour la caméra. En fait, si nous l'
ajoutions en tant que nouvelle fenêtre d'affichage, cela nous permettrait de
voir le tout dans son intégralité Mais en fait, lorsque vous le ferez, nous voudrons peut-être le
reculer un peu plus. Donc pour le moment,
vendons-le à 9 000 z, puis nous pouvons cliquer Vendons-le à 9 000 Mz. On joue et on passe
en plein écran maintenant. Si vous voulez que le jeu apparaisse comme
dans une fenêtre comme celle-ci, cliquez sur les trois petits points ici, utilisez PIE, nouvelle fenêtre de l'éditeur. Donc, comme je
l'ai dit, si nous jouons
à la voiture maintenant, elle roule jusqu'au bout. Faites conduire cette voiture cool. Et puis-je rester bloqué à la fin ? Donc, ce que nous
voulons vraiment faire, c'est nous avons déjà la longueur
de la piste. Donc, à la fin, nous voulons
prendre de la distance. La distance I est supérieure ou
égale à la longueur de la piste. Donc, si la distance le
long de la piste est supérieure à la longueur
réelle de la piste, nous voulons faire un embranchement, et nous voulons remettre notre
distance à zéro, ce qui la
ramènera jusqu'au point de départ. Je vais donc mettre un
commentaire ici une fois le
tour terminé . Une fois le tour terminé, nous continuons à rouler. Maintenant, si nous voulions ajouter une
certaine logique de jeu, nous savons maintenant quand la voiture
a terminé un tour. Peut-être pourrions-nous avoir quelque chose en
mode jeu pour le savoir. Nous compilons, sauvegardons. Voyons si cela fonctionne. Nous allons donc cliquer sur Play, faire le tour de la
voiture. Nous devrions également donner la priorité à l'
ombrage du tableau. Nous pouvons le faire ensuite
pour supprimer ce message
d'erreur. Et nous sommes arrivés au bout, et ça a continué à
faire des tours. Bon travail. Pendant que nous sommes ici,
réglons simplement ce message louche et
cliquons sur les feux directionnels En avant, ombrage et nous dirons
celui-ci, gentiment et facilement. C'est la fin de
cette petite leçon. prochaine séance, nous
allons essayer de faire en sorte que
la voiture accélère, ralentisse, prenne de l'élan parce qu' au moment où nous
lâchons notre voiture, nous nous arrêtons simplement.
8. Voiture à sous : momentum: Nous venons donc de terminer faire en sorte que la voiture continue à faire des tours après avoir
terminé son premier tour. Maintenant,
revenons à la voiture et essayons de l'améliorer un peu,
en lui donnant
peut-être un peu de gameplay, en appuyant simplement sur
un bouton. Donc pour le moment,
si je clique sur
la plaque, la voiture part et elle s'arrête
dès que je la lâche. Bien que cela puisse vous
plaire,
j'aime bien l'idée que si je lâche un peu la
voiture, je
devrais peut-être la
lâcher au coin de la rue. Donc, il
se déplace un peu plus lentement. Et pour ce faire,
nous devons agir dès maintenant pour que la voiture
décélère
lorsque nous
relâchons le bouton Nous allons donc procéder un peu différemment,
simplement parce qu'avec la nouvelle mise à jour d'UE 5, en particulier les
versions 5.2 et 5.3, et le nouveau
système de saisie amélioré, nous avons utilisé, par
exemple, les
actions de saisie et les IMC La façon dont cela
fonctionnait lorsque nous faisions ce projet
avec nos étudiants Four, c'est que nous pouvions utiliser ce
type de projet pour tout. Chaque fois qu'un
mappage d'accès était utilisé, il
exécutait constamment toutes les cases. Maintenant, il ne fonctionne que lorsqu'
il est déclenché, ce qui signifie que nous devons
faire quelques différences ici. Par exemple, nous allons
devoir nous débarrasser de cette pièce, et je vais également la
déplacer
rapidement et
utiliser cette vitesse. La raison en est que
nous allons
réellement modifier la vitesse dans
une fonction différente, et nous ne voulons pas utiliser cette vitesse
définie lorsque nous y
revenons. Nous voulons donc réellement
avoir une toute nouvelle variable. Cette nouvelle variable va
s'appeler throttle, et nous allons la
définir comme flottante Ce que je vais
faire, c'est que dès que nous le
déplacerons, nous le définirons
et nous allons ensuite, pendant que nous sommes ici,
simplement le changer. Donc, la seule chose qui se passe, c'
est que cela est réglé instantanément, puis qu'il est
utilisé ici et ici. C'est sympa et facile. Maintenant, la raison pour laquelle nous le
faisons est en fait
parce que nous voulons vérifier si cet accélérateur
est utilisé Et si ce chiffre est
autre que zéro, il augmente ou diminue. Nous pourrions en fait nous en
débarrasser car nous n'avons plus
besoin de faire cette vérification
ici car nous la ferons en 1 seconde. Je le supprime simplement, et
je n'aurais pas dû. Oui, on peut
juste déplacer ça. Ce que je vais faire, c'est
ouvrir le contrôle de
ma tension artérielle. Nous allons donc prendre une voiture pour
notre joueur. Nous allons faire le
set brottle et je
vais le faire glisser
dans la
valeur complète et le mettre à zéro, ce qui signifie que
chaque fois que nous lâchons prise, c'est ce
que fait l'onglet
terminé ici,
il le met à zéro Donc, pour revenir en arrière, nous voulons vérifier si cette
valeur ici est toujours nulle. Donc, ce que nous pouvons faire, c'est que je peux
simplement faire des égaux, et nous allons
faire égal à zéro. Et si c'est le cas,
je veux faire des maths. Donc, ce que je vais
faire, c'est prendre de la vitesse, et je
vais la multiplier par deux. Par le
taux de déaccélération que nous voulons atteindre. Maintenant, ce
taux de désaccélération sera exponentiel. Ce ne sera donc pas linéaire. Il ne le
réduira pas de moins un. Comme vous pouvez le constater, cela
accélère de façon assez linéaire. Il en ajoute un
à chaque fois
, alors que nous allons en fait déaccélérer de
façon exponentielle, qui signifie que cette
valeur
ralentira plus rapidement au niveau de l'étoile
, puis diminuera vers la fin Je vais donc saisir et
créer une nouvelle variable. Je vais donc
promouvoir une variable. Je vais appeler cela
une déaccélération, non ? Non, c'est la vitesse. Comment
allons-nous définir ce paramètre comme D Appelons D rate. D, on l'a déjà reçu ? Nous l'avons peut-être déjà.
Nous en avons déjà un. C'est parce que je l'ai déjà
fait. Je vais juste supprimer celui-ci. Donc je vais appeler ça le taux D. Et si vous n'avez pas
organisé vos catégories, je vais créer
une catégorie appelée statistiques, je la
mettrais dedans, je la
définirais en satis instantané Ensuite, nous allons
régler la vitesse. Donc, si c'est vrai, nous voulons atteindre la vitesse, puis nous allons
immédiatement revenir ici. Donc, je vais juste passer cela un peu ici, je
vais le déplacer. Ce qui se passe
ici, c'est que dans une seconde ,
nous allons ajouter un événement, mais si l'accélérateur est
nul, par exemple, si nous relâchons l'accélérateur, il va se régler
pour ralentir la vitesse Ce sera donc multiplié par le taux D, qui sera de 0,95 Réglons le taux D à
zéro. Nous l'avons fixé à 0,95 Disons donc que 15 fois 0,95, ce sera un calcul
très rapide,
probablement une baisse d'environ 13 Et puis 13 fois
0,95 ça
fera 11 et yada yada yada
baisse Les calculs ne sont pas
tout à fait exacts,
mais l'idée a du sens. Ensuite, ça va
continuer avec le restaurant. Il va continuer à bouger. Il va continuer à bouger. Et nous voulons vérifier
cela en utilisant un nœud ou en utilisant un
événement appelé event tick. Normalement, à l'
âge de quatre ans, nous n'avions jamais besoin d'
utiliser un eventk et nous essayions de nous en tenir à
l'écart lorsque nous le Mais cet événement est en fait
un événement très courant que l'on retrouve dans de
nombreuses émissions. Et il s'agit d'un événement qui se
déclenche à chaque image par partie. Maintenant, cela peut sembler : Oh, c'est un moyen très simple de
faire avancer les choses en continu, quelque chose qui
vérifie tout le temps. Vous ne voulez pas mettre beaucoup
de choses sur vos événements. Vous ne voulez y mettre que vos objets les plus importants et pas grand-chose. Ne mettez rien
qui n'ait pas besoin d'
être vérifié à chaque image, car si vous
commencez à ajouter beaucoup de contrôles et de
logique à chaque image, cela ne fera que
ralentir votre jeu. Je vais donc faire Eventic. Je vais enregistrer la compilation. Il va avoir ce rôle. Je m'en vais maintenant. Ensuite, si nous cliquons sur la plaque,
vous verrez qu'elle bouge, puis lorsque nous lâcherons prise,
elle descend lentement. Si nous changeons ce taux, il est
donc de 0,99 ici, mais je vais mettre 0,9 ici Il va se déaccélérer
plus rapidement. Ainsi, plus le chiffre est bas, plus
le taux
de déaccélération est rapide Donc si je conduis, lâchez prise, vous pouvez le voir s'
accélérer beaucoup plus vite. C'est fantastique. Maintenant, nous allons passer à
la leçon suivante, nous allons
ajouter un peu de gameplay à cela. Nous allons donc nous
assurer que si vous prenez un
virage trop vite, cela risque de vous donner le coup d'
envoi ou de
vous empêcher de conduire,
car pour le moment, il n'y a aucune raison
de simplement maintenir
la manette des gaz enfoncée Tu fais le tour d'un
coin de rue à 160 km/h. Ce n'est pas une bonne chose.
Je vous verrai donc à la prochaine leçon.
9. Voiture à sous : prendre le large !: Alors,
bienvenue à la leçon de Mini. Nous allons maintenant
vérifier ou créer un contrôle pour nous
assurer que si vous vous rendez
à Fast Man dans un virage, cela vous
punit en quelque sorte. Vous pourriez arrêter la voiture pendant une seconde
et vous avertir de partir Donc, la façon dont nous allons
procéder est en fait dans
le plan de la voiture Donc, si nous ouvrons
le plan de la voiture et que nous voulons réellement
créer quelque chose de nouveau ici, nous allons créer
ce que l'on appelle une fonction Maintenant, ce qu'est
une fonction
n'est pas un graphe appartenant à un plan
spécifique qui puisse être appelé à partir d'un autre
graphe du plan Maintenant, quelle est la différence
entre une fonction et un événement ? Une grande différence entre les
événements et les
fonctions, je vais les utiliser
pour une fonction, elle renvoie normalement quelque chose. Donc, lors d'un événement, il
fait quelque chose, et les choses se terminent. Avec une fonction, elle
peut faire quelque chose, elle peut exécuter une sous-tâche, mais elle sort
normalement avec une
réponse ou un nœud de retour. Vous n'êtes pas obligé de
l'utiliser de cette façon, et bien souvent
les gens utilisent des fonctions ou des événements de manière interchangeable. Je recommanderais d'
essayer de séparer cela. Comme je l'ai dit, j'aime
utiliser les fonctions pour répondre à une question
ou modifier certaines données, ce qui peut être fait
encore et encore, et cela donne une réponse. Donc, par exemple, cette fonction, comme je l'ai dit,
nous sommes une fonction crinière, vous allez l'appeler
vérification des coins. Et ce que cela va
rapporter, c'est de savoir s'il y a un virage à venir et si nous allons à la
bonne vitesse pour le prendre. Arrête. Qu'est-ce que nous voulons faire ? C'est vraiment sympa et facile. Je vais chercher notre acteur. Vous savez, nous sommes dans notre fonction. Les fonctions ressemblent
exactement à des événements. La seule différence, c'est que vous ne pouvez pas y
faire
des choses basées sur le temps, comme des chronologies, et je
vais prendre le suivre la colonne vertébrale Nous avons donc obtenu la spline, et
ce que nous voulons faire, c'est nous rendre là où nous
nous trouvons actuellement ou obtenir la rotation de
notre voiture maintenant et obtenir la rotation de ce que seront
les voitures dans 100 unités de temps ou
dix unités de temps Donc, ce que nous faisons,
c'est regarder
devant une voiture pour voir
s'il y a un virage ou non. Et pour ce faire, nous pouvons le faire glisser vers
l'extérieur et obtenir la rotation à
distance le long de la spline Et nous allons
le faire deux fois. Nous allons le faire
pour la distance actuelle, afin que cela puisse faire varier la
distance dans Potlsin Et nous allons le
faire pour la distance plus, disons, 100 unités. Plus 100. Nous voulons nous assurer que les deux sont
prêts à être soudés, car l'attelle se trouve dans le
monde, et non chez nous Alors maintenant, nous sommes arrivés ici. Nous
avons ici une rotation actuelle d'
une voiture et quelle sera
la rotation
dans 100 unités de temps. Si nous descendons
une ligne droite, cela devrait être assez similaire. Peut-être cinq ou six unités de moins. Maintenant, ce que nous voulons faire c'est faire quelque chose qui
s'appelle un égal ? Maintenant, il faut doubler l'égalité. Et lorsque nous
travaillons avec des rotateurs, les
rotateurs sont très Ils peuvent changer
très différemment, et ce qui est encore plus inquiétant,
c'est que vous pourriez avoir le cis éteint et le faire pivoter exactement de la
même manière, et il peut y avoir une
légère erreur ou une légère
différence entre Maintenant, avec un double égal, il faut que ce soit parfait. Mais cela nous donne ce que l'
on appelle une tolérance aux erreurs. Maintenant, ce que cela va faire, c'est nous
permettre d'ajouter un
petit check in ici. Donc, par exemple, si nous en ajoutons dix, tant que ces deux rotations se
situent à moins de dix l'une de l'autre,
euh, tout ira bien Il va revenir en
disant : « Tu sais quoi ? Tu sais quoi ? Nous ne
traversons pas un virage
assez raide pour décoller.
Et c'est important. Le problème que nous avons
actuellement , c'est que nous avons appelé
cela le corner check. Maintenant, cela
nous indique si vous êtes
en ligne droite. Nous voulons donc en quelque sorte inverser
la tendance. Je vais donc faire
ce qu'on appelle un NON. Et PAS en train de réserver. Et cela ne fait qu'obtenir une
sorte de complément logique
à la booling Donc, si c'est vrai, ça
va devenir faux. Si c'est faux, ça
va devenir vrai. Et nous allons le définir
comme entrée de retour, et nous pouvons obtenir notre
entrée de retour de deux manières différentes. Nous pouvons soit faire un retour, et cela fait
apparaître ce nœud, et vous devez entrer et sortir, soit nous pouvons le faire de manière vraiment simple et
agréable, en fait, c'est-à-dire récupérer ce que
nous voulons renvoyer, et vous devez entrer et sortir,
soit nous pouvons le faire de manière vraiment simple et
agréable,
en fait, c'est-à-dire récupérer ce que
nous voulons renvoyer, le mettre dans l'entrée, et il
renvoie automatiquement cette valeur. Donc, juste pour passer en revue,
ce que cela fait ici,
c'est obtenir la rotation en ce c'est obtenir la rotation moment et la rotation
en 100 unités de temps. Il s'agit de voir s'ils sont suffisamment
similaires pour penser que
c'est en ligne droite. Et si c'est en ligne droite, cela redeviendra vrai, et nous allons
inverser la tendance parce que nous demandons s'il s'agit d'un virage. Revenons
maintenant à notre graphe de ventilation et à l'endroit où nous voulons
le placer quelque part. Là où je veux le définir, c'est
avant de définir l'emplacement. Donc, ce que nous allons faire
ici, c'est nous
éloigner d' ici et
faire une vérification ponctuelle Ça va arriver à ça. Il va y avoir
une jolie petite note. Nous obtenons cette valeur de retour, et nous allons
ajouter une branche ici. Je vais faire une autre déclaration
if. Maintenant, si nous sommes dans un coin, nous
voulons faire quelque chose. Nous voulons faire quelques recherches supplémentaires.
Si nous ne sommes pas dans un coin, continue, mon pote, continue de conduire. Mais si nous sommes dans un coin, nous devrions probablement vérifier quelque chose. Nous devons d'abord
vérifier la vitesse. Alors allons-y,
reprenons notre vitesse. Et disons que si notre vitesse est supérieure, disons à quoi
est fixée notre vitesse maximale ? Je pense que notre vitesse maximale est passée à 25. Vous savez ce que nous pouvons faire en fait
, c'est atteindre notre vitesse maximale et nous
pouvons diviser par je ne
sais pas à quelle heure il est. Nous aimons Tzing. Diminuer le temps est
bien plus agréable que diviser Nous allons multiplier
par 0,8, disons. Cela signifie que
quelle que soit la vitesse maximale, elle la multipliera par 0,8 et obtiendra 80 %
de cette vitesse. Donc, si c'est dix, ça va
revenir comme huit, si c'est 20, ça va
revenir comme 16. Si c'est 100, ça reviendra
à 80. Et ce que nous allons faire, c'est que si la vitesse est supérieure à
80 % de la vitesse, cela posera un problème Je vais donc
le mettre ici. Donc, si c'est vrai, nous voulons expulser la
voiture de la piste. Donc, la façon dont nous pouvons le faire facilement est de
créer un nouveau boolin C'est ce que nous allons faire. Nous allons créer une nouvelle
variable qui s'
appellera « est sur la bonne voie ». Nous pourrions également utiliser cette couche lorsque la ligne se trouve sur la piste. Et nous allons le
mettre à zéro. Le set est à deux de moins. Nous allons
ensuite régler notre vitesse à zéro parce qu'elle est
tombée hors de la piste, puis nous allons
attendre quelques fois. Donc, ce que nous allons faire,
c'est retarder un
peu comme nous l'avons fait pour notre dernier prototype. Retardons-le de 0,5. Ensuite, une fois que nous aurons
attendu 5,5 secondes, nous allons
le remettre sur une piste. Si c'est le cas, si nous entendons, si nous roulons à
la bonne vitesse, vous savez quoi, continuez à conduire. On peut même faire
traîner les choses un peu. Ce n'est pas ce que nous voulions. Faisons-le
glisser ici. Mettons-le ici, pour qu'il soit un peu
plus joli. J'aime bien le garder. C'est donc ce qui
va se passer maintenant. Nous pourrions même utiliser des nœuds de réinitialisation ici pour les insérer correctement Donc ça a l'air un peu plus joli. Mais il nous manque donc
une chose,
et pour le moment, c'
est sur la bonne voie, selon les PNJ Et là où nous allons
revenir c'est
retrouver notre place. Nous allons créer une succursale, et nous allons la
signer ici, ce qui signifie que nous ne
pouvons pas appliquer l'accélérateur
si nous ne sommes pas sur la bonne voie Alors testons. Passons directement
au premier virage. Oh, je viens de m'en rendre compte, assure-toi. Avant de faire cela,
assurez-vous que notre IP sur la bonne voie est définie par défaut en termes de publicité. Nous allons y aller. Nous allons continuer
tout droit. Et il y a des arrêts parce que
je pousse trop fort ici. Maintenant, si je reviens en arrière, fixons notre taux D à 0,98 Et si je laisse passer par là, je dois lâcher prise avant
de prendre le virage. Nous devrions peut-être jouer
rapidement ici. Jouons, réglons
notre vitesse à 50. Nous voyons que nous sommes en train
de nous en sortir. Nous sommes en train de nous remettre de
tomber sur la bonne voie. Oh, nous sommes
tombés directement là-bas. Maintenant, si nous le faisons,
c'est parce que si nous ne le faisions pas,
il n' y aurait aucune
raison de participer à ce jeu, car ce jeu serait simplement de savoir qui peut
appuyer sur WK pour le premier Nous avons maintenant ajouté un
peu de talent à ce jeu. C'est à vous de définir ces petites valeurs et de les affiner là où
vous le souhaitez. Vous pouvez même régler ce taux sur un taux différent, afin
d'avoir une corniche Vous pouvez même revenir ici et peut-être
régler ce paramètre
sur 15 ou disons 20, qui signifie que seuls les virages les
plus difficiles vous permettre de faire une pause
dans les virages vraiment difficiles. Voilà. Et c'est à
vous de le faire. Donc, dans la prochaine leçon,
nous allons revenir en arrière, et nous allons
maintenant ajouter le mode multijoueur. Mais dans une grande partie de ce jeu, nous allons y ajouter le
mode multijoueur,
et ce sera
vraiment très facile.
10. Voiture à sous : ajouter le multijoueur: Maintenant, bon retour. C'est une partie vraiment amusante
de ce projet. Nous allons maintenant
faire fonctionner deux voitures. C'est bien plus facile que
vous ne le pensez. Nous avons déjà
une voiture en état de marche. Nous avons déjà les informations
nécessaires pour la deuxième voiture. Il ne nous reste plus qu'à appliquer cette entrée et à voir ce qui se passe. Donc, la façon dont nous pouvons le faire facilement est d'ouvrir notre contrôleur. Nous devons maintenant jouer à une voiture. Nous avons probablement besoin
d'une voiture pour deux joueurs. Et nous pouvons facilement le faire en
sélectionnant Contrôle C, Contrôle V.
Passons à cela. Et cela l'a changé
en joueur. Voiture Mais économisez. Maintenant, nous avons amélioré l'accélérateur IA
d'entrée P. Nous devons maintenant faire de l'
amélioration Oh, non, il suffit de
faire en sorte que je marque deux points. Nous allons simplement le
cartographier de la même manière. Nous prenons donc la voiture de notre deuxième joueur. Nous allons faire une voiture Moth. Nous allons
adapter le déclencheur. Nous allons définir
des valeurs d'action. Ensuite, nous allons
faire de même. Je peux même contrôler C, contrôler V. Comme nous utilisons la même classe, cela
n'a pas vraiment d'importance. Pass Save Compass Save. Et ensuite, prenons une autre voiture. Allons chercher un acteur automobile. Faisons entrer un autre acteur
automobile ici. Nous avons un autre personnage.
Nous allons nous assurer que l'acteur automobile sache
où se trouve la piste. Nous allons donc sélectionner
notre acteur de piste. Ensuite, dans notre plan de contrôle, nous allons
également sélectionner
notre acteur automobile . Maintenant, nous sommes à terre. Donc, oui, nous avons
une voiture là-bas, et vous voyez cette autre
voiture se déplacer si lentement Pourquoi crois-tu que ça
bouge si lentement ? Parce que nous avons réglé la
vitesse très lentement. Vous pouvez voir si la
vitesse s'est réglée aujourd'hui. Réglons ce paramètre sur 40. Et maintenant, jetons-y
un coup d'œil. Nous avons maintenant une voiture en mouvement, et nous
avons l'autre voiture en mouvement. Nous avons maintenant deux voitures
avec deux clés différentes. Tu sais, on joue, on fait des courses. Si je suis là, vous pouvez voir
deux voitures sortir. C'est à cette vitesse que nous avons ajouté Muri Play à ce jeu Parce que nous avons conçu
ce jeu et conçu le cadre de
ce jeu pour que deux joueurs puissent travailler
dès le départ, nous avons désormais créé le
mode multijoueur en
moins d'une minute ou deux.
11. Voiture à sous : créer des matériaux: Alors, bon retour. Nous avons
maintenant le mode multijoueur. Nous devons maintenant commencer à différencier nos deux voitures Comme vous le savez, nous n'avons
créé que quatre cubes. Si vous voulez sortir
et trouver deux treillis pour voitures, vous pouvez le faire, et
c'est à vous de décider Mais ce que je veux faire c'est acheter ces voitures et y ajouter
un peu de couleur. Et c'est la première
fois que nous
allons recommencer à fabriquer
des matériaux. Je veux donc me pencher sur les actifs. Je veux que tu cliques avec le bouton droit de la souris
et que tu crées un tout nouveau matériau. Et ce matériau, il va simplement s'appeler,
appelons-le matériel. Et nous allons appeler ça comment
devons-nous l'appeler ? Appelons cette
couleur de base. La carte des scores. De toute évidence, les
cartes représentent du matériel. Ouvrons ça. Et nous vous souhaitons la bienvenue dans
l'éditeur de matériaux. Materials Editor, si vous avez déjà
travaillé dans le domaine de la modélisation, si vous avez déjà
utilisé Mayer, vous
connaissez certainement certains de ces éléments. Mais ce
sont toutes
les différentes épingles et éléments d'un matériau auxquels vous pouvez accéder et qui changent
quoi que vous fassiez. Et vous pouvez y saisir
des informations, qu'il
s'agisse de chiffres, que vous
participiez
à des événements mondiaux à égalité ou que vous
y ajoutiez simplement des cartes. Pour nous, nous allons faire en sorte que
ce soit vraiment très simple. Les deux que je veux
faire sont la couleur de base, et je veux aussi
utiliser une couleur missive Passons donc d'abord à la couleur de base. Et je veux y ajouter
une couleur. Je vais donc
détenir la clé gratuite. Je vais donc maintenir la
touche libre et appuyer dessus. Et il va
proposer un vecteur gratuit. Nous pouvons également créer
un vecteur constant et sans vecteur. Mais j'aime utiliser le
un, le deux et le trois. Un crée un vecteur un, deux fait deux vecteurs trois, fait un vecteur trois 44. Tu sais, cinq ne
font rien. Nous allons donc le saisir et le mettre
dans la couleur de base, et vous pourrez voir instantanément
qu'il va passer au noir. Si nous appuyons deux fois dessus et que nous le
changeons en bleu clair, il passe au bleu clair Je vais essayer de le
laisser en blanc pour commencer, simplement parce que le blanc est beaucoup plus facile à voir
comme couleur par défaut. Je vais cliquer sur
une ou sur une missive. Maintenant, une missive
contrôle la partie du
matériau que vous souhaitez faire briller Ainsi, par exemple, si vous souhaitez faire pousser une partie du
matériel, vous pouvez utiliser des éléments tels que
des cartes alpha pour faire le tri. Mais en réalité,
tout ce que je veux pour le moment, c'est faire briller le
tout Donc, et on met ça ici. Et si je le remplace par
un, vous
verrez que c'est beaucoup plus clair
si je le mets à zéro. Il va à Doliga. Maintenant, je vais rester un peu ennuyeux,
car nous allons ajouter
un peu de gameplay à
ce jeu pour
lui car nous allons ajouter
un peu de gameplay à donner un
aspect
un peu plus amusant et pour communiquer lorsque
vous faites fausse route. Et je vais m'assurer que ces deux éléments sont appelés paramètres. Je vais donc faire un
clic droit sur celui-ci, et je vais le
convertir en paramètre, et je vais appeler
cette base. Tirez vers le haut. Ensuite, je vais prendre celui-ci, le convertir en paramètre. Je vais appeler ça une
émission. Un double. Valeur par défaut et leurs valeurs par défaut
sont un contre un et zéro. Donc oui, nous avons donc
créé cette couleur de base, et nous avons la couleur d'admission
et de base Waouh, ce que nous allons
faire, c'est cliquer avec le bouton droit de la souris et
créer une nouvelle instance matérielle. Et cet exemple matériel
est vraiment intéressant. Ce qu'est une instance matérielle est essentiellement une copie de celle-ci dont vous pouvez modifier les
paramètres. Donc, c'est vraiment un gros
avantage à faire ça. Et plus précisément,
ils sont beaucoup plus légers à faire. Cela vous aide donc. Imaginez donc que les aiguilles soient comme des cours pour
enfants sur le matériel. Et le grand avantage de cette solution
est que nous pouvons désormais commencer à ajuster ces instances au moment du jeu,
au moment de l'exécution, du moins
dans le jeu. J'ai donc cette instance
matérielle, et je vais en fait les
configurer sur les deux. Je vais donc prendre chaque cube. Je vais juste les enfiler. Attrapez CarmshPoplse. Lorsque nous ouvrirons notre acteur automobile, je vais cliquer sur le CarMSH Je vais également envoyer
une instance matérielle Maintenant, je veux créer une
toute nouvelle variable, et ce sera un type que
vous n'avez jamais vu auparavant. Je veux donc que vous cliquiez sur Plus, je veux que cela
s'appelle Car Color. Je vais cliquer
dessus avec le bouton droit de la souris, et ça s'
appellera Linear Color. Nous allons régler cette couleur
sur une couleur linéaire. Pendant que nous y serons,
nous l'inscrirons dans les champs obligatoires. Sauvons une voiture. Appelons-le aussi le nom de la
voiture. Et définissons cela comme un texte. Chiots dedans. Voici donc quelques informations que nous
donnons maintenant à chaque voiture. Je veux que tu ouvres
notre script de construction. Le
script de construction fonctionne tel qu'il
s' exécute avant la création du
jeu, avant que tout ne se
passe, il s'exécute pendant la création de l'acteur
. C'est donc la première chose
qui fonctionne dans ce jeu, et c'est là que
vous voulez définir vos valeurs par défaut dans votre jeu Et ce qui est également très
pratique, c'est que toute logique ici fonctionne dans l'éditeur. Donc, si je mets quelque chose qui
définit la couleur ici, cela
changera également la couleur de l'Elea, ce qui
est vraiment très pratique Maintenant, je veux
récupérer le filet de notre voiture. Je vais faire quelque chose appelé définir le paramètre vectoriel
des matériaux, définir la
valeur du paramètre vectoriel sur les matériaux. Je vais le mettre directement dedans. Il va me demander
un nom de paramètre. Et le nom du paramètre
que je souhaite utiliser est la couleur de base. C'est le même paramètre que
celui-ci ici, la couleur de base. N va me demander des vecteurs libres. Maintenant, les couleurs sont
réellement libres, juste un vecteur Je vais donc
prendre la couleur de notre voiture. Je veux m'assurer de
cette variable. Assurez-vous que cette variable
est modifiable par instance. Mais ils sont tous modifiables
instantanément. Et je vais prendre ceci,
et je vais d'abord me séparer pour trouver ces trois couleurs,
rouge, vert, bleu et alpha. Nous n'avons pas à nous
inquiéter pour Alpha pour le moment. Je vais partager
les deux,
et vous pouvez voir ces pompes ici. Donc, quelle que soit sa couleur , elle fera la
différence pour la voiture. Donc, si je compile ceci, pour le
moment, la couleur est un peu noire. Mais si je monte dans la voiture et que je
change cet Alpha en un, et que nous le changeons en rouge. Nous y
repensons. Il est maintenant rouge. Si je passe à celui-ci,
réglez-le Alpha pour être un
et mettez-le sur bleu. Devinez de quelle couleur ça va
être. Ça va être bleu. Maintenant, nous pouvons
changer la couleur des voitures dans le jeu, et vous verrez ces deux voitures dans nos
deux couleurs différentes. Nous pouvons les modifier pendant
l'exécution. Voyons courir si nous nous
rencontrions, si nous voulions leur attribuer
une couleur différente lorsqu'
ils sortent de la piste. Nous pouvons le faire maintenant en utilisant un scalaire défini et une
valeur vectorielle définie sur les matériaux C'est vraiment très sympa et facile. Maintenant, lors de la prochaine session,
nous allons créer une interface utilisateur, et nous allons utiliser
certaines de ces autres choses que
nous avons très facilement
utilisées pour créer cette interface utilisateur Je te verrai donc dans
le prochain.
12. Voiture à sous : ajouter une interface utilisateur: Bon retour. Il s'agit de
notre deuxième leçon sur l'interface utilisateur. Je vais donc entrer
directement dans car nous en avons presque
terminé avec ce spartyp Je vais
cliquer avec le bouton droit sur l'interface utilisateur du nouveau dossier. Et dans cette interface utilisateur,
je vais en faire deux fromages différents. Je vais créer une interface utilisateur, qui s'appellera, je
vais créer deux interfaces utilisateur différentes. Je vais créer ma première interface utilisateur, qui s'
appellera UI underscore base Et ma deuxième s'
appellera UI underscore
player stats Nous devrions vraiment les appeler. devrais vraiment les appeler parce
que c'est vraiment une chose qui consiste faire un soulignement BP puis souligner l'interface utilisateur parce que cela fait référence à un plan,
puis à une Mais cela ne devrait pas
vraiment avoir d'importance d'abord. Et j'aimerais que vous
ouvriez le premier, qui
portera sur les statistiques des joueurs. Je vais faire des choses vraiment
intéressantes ici. La dernière fois, j'ai tout de suite fabriqué un
panneau en toile, et cette fois je ne
vais pas le faire Ce que je vais
faire à la place, c'est utiliser deux panneaux
différents pour cela. Mon premier panneau que je vais
utiliser s'appelle euh, comment s'appelle-t-il ? Une boîte verticale. Je vais
utiliser une boîte verticale. Maintenant, cela me permet d'insérer
plusieurs autres widgets, et cela s'aligne verticalement. Je vais appeler ça le. Ça s'appelle simplement cette boîte B. Je veux qu'il
y ait quelques trucs ici. Je veux connaître le nom du
joueur, couleur,
le nombre de
tours effectués et sa vitesse. Passons donc à la vitesse. Passons d'abord à la couleur et au
nom parce
que je pense que c'est important. Mettons donc une boîte horizontale. Cette boîte horizontale. Et
ajoutons allons-y pour une image. Je vais juste le faire
glisser là-dedans, et je vais faire glisser,
faisons-le en face à l'écran. Et je vais également y ajouter
du texte. Nous avons donc obtenu ce bloc de texte, et nous allons
appeler ce bloc de texte un nom de joueur Soulignez le texte. Assurons-nous également que le clic est
variable. Assurez-vous que le paramètre est variable. Je vais régler
cela sur la couleur de la couche. Et nous allons juste
faire de l'image. Maintenant, celui-ci est un
peu facile à faire, et je vais vous expliquer comment
nous pouvons résoudre ce problème. Je veux m'assurer que c'est Discutons également de tout cela. Nous allons nous assurer
que cela correspond à cela. Nous voulons ensuite ajouter
quelques textes supplémentaires. Je vais donc ajouter que
nous allons créer quelques cases
horizontales supplémentaires. Je vais donc ajouter
une autre boîte horizontale ,
puis une autre boîte horizontale. Cela va donc contenir les informations sur
les joueurs. Celui-ci
aura les compteurs de tours, donc je vais y ajouter
deux textes Et je vais ajouter la vitesse. Donc, le type que cela
va être appelé compteur de tours
s'appelle texte. Je vais mettre quelque chose
appelé un P devant celui-ci, qui sera le préfixe Je ne vais pas définir
cette variable, et tout ce que je vais faire
c'est entrer dans le texte ici et dire lap and da. Je vais aussi y
mettre un espace. Celui-ci va
faire le même problème. Je vais l'appeler P
speed, ça s'appelle du texte. La raison pour laquelle j'utilise
ce P est le préfixe. C'est la phrase qui va
être prononcée avant l'information, et je vais mettre la vitesse. Maintenant, c'est
dans ces deux domaines que nous allons réellement
mettre les
vraies informations ici. Je vais donc mettre le compteur de tours, le
soulignement, le texte et m'
assurer qu'il s'agit d'une variable Chaque texte que nous voulons modifier, nous allons nous
assurer qu'il s'agit d'une variable, et je vais m'occuper de la
vitesse, du soulignement, du texte Et voilà, c'est un coffre à pieux
variable. Nous n'avons pas besoin de
faire d'ancrage ici car tout sera
dans cette petite boîte. Passons donc en revue ces informations
une par une et voyons comment nous allons
obtenir ces informations. Donc, dans notre graphique, nous allons entrer ici et
faire certaines choses. La première chose que je vais faire, c'est fabriquer un
nouveau fourgon pour clients. On va
y faire appel. Plus tôt dans notre projet précédent,
nous avons créé l'interface utilisateur en utilisant des liaisons. Ce n'est pas ce que nous allons
faire dans celui-ci. En fait, nous allons définir une valeur, puis
effectuer une liaison plus tard. Nous allons donc
faire un peu des deux, mais nous allons en fait transmettre des informations et les
stocker dans les données. Je
veux faire une saisie. Et cette contribution
sera BP Underscore Car, acteur. Objet. Je vais appeler
cette voiture deux parties quatre. Infos. Parce que c'est la voiture dont nous
allons obtenir les informations. Nous allons cliquer dessus avec le bouton
droit de la souris et promouvoir la variable. Incroyable Maintenant, une fois que nous avons obtenu
les informations, nous voulons définir le
nom et la couleur du joueur. Je vais donc les
prendre tous les deux. C'est la première chose que je vais
faire. Faisons d'abord une couleur, la
première chose à faire maintenant. Je vais régler la capacité de l'
extracteur. Mets-le ici.
Détruisons ça. Cela devrait juste être
capable de nous faire sortir, et maintenant nous pouvons simplement créer une couleur linéaire.
C'est vraiment facile. Ce que nous allons faire
maintenant, c'est nous
éloigner de cela parce que c'est du type, du type BP Car Actor Il contiendra
toutes les informations possibles , à condition que
nous organisions d'abord cet événement. Nous pouvons donc obtenir les
informations de couleur. Obtenez la couleur de la voiture. Mets-le directement là-dedans, ce qui est vraiment génial. Ensuite, je veux
définir le texte du joueur. Nous allons donc maintenant
obtenir ce texte défini. Nous voulons nous assurer qu'il est écrit « texte
défini » entre crochets. Et cette fois,
nous avons utilisé notre voiture pour obtenir des informations. Je vais faire Get Player. Le nom de la voiture NG, n'est-ce pas ? Le nom Sûrement là-dedans. Commentons cela
un peu. Nous allons être
appelés une fois créés. Nous allons appeler ça.
Nous allons faire une formation sur les données ici.
Appelez une fois créé. Euh et ensuite ça va
régler la carte à deux points. Maintenant que nous avons
cette variable ici, zéro cinq fait des choses vraiment
intéressantes. Nous pouvons obtenir toutes
ces informations de la voiture pour obtenir des informations dans nos liaisons. Donc maintenant, si je passe au tour, désolé, compteur de
tours, nous pouvons relier
toutes les informations ici. Donc, oui, c'est vraiment intéressant, nous pouvons récupérer certaines de ces
variables directement à partir d'ici. Maintenant, nous devons créer un
compteur de tours et un compteur de vitesse, donc nous devrions probablement
revenir à
notre personnage et régler le tour Nous allons le définir comme
variable. Allons-y ici. Euh, nous avons un tour ici, et nous devrions probablement aussi assurer que chaque fois que
nous terminons un tour, nous établissons un nouveau tour que
nous faisons et plus. Alors maintenant, chaque fois que
nous terminons un tour, ce nombre
augmente, compilez. Si nous partons sur le compte à rebours, vous devriez voir Lap
nice and easy. Maintenant, lorsque nous faisons de la vitesse, nous devrions
être en mesure de l'obtenir. Pour une raison ou une autre, il
ne nous laisse pas ici. Je ne suis pas tout à fait sûr de quoi.
Allons donc créer une reliure, et nous pourrons obtenir des informations sur notre panier Et prenez de la vitesse. Rapidité. Oui, je pense que nous avons obtenu la vitesse V. Je sais pourquoi je l'appelle vitesse V. Vous deviez faire quelque chose alors
que vous ne regardiez pas. Donc oui. Nous pouvons donc saisir
cela et prendre de la vitesse. Mets-le directement ici. Je vais écrire du texte
pour faire flotter des choses, mais tu devrais être douée. Nous pouvons même
utiliser ce texte pour faire flotter, régler pour qu'il
passe au point zéro. Faisons juste un chiffre
fractionnaire. Cela ne fera pas beaucoup de différence,
mais faisons-en une. Alors maintenant, chaque fois que
nous utilisons ce bit ici, tout va se propager. Maintenant, nous devons l'ajouter
à notre interface utilisateur de base. Vous vous demandez peut-être pourquoi
n'avons-nous pas simplement créé tout cela dans notre interface utilisateur de base ? C'est parce que nous allons le
faire deux fois,
et ce serait
tellement plus facile de le faire une fois
et de les ajouter deux fois. Parce que nous pouvons en fait, si vous passez à Création par l'utilisateur, les
ajouter plus tard
dans la ligne. BP joue à ça.
Fantastique C'est incroyable. Maintenant, nous avons
ouvert notre panneau de base. Nous avons maintenant besoin d'
un panneau en toile, et maintenant nous devons
commencer à ajouter une partie de et maintenant nous devons
commencer à ajouter une partie de
ce que nous venons de créer ici. Allons-y et création d'un utilisateur. Utilisons les statistiques des joueurs BP. Eh bien, je vais le joindre
dans le coin supérieur, et je vais le
dimensionner en fonction du contenu. Cela signifie qu'il est en taille réelle. Je
vais en prendre un autre. Mettons-le dans
le coin inférieur. Ancrons-le dans le coin inférieur et adaptons la taille au contenu. Assurons-nous de les
nommer correctement. Donc, la première sera celle des statistiques des
joueurs, nous devrons en
faire une variable car nous allons en tirer
certaines informations. Et nous allons appeler
ce joueur Stats UI. B. Un joueur, un joueur, deux, et nous allons en
faire une variable. Nous allons
configurer cela un peu plus tard. En fait, nous allons configurer cela maintenant. Passons à notre graphique, et nous
allons en créer un autre dans
le graphique Shells. Ouais. Créons-y donc un
événement personnalisé Customevent. Ce qui est vraiment très pratique ici. Nous allons le faire dedans. Ce que je peux faire maintenant, c'est faire
glisser ce nouveau paramètre, peu comme nous
l'avons fait pour le précédent. Nous allons créer le port du contrôleur BP
Underscore. Ce sera
Layer Controller. Et ce que nous allons faire, c'est faire clic
droit pour promouvoir une variable. Nice a besoin que nous allons
utiliser pour définir les limites. Je vais prendre
chacune d'entre elles. Donc BP play c'est
l'interface utilisateur et fais-le dedans. Et puis pour le premier,
je vais maintenant sortir Controller Pawn et faire écouter
Car One Pop Vous voyez donc maintenant que c' est ainsi que nous avons transmis ces
informations. C'est tellement sympa et facile pour
le second. Nous pourrions ajouter quelques déclarations
if et le
faire différemment, mais c'est simple et agréable. Nous pouvons simplement aller au péché. C'est sympa et facile. Maintenant, si nous l'intégrons ensuite à
notre pion manette, nous pouvons transmettre
ces informations, et tout cela est
prêt à être utilisé Alors faisons-le dès maintenant. Passons à notre pion
BP Controller. Au début de la partie, allons-nous créer Widgit ? Cela aura une interface utilisateur de base BP. Ensuite, je vais m'en éloigner. Je
vais le faire dedans. Je vais aussi faire
traîner une fois
de plus et ajouter à
Vpot. Et une dernière fois,
je vais faire Vpot. Et une dernière fois, glisser le pointeur. Je vais
en fait cliquer avec le bouton droit valeur de
retour de la variable Mote U, et je vais
appeler cette interface utilisateur C'est une WUI de référence juste au cas où nous en aurions besoin
plus tard,
wink wink nudge nudge nudge, et je peux la rendre un
peu plus agréable et l'utiliser
comme cible à la utiliser
comme Voilà. Ça fait un peu paraître
un peu plus joli. Maintenant, il va
demander un pion Controller. Nous pouvons utiliser ce nœud vraiment très
pratique appelé self, qui fait référence
à l'acteur dans
lequel vous vous trouvez, à savoir la patte du contrôleur Maintenant, si nous cliquons sur Enregistrer, compilons et veillons à ce que nos
deux objets soient nommés, nous allons
appeler celui-ci. Appelons celui-ci Ian de
mon nom , et appelons celui-ci. Après quelqu'un d'autre, nous allons
cliquer sur Enregistrer et jouer. Nous avons maintenant Tim contre Ian. Nous avons obtenu leur vitesse.
Tu peux voir. Et disons que si
je fais un tour, voyons à quelle vitesse je
peux le faire. Il n'y a pas de temps ici, mais nous pourrions en ajouter un
si nécessaire. Oh, non Nelly. Une fois que j'ai terminé un tour,
j'ai une merveille. Je peux y retourner encore et encore. C'est ainsi que nous avons appris non seulement comment créer une interface utilisateur, mais aussi une interface utilisateur
beaucoup plus avancée. Nous avons maintenant appris comment créer des widgets pour
passer en revue des widgets, et nous avons appris comment
transmettre des informations à transmettre des informations interface utilisateur sans avoir à utiliser
des liaisons à tout moment Dans la leçon suivante, nous
allons terminer en
définissant une condition de vent et en la transmettant également à l'interface utilisateur .
Je
te verrai donc dans le dernier.
13. Voiture à sous : état gagnant: Alors, bon retour. Terminons en ajoutant
une sorte de condition de vent. Nous voulons donc dire que si nous complétons trois
tours, nous gagnons le match, et nous pouvons
tout régler. Mais commençons par
la fin et revenons en arrière. Faisons en sorte que l'interface utilisateur ait un aspect flashy de ce côté. Ouvrons donc notre interface utilisateur de base, et nous allons ajouter le surf
au milieu d'ici, qui indiquera le gagnant Allons gagner Text. C'est variable. Et nous allons le
mettre directement dans le moulin. Et nous allons placer cette
ancre au milieu. Donc, avec ce texte, si vous passez à la justification,
placez-le au milieu. Cela aurait dû le
mettre directement dans le moulin. Je ne voulais pas faire
ça, apparemment. Oui, intéressant. C'est une façon. Oh, oui. Oh, c'est stupide. Il l'ancre toujours dans
le coin supérieur. Vous souhaitez définir
ce paramètre sur 0,50 0,5. C'est sympa et facile. Dimensionnez le contenu. , idiote moi.
Nous avons donc un texto hivernal. Je vais l'agrandir
un peu, alors réglons-le sur je
ne sais pas, 64, gros, gros. 128. Faisons en sorte que
ça prenne de l'ampleur ou allons-y. Et nous allons en fait
créer une animation ici. Ce n'est pas quelque chose que
nous avons fait auparavant. Nous n'avons jamais travaillé sur
des animations auparavant. Donc, ce que je vais d'abord
faire, c'est m'
assurer que c'est réglé. Let's set the Let's go into Let's go into doit être une
opacité. Oui, cool. Donc, ce que nous allons faire, c'est
faire défiler la page vers le bas, il y en aura une appelée opacité du
rendu Je vais le mettre à zéro. Tout d'abord, réglez-le sur zéro. Je vais faire une animation. Et cette animation sera
l'animation gagnante. Nous allons donc cliquer dessus. Nous allons cliquer sur TAC. Et comme vous avez déjà sélectionné
le texte gagnant, il apparaîtra en haut. Maintenant, je veux suivre certaines choses, afin que nous puissions suivre certaines choses. Nous pouvons avoir des animations en un clic, suivre de cette façon
ou nous pouvons maintenant cliquer dessus. Comme le gagnant de l'
animation a été sélectionné, je peux passer à Let's go
into Render opacity Cliquez sur ce petit bouton ici, et il devrait apparaître
automatiquement. Donc, lorsque cette animation
démarrera, nous partirons de
zéro. Nous allons cliquer. Nous allons mettre
celui-ci sur un point,
et il va passer de ce côté là . Maintenant, nous allons nous
amuser un peu. Nous allons faire Passons à la couleur et à l' opacité de la police et nous pouvons cliquer sur
Ajouter une image-clé à
cela opacité de la police et nous pouvons cliquer sur
Ajouter une image-clé à Alors, ne veut-il pas
y ajouter une image-clé ? Il ne souhaitait pas
ajouter d'image-clé. Ajoutons ceci alors.
Couleur et opacité Maintenant, une fois qu'il sera là, je veux le configurer pour m'
assurer qu'il ne fait qu'un. Je vais donc cliquer sur Ajouter
ces cadres ici. Mais toutes les demi-secondes, mettons l'une d'entre elles à zéro. Ensuite, nous passerons
à chaque étape. Nous allons le remettre
à un et celui-ci à zéro. Et nous allons juste le copier
, continuer à le copier pendant, genre, faisons-le pendant 5
secondes. Voilà. Alors maintenant, quand on joue, c'est cool. Nous avons cette couleur cool et
intéressante. Qu'est-ce qui se passe ici ? Nous avons Oh, c'est
réglé à zéro, donc tu veux être stupide, nous devons
le mettre à un Voilà. Nous avons
cette vibration intéressante. Voilà. Nous avons donc maintenant une légère
animation à ce sujet. Nous allons simplement cliquer dessus pour
l'enlever et nous
pourrons y réfléchir plus tard. Nous lui avons attribué une variable. Assurez-vous que je le
formate correctement. Passons au graphique, et nous allons
créer un nouvel événement. Disons que c'est un gagnant. Interface utilisateur du gagnant. Faisons Winner UI. Ce que je
veux faire d'
abord, c'est récupérer le texte du gagnant. Nous allons définir
ce texte, définir le texte. Texte de Sally Meet, sous le texte de
Scott Brackett. Et il y en a un
petit bout ici. Nous voulons faire ce
qu'on appelle un ajout, et c'est sous la
chaîne d'ajout Cet ajout de chaîne nous
permet d'ajouter
plusieurs chaînes ensemble Nous pouvons ensuite le
faire glisser dans le texte, et il est automatiquement
converti en format texte. Oh mais c'est ce que
nous allons faire ici. Donc, tout d'abord, je vais faire glisser ceci
ici pour ajouter cette épingle. Nous cliquons dessus maintenant, nous
allons appeler ça. Nous allons
renommer ce gagnant. Ensuite, le B, que nous
allons mettre, est le gagnant. Waouh. Nous allons donc attribuer le
texte à celui qui l'a gagné. Nous allons passer en revue le nom d'une
personne qui a gagné. Et puis une fois que nous
l'aurons fait, nous allons saisir. Ce que nous allons faire, c'est
jouer à l'animation. Et il va le
demander dans le domaine de l'animation. Ça ne va rien faire
apparaître ici. Mais si on le fait glisser ici et
qu'on tape gagnant, on passe à la case « Get winner ». Et nous allons nous
assurer que nos boutiques sont paramétrées sur false. Maintenant, chaque fois que cet événement est
appelé, il désigne le gagnant Nous allons
donc définir le nom Winner plays animation. Joue une animation de l'interface utilisateur. C'est sympa et facile. Maintenant, nous pouvons appeler cela
dans notre pion joueur, pion contrôleur. Nous
allons donc le faire maintenant. Ouvrons notre pion
manette. Et ce que nous pouvons faire maintenant, nous
pouvons faire certaines choses ici. Qu'est-ce que je vais
faire ? En fait, avec notre pion manette, nous
n'avons rien à faire Heureusement, dans Unreal. Il existe quelques fonctions
qui nous permettent de savoir qui certaines choses. Nous les avons déjà utilisés sous le nom de Get
Player Controller, mais nous pouvons également utiliser
get player pawn dans n'importe laquelle de nos classes pour essayer d'obtenir le pion du joueur
actuel, qui est contrôlé Maintenant, nous pouvons obtenir n'importe quelle information à ce sujet quand nous le voulons. Donc, dans notre personnage, euh, en fait, désolé, dans
notre pornographie sur manette d'abord, nous devons probablement définir le
nombre de tours que nous voulons faire. Donc, dans notre variable, faisons un
nouveau tour nécessaire. Faisons juste les tours nécessaires. Donc, dans notre
pornographie sur les contrôleurs BP , nous créons une nouvelle
variable appelée laps de temps requis, qui est un entier. Nous allons nous assurer que
cela est obligatoire et que les expositions
et spores modifiables seront
également Je vais utiliser par défaut
ce paramètre comme gratuit car les tours gratuits
signifient normalement tout. Euh, maintenant, dans notre acteur BP Car, nous devons ajouter un peu
de logique à la fin de tout cela. Donc, ce que je vais
faire correctement, Clay peut le faire pour obtenir un pion Cela permettra d'obtenir le
pion du joueur pour un index de
joueur spécifique Maintenant que notre mode multijoueur est
légèrement différent de
ce que souhaite Unreal,
notre indice de joueurs
doit toujours être égal à zéro Je vais maintenant quitter ce
nouveau casting pour rejoindre Controller Pawn Maintenant, je vais cliquer dessus avec
le bouton droit de la souris et
appeler cela un casting pur. je vais me
débarrasser du chèque, c'est parce que si nous n'avons pas
le jeu de
pions par défaut du contrôleur BP , nous savons vraiment que cela
ne marchera jamais À moins que vous ne fabriquiez un autre pion
manette ou que nous ne contrôlions cette
caract d'une autre manière, le seul moyen de le déplacer pour le moment est d'utiliser le pion contrôleur
BP Si vous rencontrez des erreurs
en disant « Ceci n'est pas valide », c'est parce que le pion contrôlé par
BP n'est plus le pion par défaut Voilà pourquoi. Je vais donc faire traîner
ça et faire un tour. Allons faire les tours nécessaires. Et puis je vais faire une vérification. Maintenant, si les tours sont
supérieurs aux tours requis, nous allons alors nous diversifier. Donc, si le joueur a fait
plus de trois tours, cela portera ce tour à quatre, car il fera le premier
tour, le deuxième, le troisième tour
et le quatrième tour. Nous devrions probablement
régler cela à un, soit dit
en passant, au premier tour. Et puis si c'est fait, nous voulons obtenir une référence d'interface utilisateur. À partir de là, nous pouvons obtenir la référence de l' interface utilisateur maintenant, car
nous l'avons enregistrée ici et nous avons gagné une interface utilisateur. Vrai Il va
demander le gagnant. Qui est le gagnant ? Eh bien, nous connaissons le nom de la voiture,
qui est ici. Pourtant, le nom de la voiture apparaît maintenant. Ça. Mon ami. Nous avons maintenant terminé le jeu, et nous
pouvons tester le son. Passons à notre pot de contrôle. Réglons le nombre de
tours requis pour qu'il n'y en ait qu'un. Jouons. Alors faisons un tour. Je ne veux pas que Tim
gagne. Je veux gagner. On va gagner ?
Nous allons gagner. Ian est le gagnant.
C'est fantastique. Maintenant, avec ça, je vais
tenir un petit moment. Vous avez terminé
ce prototype. Nous allons maintenant
passer à l'un des prototypes de frettes que
j'
ai conçus pendant les années que j'ai passées à enseigner le prototype de ciseaux à
papier, et je vous verrai
dans le prochain.
14. Emballage du projet et partage sur Skillshare pour obtenir vos commentaires !: Nous sommes donc prêts à le télécharger sur
Skillshare pour recueillir des commentaires et le présenter à vos
camarades Donc, avant d'intégrer
ce projet à
Skillshare, il vous ce projet à
Skillshare, il suffit de vous rendre dans les
paramètres de votre projet pour vous assurer que le jeu se charge
au plus haut Je veux donc cliquer sur Modifier en haut et dans les paramètres du projet. Vous allez ensuite
passer aux cartes et aux modes qui se trouvent sur la gauche. Ensuite, assurez-vous que
la carte par défaut du jeu, c'est-à-dire la carte que le jeu charge d'un projet de package,
est définie sur votre trace. Je l'ai donc configuré pour en suivre un. Incroyable. Je peux maintenant
simplement cliquer sur E ici. Je vais me rendre sur les plateformes
pour commencer à empaqueter le projet.
Je vais passer aux fenêtres. Je le vends normalement à
l'expédition, et je vais cliquer sur
Package Project. Cela ouvrira
cette boîte de dialogue de fichier, dans laquelle je vais
créer un nouveau dossier appelé packaged slot. OK. Et je vais
cliquer sur Sélectionner un dossier. Cela prend un certain temps, et
vous pouvez afficher le journal de sortie, mais cela prendra
un certain temps. Une fois cela fait, je
vous recommande de le télécharger sur Google Drive, One Drive ou tout autre
type de lecteur possible Je recommande également de le
compresser pour éviter que
le projet ne soit mené à bien afin de l'aider
à
fonctionner correctement. Maintenant, je suis vraiment impatiente
de voir ce que tu vas faire. Une fois
que vous l'avez fait, téléchargez-le sur Skill Share et terminez
ce cours.