Bienvenue à mes collègues développeurs de jeux dans l'une des vidéos les
plus excitantes et les plus longues et les plus longues.
Mais croyez-moi, ça en vaut vraiment la peine.
Dans cette vidéo, nous allons donner plus de vie et à notre jeu en créant des animations.
Maintenant que nous commençons notre jeu,
nous ne sommes pas simplement là comme une statue.
Vous pouvez voir que nous sommes en train de bouger.
Donc, notre joueur monte et descend,
haut en bas, de haut en bas.
Et non seulement cela,
chaque fois que nous commençons à marcher, regardez ça.
Il commence à bouger ses pieds.
Est-ce que c'est cool ?
Sérieusement, maintenant nous n'avons plus que le joueur debout comme une statue chanceuse.
En fait, il a la vie, sa respiration.
Il marche, il regarde autour de lui,
il pointe son arme,
il est prêt à commencer à tirer.
Il a encore besoin d'un peu de peaufinage,
mais on s'occupera de ça dans la prochaine vidéo.
Alors, qu'est-ce qui, au final, quelle vidéo ?
Ne perdons plus de temps à réfléchir et passons à l'animation.
Oh, d'accord.
Donc, en ce moment, lorsque nous commençons notre jeu,
si nous nous déplacons,
comme vous pouvez le constater, nous sommes très viciés.
On n'a pas d'animations en particulier,
on ne voit pas le joueur changer d'état
quand il commence à marcher ou quand il est debout non plus.
Nous allons donc changer cela.
Nous allons ajouter des animations à notre joueur.
Et nous avons déjà quelques feuilles de calcul et ici,
celles qui détermineront notre animation.
Vous pouvez donc voir le ralenti, la marche.
Nous allons les mettre côte à côte et jouer ces sprites pendant que nous marchons, alors que nous
restons immobiles, tout
comme nous faisons le mouvement des torpilles.
Commençons donc par les animations.
Tout d'abord, comprenons ce que sont les animations.
quelques éléments clés dont nous avons besoin.
Tout d'abord, nous avons le contrôleur d'animateur,
qui vous permet d'organiser et de maintenir un ensemble de clips d'animations.
Nous avons le composant animateur que nous ajoutons à n'importe quel objet de jeu que nous voulons animer.
Nous avons les animations réelles,
qui sont plusieurs sprites qui sont rendus les uns après les autres.
Nous verrons également que nous avons un autre type d'animations qui nous permet de déplacer
des objets, puis de les mémoriser et de les jouer à certains moments.
Et enfin, nous avons le moteur de rendu de sprite.
Maintenant, pourquoi est-ce que je vous rappelle le rendu de sprite ?
Parce qu'en un instant,
vous devrez comprendre quel moteur de rendu de sprite essayerait réellement de changer afin
de créer les animations que nous avons pour notre lecteur DOM.
Bon, on parle assez.
Commençons par les animations.
Allons donc dans Unity.
Et la première chose que nous devons faire, c'est d'obtenir les fenêtres de l'animation.
Nous allons donc créer la fenêtre des animations.
Allons-y ici.
Et créons une
autre fenêtre pour l'animateur.
Vous y allez.
Donc, l'animateur indique où nous allons définir toutes les animations.
Et les animations comme l'endroit où nous allons réellement créer les animations.
Commençons. Tout d'abord,
nous allons choisir notre doom player.
Et comme vous pouvez le voir immédiatement dans la fenêtre d'animation,
nous devons commencer à animer, faire du lecteur,
créer un animateur et un clip d'animation.
Super, faisons-le.
Nous allons cliquer sur Créer.
Et comme vous pouvez le constater, nous sommes actuellement à la fois dans le fichier envahisseur et les actifs.
Je vais créer un nouveau dossier ici,
qui sera les animations.
Ou des animations.
Vous y allez.
Et ici, créez un dossier appelé le lecteur.
Et nous allons nommer notre clip.
Commençons par créer un joueur,
je pense. Ok, super.
Nous avons donc maintenant notre nouvelle animation.
Et si nous regardons le lecteur dôme,
vous pouvez voir que nous avons un nouveau composant à côté du corps rigide et de la capsule,
qui est l'animateur.
Donc, si nous entrons dans la scène,
rien ne change, sauf à l'intérieur de l'animateur,
juste pour tout rafraîchir,
vous pouvez voir que nous avons maintenant ces petits rectangles ici.
Et que s'agit-il ?
Eh bien, nous avons tous les états,
l'entrée et la sortie.
Ne nous inquiétons pas de l'état et de la sortie.
Concentrez-vous sur l'entrée et le joueur au ralenti.
Cela signifie que dès que nous commençons notre jeu, nous passons
immédiatement au joueur au ralenti.
Et vous verrez que chaque fois que nous avons un animateur,
nous avons toujours une animation par défaut avec laquelle nous commençons.
Et dans ce cas, nous avons le joueur au ralenti dès l'entrée.
Et comme vous pouvez le voir, c'est relié par cette ligne avec une flèche.
C'est ce qu'on appelle une transition.
Et plus tard, nous ferons notre propre transition pour passer d'une animation à l'autre.
D'accord, continuons.
La prochaine chose que nous voulons faire est de créer l'animation.
Pour ce faire,
nous devons obtenir nos sprites inactifs ici.
Ces trois, nous voulons les ajouter au joueur et commencer à jouer avec eux.
Mais il y a ici un petit détail que nous devons prendre en considération.
Nous allons changer les sprites du joueur.
Et les sprites que nous changeons sont en fait sur le corps,
pas sur l'immédiat.
Faire un objet de jeu de joueur.
Par conséquent, grâce à cette animation,
il faudra ajouter une propriété ici.
Et laissez-moi juste expliquer cette fenêtre ici.
Il s'agit de la chronologie de l'animation.
Vous pouvez donc voir à partir de 030,
c'est 2.5ème et 2 ici.
C'est une seconde.
Vous avez la pièce,
la prochaine image-clé incontournable, etc.
Vous avez le bouton Enregistrer ici et vous pouvez créer
un nouveau clip en cliquant sur cette liste déroulante ici.
Nous allons donc ajouter une propriété.
Lorsque nous cliquons dessus, vous pouvez voir que nous avons accès à
tous les composants présents sur le joueur ou sur l'objet du jeu Doom Player, nous pouvons changer les armes que
sont le Chicago,
le bras, le corps, tout.
Je vais donc accéder au corps.
Et vous pouvez voir que je peux accéder au rendu sprite dessus.
Et si je fais défiler vers le bas,
je peux accéder au sprite qui se trouve sur le corps ici.
Je vais donc cliquer sur le petit signe plus ici.
Si je rends cela un peu plus grand,
vous pouvez voir que je peux vraiment voir
ce petit sprite et c'est ce que nous allons changer.
Donc, si je touche Play,
vous remarquerez que rien ne change car ce sprite est exactement le même que celui-ci.
Changeons donc cela.
Je vais ancrer les animations et ici juste pour avoir un peu d'espace,
je vais supprimer la dernière,
Gardez ça juste ici.
Je vais sélectionner ces trois éléments et les ajouter à la chronologie ici,
et je peux me débarrasser du premier.
Alors maintenant, laissez-moi faire ça, d'accord, mais à part.
Je vais ancrer l'animation ici.
Et maintenant, si j'essayais de jouer l'animation, c'est parti.
Vous pouvez voir que notre joueur commence à bouger.
Est-ce que c'est cool ?
Que se passe-t-il ici ?
Si vous regardez de près,
permettez-moi de faire une pause pendant une seconde.
Je vais juste passer le temps entre les deux un peu loin.
Maintenant, lorsque nous jouons,
vous remarquerez que nous passons d'un sprite à l'autre.
Et vous pouvez vous en assurer en regardant ici
l'inspecteur du corps et voir que nous passons de l'un ou l'autre, soit au ralenti,
en voulant deux au ralenti.
Et celui-ci ici,
qui est les trois,
est à peine joué car dès que nous arrivons à la fin,
nous commençons immédiatement dès le début.
Par conséquent, le principal à avoir pour créer des animations est que tout le temps, la
première image doit être copiée en appuyant sur Contrôle C et B,
la dernière image également.
Vous remarquerez maintenant à quel point l'animation est bien meilleure.
Je vais donc rejouer l'animation.
Vous y allez.
Vous pouvez voir que maintenant nous sommes au ralenti.
On peut voir 1, 2, 3,
1, 2, 3 jouer l'un après l'autre.
Nous avons donc maintenant l'animation du joueur au ralenti.
Et si nous réalisons notre gain,
vous pouvez voir que dès que nous commençons,
le joueur démarre l'un ou l'autre des liens.
Et même pendant que nous déménageons,
nous sommes toujours au ralenti.
Même si nous regardons dans l'autre sens,
nous sommes toujours au ralenti.
Et si nous vérifions l'animateur,
vous pouvez voir que tout le temps nous sommes au ralenti.
Je vais le verrouiller ici pour que nous puissions le voir clairement et faire un zoom arrière un peu.
C'est donc le joueur qui tourne au ralenti tout le temps pendant que nous sommes debout, immobile.
Super.
Maintenant, la prochaine étape consiste à créer l'animation de marche.
Et ce sera votre défi.
Votre défi consiste à créer une autre animation.
Procurez-vous donc les sprites ambulants du sprite principal.
Si vous ne l'avez pas déjà découpé,
choisissez le lecteur Doom dans la hiérarchie et créez un nouveau clip comme je vous l'ai montré.
Ajoutez tous les sprites marcheurs et séparez-les.
Jouez et faites en sorte que la marche soit belle.
Et si vous êtes intéressé par un défi supplémentaire,
vous pouvez créer l'animation des torpilles.
Je ne sais pas si je vais continuer à utiliser l'animation des torpilles.
Peut-être que ça devrait être différent,
peut-être v, rouler autour de l'animation.
Je ne sais pas avec ce non,
mettez la vidéo en pause maintenant,
allez essayer l'animation.
Ne vous inquiétez pas, même si vous êtes débutant,
essayez simplement.
Voyez quelques étapes.
Comment j'ai créé le ralenti.
Essayez-le vous-même, amusez-vous, profitez-en.
Et c'est tout.
Mettez la vidéo en pause dès maintenant et lancez-la à chaque défi.
Bon, donc maintenant nous allons créer la deuxième animation,
qui est la marche.
Je vais donc cliquer ici.
Je vais créer un nouveau clip.
Allez dans le lecteur d'animations, choisissez le ralenti,
et au lieu de tourner au ralenti,
je vais le définir comme la marche.
Alors maintenant, le joueur marche.
Très bien.
Bon, donc maintenant, nous allons ajouter une propriété ici.
Nous allons accéder au corps car rappelez-vous
les sprites que nous changeons sont sur le corps.
rendu Sprite, le sprite parce que nous changeons réellement chaque sprite.
Et nous allons ajouter,
déplacons l'animation ici.
Ce n'est peut-être pas le meilleur endroit pour ajouter une animation,
mais nous n'aurons qu'à faire avec ce que nous avons pour l'instant.
Allez au projet,
qui est notre marche.
Je pense donc que ces quatre derniers sont ceux qui sortent.
Il suffit de les ajouter ici.
Je vais retirer le dernier et le premier.
C'est ce qui a commencé l'animation.
Choisissons tous ces éléments et je vais les répartir
avec un intervalle de 10. Allons en faire 10.
Donc, 10, 10, 10.
Et je vais copier le premier et le définir comme le dernier.
Et maintenant, lorsque nous avons essayé de jouer l'animation,
nous y allons, vous pouvez voir la marche du joueur.
Et c'est exact.
Maintenant, comment allons-nous faire la transition ?
Et si vous cliquez sur l'animateur,
vous verrez que nous avons maintenant un nouveau clip ici, qui est le joueur qui marche.
Mais comment allons-nous passer de l'élargissement de la conversation ?
C'est la question d'un million de dollars.
Avant de vous expliquer comment nous faisons cela,
permettez-moi de vous montrer ce que nous avons créé dans ce dossier Animations à l'intérieur du lecteur.
On a donc le doom player,
il a un animateur,
il a une manette.
Et si je clique sur la manette, d'ailleurs, chaque fois que vous cliquez, par
exemple, sur le joueur ne pas jouer,
vous pouvez voir le corps rigide où il se trouve ou les armes
peuvent obtenir une référence.
Nous cliquons sur la manette.
Il s'agit de la manette et ce sont
les animations du joueur et de la marche, du ralenti.
Et vous pouvez voir ici, nous pouvons modifier un peu le décalage du cycle, le
temps de boucle, les pôles de boucle.
Mais pour l'instant, nous n'allons pas approfondir cela.
Pour l'instant, concentrons-nous sur l'animateur et sur la façon dont nous allons créer des transitions.
Comment allons-nous décider du moment de la transition ?
C'est également très important.
Nous allons donc créer une transition ici en cliquant avec le bouton droit sur le joueur au ralenti.
Ici, nous avons la transition de marque et nous allons la régler sur le joueur qui marche.
Permettez-moi donc de zoomer un peu.
Maintenant, vous pouvez voir que nous avons cette flèche qui passe du joueur au ralenti pour jouer ou marcher.
Et nous pouvons également créer une transition entre le joueur qui marche au ralenti.
Nous pouvons donc maintenant faire des allers-retours entre ces deux animations.
Cliquons sur l'une de ces flèches et regardons et voyons ce que nous avons ici.
Nous avons donc quelque chose qui s'appelle l'heure de sortie.
Si vous le survolez,
vous pouvez voir que cette transition a une heure de sortie fixe.
Que signifie l'heure de sortie ?
Cela signifie que si je passe du ralenti à la marche après un certain montant,
est-ce que je veux passer automatiquement de la marche au ralenti ?
Et notre cas, nous ne voulons pas le faire.
Nous voulons revenir en arrière chaque fois que nous arrêtons réellement de marcher.
Je vais donc désactiver l'heure de sortie Has.
Je vais faire la même chose en descendant.
Ensuite, nous allons chercher la durée de la transition.
Et vous pouvez voir ici un aperçu,
une petite fenêtre d'aperçu.
Donc, quand je joue,
je suis au ralenti, puis je commence à marcher.
Nous avons la durée de la transition.
Alors, comment voulez-vous terminer l'animation du
ralenti avant de passer à la marche et à notre cas,
je pense que nous n'en avons pas besoin.
Je vais donc définir la durée de la transition à 0
et aussi à cela dans la transition de la marche.
Ainsi, dans les deux transitions,
les deux flèches allant vers et depuis la marche,
nous allons supprimer le temps de sortie,
supprimer la transition plus tard lorsque nous en avons besoin.
Je vais m'assurer de vous en parler. Ne vous inquiétez pas.
Maintenant, si nous faisons défiler vers le bas,
nous pouvons voir ici que nous avons quelque chose appelé les conditions.
Et c'est dans quelle condition passons-nous
du joueur au ralenti au joueur qui marche ?
Et dans quelle condition passons-nous
marche au joueur à l'un ou l'autre des liens ?
Il va donc falloir ajouter une condition.
Comment ajouter une condition ici dans les transitions ?
Si nous regardons à nouveau l'animateur,
nous pouvons voir que nous avons l'étape du calque et que nous avons quelque chose qui s'appelle les paramètres.
Et ici, nous pouvons ajouter certains paramètres auxquels nous pouvons
accéder à partir de notre code et définir les conditions.
Je vais donc cliquer et j'ai essayé d'ajouter l'un des paramètres.
Vous pouvez voir que nous avons un nombre float,
entier, un booléen et un déclencheur.
Maintenant, float et entier s'expliquent eux-mêmes.
Comme vous le savez, un booléen
est vrai ou faux et un déclencheur ressemble à ce que signifie le mot, un déclencheur.
Pour l'instant, concentrons-nous sur le booléen.
Donc, lorsque je clique sur le booléen,
vous avez la possibilité de l'appeler comme vous le souhaitez.
Donc ce sera le booléen qui passe de l'un ou l'autre des liens à la marche,
je vais l'appeler, est.
Marcher, appuyez sur Entrée.
Et maintenant, vous pouvez voir que je peux l'activer,
ce qui signifie qu'il devient vrai,
ou que je peux l'éteindre,
ce qui signifie qu'il devient faux.
Je vais donc cliquer sur la transition, passant du
lien d'identification du joueur à la marche.
Et je vais cliquer sur la condition.
Et comme vous pouvez le constater, parce que nous n'avons qu'un seul paramètre,
il pense immédiatement que nous avons besoin de la marche ou détermine ce qui est vrai.
Donc, quand la marche est vraie,
nous passons du joueur au ralenti à la marche.
Et si nous marchons,
nous voulons passer au ralenti.
Nous voulons avoir une condition où la marche est fausse.
Alors maintenant, quand la marche est vraie,
nous passons du joueur Ivan au jeu ou à la marche.
Lorsque le joueur marche et marche devient faux.
Nous sommes de retour au ralenti.
Convertissons cela en code et ajoutons du comportement.
Je vais ouvrir mon scénario.
Et ici, la première chose que nous devons faire est d'obtenir une référence de l'animateur du joueur.
Je vais donc créer un animateur privé, l'animateur de joueur.
Et il peut porter la porte.
Maintenant, c'est privé.
Comment allons-nous ajouter ?
Nous ne pouvons pas y accéder depuis l'inspecteur ici.
Si je clique sur le lecteur dôme sur le script,
nous n'y avons pas accès.
Eh bien, nous pouvons utiliser quelque chose appelé le composant get.
Donc ici, je vais écrire l'animateur de joueur va être égal pour obtenir un composant.
Et nous allons ajouter le type de composant que nous voulons obtenir.
Que se passe-t-il ici ?
Permettez-moi de survoler la composante de la dette.
Il n'a pas d'explication.
Je vais vous dire quelle est l'explication que vous pouvez aussi aller de l'avant
et trouver sur la documentation d'Unity, c'est très facile.
Ce qu'il fait, c'est dès que nous commençons,
nous obtenons le composant,
qui est de type animateur attaché à
l'objet de jeu qui a la manette du joueur en tant que script.
Ce que nous faisons, c'est que ce script utilise le composant VI get ici.
Et obtenir l'animateur,
qui est celui-ci.
Et maintenant, nous avons une référence à ce sujet.
Nous pouvons maintenant accéder à de nombreuses choses à l'aide de cet animateur.
Et vous pouvez également parcourir les documentations Unit is
et voir tous les différents types de méthodes,
propriétés et de diverses choses que nous pouvons faire avec cet animateur.
Alors, que va-t-on faire dans cet animateur ?
Nous voulons vérifier s'il y a un état de santé.
Nous voulons vérifier si nous marchons.
Nous voulons définir la marche à vrai, puis passer à l'animation de marche.
Je vais donc créer une condition if ici et vérifier si
l'entrée du mouvement est différente du vecteur à 0.
Par conséquent, le vecteur 0 est comme le vecteur 3 ici.
Point un, ce qui signifie 111 vecteur deux points 0 signifie 00.
Cela signifie que si l'entrée de mouvement n'est pas égale à 0,
cela signifie que nous avons la marche ici.
Nous avons de la vélocité, nous avons du mouvement.
Nous allons chercher l'animateur du joueur.
Nous allons utiliser quelque chose appelé Boolean set.
Et ici, vous pouvez voir qu'il faut une pièce d'identité
ou une autre façon d'utiliser le stand.
Si je clique ici,
vous pouvez voir que je peux utiliser un nom de chaîne.
Et c'est ce que je vais faire.
Et vous pouvez voir que nous avons une référence de chaîne.
Et qu'avons-nous dit des références de rétrécissement ?
Chaque fois que nous en avons un, nous y allons toujours,
nous le copions car s'il y a une erreur,
l'EDI ne nous dira pas quel est le problème, quelle est l'erreur.
L'IDE, je veux dire l'unité ou le Visual Studio.
Et ici parce que nous marchons.
Oh, et j'ai oublié.
Que signifie ce point d'exclamation ?
Que signifie le point d'exclamation égal ?
Donc, si vous voyez ici,
nous avons dit que lorsque la position de la souris de x est inférieure à ce point vert,
nous aurions pu dire que si la position de la souris AX est égale, chaque fois que
nous voulons comparer deux valeurs,
nous pouvons définir ils sont égaux, égaux.
Cela signifie que la position x la plus élevée est la même que celle du point x de la souris.
Mais ici, nous avons décidé de le garder comme inférieur ou égal.
Mais que se passe-t-il si nous voulons dire,
si ce n'est pas égal ?
Alors, nous utilisons le point d'exclamation égal.
Cela signifie que chaque fois que l'entrée du mouvement est différente du vecteur à deux points 0,
nous avons la valeur true.
Sinon.
Cela signifie que lorsque l'entrée du mouvement est égale à 0,
nous allons dupliquer cette ligne.
Et si nous maintenons Alt enfoncée et que nous utilisons les touches fléchées,
nous pouvons le mettre ici.
Et nous allons mettre la marche à faux. Nous allons sauver ça.
Passons en revue encore une fois parce que j'ai oublié de vous en parler
et j'ai continué à l'utiliser, ce qui est très mauvais.
J'espère donc que ce n'était pas trop déroutant.
Quoi qu'il en soit, nous créons une condition si que nous avons apprise dans une vidéo précédente.
Nous vérifions si la vitesse de déplacement est différente d'un vecteur 0,
exemple différente de celle d'un point d'exclamation et égale.
Donc, si la vitesse de déplacement est différente de 0,
cela signifie que nous marchons.
Nous allons accéder à l'animateur du joueur qui va utiliser la méthode Bool set.
Et nous allons accéder au paramètre is walking et le définir à vrai.
Et rappelez-vous que lorsque nous l'avons défini sur vrai,
nous avons ici la transition qui dit que si B marche est vrai,
nous passons du ralenti à la marche,
et nous avons fait de même en utilisant un autre.
Sinon, lorsque l'entrée du mouvement est égale au vecteur 2,
2, 0, cela signifie que nous avons arrêté de marcher fonctionne comme faux.
Nous passons du joueur qui marche au jeu ou au ralenti.
Voyons si cela fonctionne.
Nous commençons donc le jeu.
Nous pouvons voir ici que nous avons un joueur au ralenti.
Si nous commençons à marcher, vous y allez.
Vous pouvez voir que maintenant nous marchons et il est évident en passant que les
jambes de notre joueur bougent.
Est-ce que c'est cool ?
Nous avons donc maintenant des animations.
Nous avons des transitions d'une animation à l'autre.
Nous avons créé deux animations.
Vous avez peut-être créé le troisième sur vous-même.
Je ne le ferai pas maintenant,
même si plus tard pour le futur Michel de gérer ce problème,
je me sens paresseux en ce moment.
Mais il y a encore une chose dont nous devons nous occuper
si nous allons ici et chez le joueur du dôme.
Et passons à Animations.
Si nous choisissons le ralenti
, par exemple, et que nous le jouons,
vous remarquerez que notre arme et
notre bras restent immobiles là, sans rien faire.
Ce n'est pas du tout bon.
Cela rend le jeu très, très mauvais.
Donc, et aussi quand il s'agit de marcher,
vous pouvez voir ici que le bras bouge,
le joueur bouge,
mais le bras et parti sont très rigides.
Dans la vidéo suivante,
nous allons résoudre ce problème.
Donc avant de partir,
assurez-vous de tout mettre en scène,
assurez-vous de commettre des animations ajoutées et des animations au
ralenti et à la marche dans votre cas également
l'animation torpille au joueur, commettez les modifications.
Et je vous verrai dans la prochaine vidéo.