Transcription
1. Introduction et structure du cours: Mon nom est Michael Moore, fondateur de double m game dev. Et mon objectif est de vous faire le meilleur développeur de jeux de la manière la plus amusante possible. J' ai aidé des centaines de développeurs de jeux en
herbe à atteindre leurs objectifs de création de jeu équitable. Et je veux faire la même chose pour toi. Ce que j'ai appris, c'est qu'il peut être très difficile de savoir par où commencer quand il s'agit développement de
jeux et quelles mesures prendre pour passer du débutant au intermédiaire au professionnel, pas seulement dans le développement de jeux, mais dans la programmation et l'apprentissage. Et je peux dire avec une confiance absolue, ce cours permet à tout débutant avec 0 expérience de codage de sauter et d'apprendre à faire de grandes choses. Ce qui est encore plus étonnant, c'est que ce cours est fait en utilisant la dernière version de Unity 20-20 était le plus récent contenu possible et les techniques utilisées et le développement de jeux modernes, j'ai tenu des centaines de personnes créer des jeux du monde réel, et je Je veux que tu sois l'un de ces gens. Alors comment allons-nous faire ça, la structure du cours ? Donc, la première section, sur
laquelle nous sommes actuellement sur sera la production et le sirop, où je vais vous présenter une unité si vous êtes nouveau, et vous présenter le Visual Studio et pourquoi l'utiliser, sera effectivement aussi créer notre premier code et notre premier script, ce qui est très excitant. La deuxième section sera le jeu magique Cube, essentiellement couvrira les bases C-Sharp et de l'unité. Nous parlerons des bases de C-Sharp et des outils dont nous aurons besoin pour notre Golding plus tard. Et les bases de l'unité et tout ce que nous devons comprendre, des collisions aux corps rigides, la physique, l'immunité, etc. Maintenant, la troisième section est où les choses deviendront très intéressantes. Et c'est notre projet qui est la conquête de Castille à la, et dans la troisième section, nous allons mettre en place notre monde. Nous allons créer nos jeux de tuiles. Nous allons créer notre monde, ajouter des collisions pour laisser le monde et ajouter notre joueur, mais pas cousin si rapide dans la section quatre, nous allons ajouter notre conquérant et nous avons peut-être, nous pouvons présenter notre conquérant et d, Section trois Bouton section quatre. On va lui donner les capacités de Shawn, courir, d'avoir une animation différente et ainsi de suite. Maintenant, la section 5 est où les choses deviennent un peu effrayantes parce que nous ajoutons des ennemis et des bombes. Donc maintenant notre joueur comme plus sûr, il devra combattre les ennemis et il devra
éviter les bosses en chemin alors qu'il tente de conquérir la bande de Gaza. Et dans la section six, nous commencerons à contrôler nos jeux. Tout ajouter, un score, sera ajouter les vies,
sera ajouter le jeu de magasin à plusieurs niveaux et tout ce qui se passe avec elle sera en fait aussi ajouter beaucoup d'effets sonores et rendre notre thème beaucoup plus cool. Et enfin, dans la section sept, nous aurons la section osseuse sera où nous modifions les choses un peu et juste pour le plaisir de cela, rendre notre jeu un peu plus excitant et plus amusant. Vous aurez également la chance de fléchir les muscles de vos développeurs de jeux, car dans chaque vidéo, il y aura un mini défi à relever. Et même si vous ne savez pas comment le faire, ne vous inquiétez pas. Je serai là pour vous aider à réessayer et à relever le défi avec tout. Et notre gain sera configurable. Ainsi, vous pouvez modifier, jouer autour et donner au jeu et individuel S une sensation spéciale sur vous allez mettre votre propre créativité dans elle et vraiment en faire votre propre. Je suis tellement excité de commencer et j'espère que tu l'es aussi. C' est le moment idéal pour commencer à apprendre à coder, surtout dans des moments comme ceux-ci. Alors plonger avec moi et je vais vous aider à chaque étape de votre jury de développement de jeu. Et je te vois dans la prochaine vidéo.
2. Section 1 : Télécharger l'unité et le Studio visuel: Bienvenue à tout le monde. Donc, dans cette vidéo, nous allons simplement être téléchargé dans l'unité, comment installer notre version de Unity et mettre en place tout pour commencer à créer des jeux. Alors commençons. La première chose que vous devez faire est que vous devez aller et à n'importe quel navigateur que vous utilisez. J' utilise actuellement Google Chrome. Ça n'a pas d'importance. Il suffit d'aller de l'avant sur Google et de taper le hub d'unité de téléchargement, et vous devriez obtenir ce résultat de recherche. Alors il suffit d'aller et de cliquer sur le hub d'unité de téléchargement. Il devrait être le premier lien qui serait sur le site Unity 3D.com. Et cela vous mènera à cette page ici, et il vous demandera de télécharger Unity Hub. Maintenant, qu'est-ce que le hub de l'unité ? Eh bien, Unity Hub est un endroit où nous pouvons ajouter différentes versions d'Unity. Et nous pouvons aussi avoir tout, tout, tout, tout notre projet représenté très soigneusement et très soigneusement, ce qui est très utile et beaucoup mieux que la façon dont nous avons utilisé Unity auparavant. Donc, il suffit de cliquer sur Download unity Hub et vous devriez obtenir l'installation qui est juste ici, qui est la configuration Unity Hub. Donc double-cliquez dessus. Il va démarrer une installation. C' est assez facile. Il vous suffit de cliquer sur Accepter et de l'installer. Et quel que soit le dossier de destination que vous avez, j'ai déjà un hub d'unité, donc je ne vous ennuierai pas avec le processus de téléchargement. Il vous demandera d'accepter quelque chose qui est assez facile. Alors allez-y et installez Unity Hub. Oh, ok, donc maintenant que vous avez un hub et un stand d'unité, vous devriez avoir cette fenêtre juste ici. Et la première chose que vous devrez faire parce que je suis déjà connecté, donc vous devez créer un compte. J' utilise actuellement mon e-mail Google, ce qui est très utile et beaucoup plus facile. Et ici vous pouvez voir que nous avons tous nos projets, pas actuellement, nous n'avons pas encore de projets, mais nous le ferons très bientôt. Ici, vous avez différents onglets pour apprendre et pour la communauté, que vous pouvez aller voir et voir ce qu'il y a. Mais ce sur quoi nous allons nous concentrer en ce moment est installé. Maintenant, comme vous pouvez le voir, j'ai déjà une version d'Unity, qui est 2020.1.21. Alors peut-être que vous êtes du futur et que vous avez une meilleure version ou plus, ou une version plus récente. Et pour ajouter une nouvelle version, il
vous suffit de cliquer ici sur l'application. Donc, lorsque vous cliquez sur Ajouter, il vous donne différentes options pour télécharger l'unité. Maintenant, comme vous pouvez le voir, vous avez recommandé des versions, vous avez des versions officielles et vous avez des versions pré-publiées. Maintenant, que devriez-vous choisir ? Eh bien, personnellement moi, j'aime choisir les versions officielles parce qu'elles sont généralement les moins buggy. Il y a la version recommandée qui n'est pas non plus mauvaise. Et il y a les communiqués de presse pré-communiqués. Et maintenant les communiqués de presse ne sont pas toujours mauvais buggy, mais parfois vous pouvez rencontrer pas de très bonnes performances pendant le jeu ou pendant la création du jeu. Ils ne sont pas si communs, mais je préfère personnellement les communiqués officiels. Alors allez-y et choisissez l'un d'entre eux. Choisissons la version officielle de 2020.1.10. Et nous allons cliquer sur Suivant. Maintenant, cela devrait vous conduire à d'autres modules à votre fenêtre d'installation. Et ce que nous avons ici, c'est un tas d'add-ons et d'utilisations pour l'unité. Ainsi, par exemple, vous avez la ceinture Android, qui vous aidera à construire des jeux pour Android, vous avez ligne prochain support construit et Mac et ainsi de suite et ainsi de suite. Vous avez également la documentation que je vous recommande de télécharger. Et vous avez la langue de retour, que si vous avez une sorte de langue différente, chinois ou le coréen, je ne suis pas sûr de ce que c'est. Vous pouvez également vérifier l'un d'eux et le télécharger. Mais le plus important est que vous devez vérifier cet outil de développement, qui est Microsoft Visual Studio Community 1019. Peut-être que vous avez une version plus récente. C' est donc absolument un must. Nous utiliserons Visual Studio pour coder tous nos jeux. Alors allez-y, cliquez sur ceux-ci et cliquez sur Suivant. Et le téléchargement devrait commencer ici pendant que vous avez une boîte similaire à celle-ci et avec une petite barre bleue en attendant de terminer le téléchargement. Maintenant, je vais vous présenter votre défi, et c'est votre défi pour aujourd'hui. Vous devez donc télécharger unité et Visual Studio. Donc, tout d'abord, allez-y et téléchargez Unity Hub. Ensuite, l'unité de téléchargement est la dernière version. Et assurez-vous de télécharger également Visual Studio avec unité. Alors allez-y et faites le défi, et je vous verrai dans la prochaine vidéo.
3. Comment utiliser ce cours: Bienvenue, Mes développeurs de jeux préférés. Et cette vidéo, en fait, et pas dans cette vidéo. J' ai créé cette vidéo afin de
maximiser le potentiel d'apprentissage de ce cours. Donc, je vous veux, je veux vous guider à travers quelques étapes que nous pouvons utiliser afin de
tirer pleinement toute l'énergie d'apprentissage du cours que vous suivez actuellement parce que vous avez déjà, vous dépensez déjà votre temps ici. Alors pourquoi ne pas le maximiser ? Donc, la première chose que nous allons comprendre est le fonctionnement des questions et réponses. Alors que vous regardez les vidéos, vous les regardez à travers, peut-être que quelque chose arrive qui ne devrait pas pleinement comprendre. Donc, ce que vous pouvez faire, c'est d'aller de l'avant et de glisser dans les discussions juste ici. Et vous pouvez voir que vous avez plusieurs options. Vous pouvez commencer une conversation, poser une question ou simplement partager un projet. Donc ici, vous pouvez me poser n'importe quelle question que vous voulez. Aucune question n'est de limite. Mais il y a un petit pas que vous devez faire avant de me poser une question. Et c'est-à-dire, allez-y et faites vos propres recherches. Pourquoi je te demande de faire ça ? Eh bien, parce que parfois, quand vous tombez sur un problème et que vous allez de l'avant et que vous cherchez une solution vous-même, et alors vous le trouvez ou vous ne le trouvez pas. Et quand tu reviens me poser la question, c'est beaucoup plus facile à comprendre. Pourquoi c'est ça ? Parce que vous avez déjà fait quelques suggestions, peut-être qu'aucune d'entre elles n'était appropriée. Mais au fur et à mesure que vous allez trouver la solution à votre problème, vous avez acquis beaucoup de connaissances. Et quand tu viendras me voir, quand tu demanderas à Michael et nous passons ensemble à trouver la solution, tu comprendras comment tout clique et plus tard, quand tu rencontreras peut-être le même problème ou peut-être que tu verras ça problème pour un autre étudiant. Vous pouvez les aider et c'est beaucoup plus facile. Et enfin, chaque fois que vous trouvez une solution à votre question à votre question et y ajoutez un préfixe de sel
parce que d'autres étudiants peuvent avoir le même problème et ils trouveront une solution à leur problème s'ils voient le préfixe résolu derrière elle. Et enfin, avant de partir, vous voulez juste dire une chose qu'il n'y a pas de question de limite. n'y a pas de questions stupides, il n'y a pas de questions stupides. Il n'y a que des développeurs de jeux non professionnels. Personne n'est né professionnel. Nous devons tous apprendre à travers les essais et les erreurs. Vous ne croiriez pas comment citer une citation, mes questions étaient stupides. Parce que je, o, je suis, je ne suis pas né un professionnel dans l'unité m'a pris des années de pratique, d' essais et d'erreurs ou de poser des questions, de googler des choses. C' est donc un processus. Ne vous inquiétez pas, n'ayez pas peur, ne soyez pas à l'abri de certaines des questions que vous pourriez vouloir poser. Soyez assez courageux pour aller chercher une solution si vous n'en trouvez pas, ne inquiétez
pas, laissez juste une question. Je réponds toujours, toujours à tous mes élèves et nous
plongons toujours aussi profondément que nécessaire afin de trouver une solution à n'importe quel problème. Et maintenant, parlons du serveur Discord. Et c'est là que vous pouvez aller plus loin dans la communauté que nous avons créée ici sur le développement de jeux d'armes de destruction massive. Donc, vous pouvez aller soit au lien dans la description de cette vidéo ou vous pouvez visiter mon profil et trouver le lien quelque part là-dedans. Et je vous recommande de rejoindre la discorde. Pourquoi ? Parce que la plupart du temps, cela pourrait me prendre quelques heures pour répondre en fonction d'où venez-vous. Alors peut-être que nous vivons dans des fuseaux horaires différents. Peut-être que quand vous me poserez la question, il est minuit et que vous avez besoin d'une solution après que je dormais, je pourrais ne pas être en mesure d'accéder à mon ordinateur. Il est donc très bénéfique pour vous de rejoindre le canal de discorde que nous avons créé. Et laissez-moi vous montrer la chaîne de discorde juste ici. C' est le début de notre chaîne de discorde. Vous pouvez voir que nous avons la communauté générale. Nous avons le chat C-Sharp, nous avons le chat de conception de jeu, nous avons le spectacle de votre jeu. Nous avons les questions générales de développement du jeu. Et vous pouvez voir qu'on n'a toujours rien ici parce que c'est assez nouveau car j'enregistre ça. Mais plus tard, quand vous entrerez ici, vous remarquerez qu'il y a une énorme communauté de gens qui attendent pour vous
aider et peut-être des gens qui attendent de vous aider. Et c'est très bénéfique d'essayer de résoudre la question des autres. Tu ne croirais pas ce que j'ai appris en aidant les autres. Et vous pouvez voir ici que nous avons plusieurs cours. Ce sont tous les cours que le développement de jeu gamma double m a ou que j'ai créé. Et nous pouvons voir aussi nous pouvons partager des mèmes et ici nous avons des discussions générales sur le jeu, jeux
AAA, je ne sais pas ce que vous aimez jouer. Nous pouvons en discuter ici et le canal social ou la catégorie, et ainsi de suite et ainsi de suite. Je vous recommande donc de rejoindre notre serveur discord. C' est très amusant. On va s'amuser beaucoup là-bas. Et c'est tout. C' est tout ce que je voulais dire sur le serveur Discord. Ensuite, parlons des diapositives de défi, et voici votre diapositive de défis. Donc, chaque fois que vous voyez la diapositive, vous devez mettre la vidéo en pause et faire le défi dessus. C' est une meilleure façon d'apprendre. Et faire est toujours mieux que regarder et mon livre. Donc, chaque fois que vous voyez l'écran de défi, sachez que c'est une excellente occasion de sortir et d'essayer d'aborder la tâche à accomplir. Et la raison pour laquelle j'ai créé ces défis est
que vous tirez le plus grand profit possible des scores. J' ai personnellement essayé plus de 10 cœurs où l'instructeur passe simplement par les mouvements. Et à la fin du cours, j'ai créé un jeu, j'étais l'instructeur, mais je n'ai rien appris et j'ai senti
que je ne pourrais jamais reproduire aucun des défis. Vous donner l'occasion d'essayer, faire une erreur, et de rester coincé en essayant de résoudre le problème. Et même si vous ne pouvez pas le comprendre, si vous n'avez aucune idée de la façon de relever le défi, essayez même, même si vous ne pouvez pas le relever. Quand je terminerai le défi, après que vous aurez essayé, il sera enraciné dans votre cerveau. Et la prochaine fois que vous verrez le problème, vous vous souviendrez des erreurs que vous avez commises et comment ne pas les faire. Encore une fois, croyez-moi, c'est le meilleur à apprendre et nous vous garderons actifs pendant que nous avons travaillé ensemble à travers le jeu. Donc la prochaine chose dont je veux parler est la structure de base. Donc, la section 1, nous allons commencer par tout introduire et mettre en place. Donc, je vais, Nous sommes actuellement sur la section 1. Nous introduisons Unity et Visual Studio si vous ne les avez jamais fait auparavant. Donc, je vais vous emmener à travers le processus de téléchargement de tout. Nous allons parler de la façon d'utiliser les scores, bien
sûr, comme nous le faisons en ce moment. Et nous allons expliquer ce qu'est le contrôle de version. Le contrôle de version est un outil très puissant entre les mains des développeurs de jeux
professionnels et de tout type de programmeurs là-bas. Et créera également notre premier code dans Unity 3D. Dans la deuxième section, nous commençons notre premier petit projet et ce sera le cube magique 3D. Voici où nous présenterons les bases de C-Sharp et Unity 3D. Nous allons créer quelques objets de jeu. Nous allons créer des formes, ajoutera des corps rigides. On parlera de ce que sont les corps rigides. Nous parlerons de ce que sont les collisions et de ce que font les collisions sur chaque objet de jeu. Nous parlerons des bases de C Sharp. Donc, dans cette section, si vous êtes déjà familier comment fonctionne Unity3D et comment fonctionne C-Sharp, alors vous pouvez vouloir la section suivante immédiatement. Si vous avez besoin de construire une fondation en C-Sharp, et c'est le meilleur endroit dont nous parlerons si les conditions, nous allons parler de tableaux, nous allons plonger dans les boucles. Nous allons parler de tout ce dont vous auriez besoin pour continuer le cours et passer à la troisième section, qui est le vaisseau fusée 3D lié à l'espace. Et nous commençons à créer notre grand projet. Et nous commençons par créer notre fusée. Donc, nous allons construire notre fusée à partir de différents matériaux et notre jeu, nous allons commencer avec les formes, ajoutera corps rigide et va commencer à bouger. Notre fusée, tout d'abord, va la pousser et ensuite nous travaillerons sur la rotation de notre fusée. Nous passerons ensuite à la section 4, car bien sûr, notre fusée a besoin d'un espace pour voler, une entité a besoin d'obstacles. Nous allons donc parler de conception de niveau. Nous allons commencer à créer nos premiers niveaux et nous allons y
ajouter des collisions et nous allons commencer à détecter quels types d'obstacles nous heurtons ? Et sont-ils de bons obstacles ? Ou sont-ils peuvent être du carburant. Peut-être qu'il y a des choses sur lesquelles nous devons atterrir, alors nous allons parler de tout ça. Et dans la cinquième section, nous commençons à parler de flux de niveau. Et qu'est-ce que je veux dire par niveau de débit ? Bien sûr, dans la conception des niveaux, nous n'allons pas seulement avoir un seul niveau, nous allons créer plusieurs niveaux et nous avons besoin d'un moyen de passer à travers ces niveaux. C' est là que le flux de niveau entre en jeu. Nous ajouterons, nous utiliserons nos connaissances en C-Sharp pour nous
intégrer à nos niveaux et commencer à progresser à travers eux. Ensuite, nous commencerons nos travaux sur la conception avancée de fusée. Maintenant, nous avons une compréhension de base des niveaux. Nous les traversons. Nous avons notre fusée, mais nous avons besoin de plus, nous devons ajouter plus de flair. Nous devons ajouter plus de puissance à notre fusée. Et c'est là que viendra la conception avancée de la fusée. Et nous parlerons des effets de particules. Nous allons parler d'ajouter plus d'audio. Nous allons plonger plus profondément dans la conception de la fusée et la rendre beaucoup plus intéressante. Dans la septième section, nous commencerons à utiliser la conception de niveau avancé. Nous parlerons plus sur le fonctionnement des niveaux. Nous allons ajouter des obstacles mobiles. Nous allons commencer à faire respirer notre niveau. Nous ajouterons différents types de personnes âgées. Nous allons changer l'éclairage. Et enfin dans la section osseuse, et je ne l'ai pas inclus comme section principale. C' est une section bonus parce que nous avons déjà tous les éléments de base mis en place et nos sept premières sections. Donc, mais la partie de polissage est en fait ajouter plus d'art dans notre gain. Donc nous allons, tout d'abord éteindre notre pétrole. Donc la Section 6, nous allons créer une barre de santé pour notre fusée, mais elle est coincée là et elle n'emménage pas. La section Bonus va polir cela en supprimant le Health Bot et ne le faisant apparaître que lorsque nous en avions besoin, alors nous allons créer un menu principal parce que ce n'est pas une partie cruciale de notre jeu, mais c'est aussi très amusant. Et nous ajouterons, et nous rendrons notre jeu beaucoup plus professionnel. Donc je veux juste te laisser avec ce message. Si vous mettez dans le travail dans les scores et si vous faites de votre mieux en faisant les défis, en suivant très attentivement les étapes, vous sortirez des scores beaucoup plus d'apprentissage. Alors ne perdons plus de temps. Et commençons.
4. Comment travailler en union: Bon, donc bienvenue dans une autre vidéo. Voyons ce qu'est l'unité ? Donc unité est un développement de moteur de jeu multi-plateforme développé par Unity Technologies. Nous utiliserons Unity pour développer notre jeu. Que signifie donc multiplateforme ? Cela signifie que nous pouvons l'utiliser sur différentes plateformes. Et c'est un moteur de jeu. Et quel est le moteur de jeu, c'est un environnement pour nous de développer des jeux, d'ajouter la physique et d'ajouter différentes choses pour créer notre jeu. Alors voyons à quoi
ressemble Unity et je vais vous expliquer quelques choses là-dessus. Donc c'est Unity. Tout d'abord, nous avons cette barre d'outils juste ici au-dessus de tout. Et cela donne accès aux fonctionnalités de travail les plus essentielles. Sur la gauche, nous, il contient les outils de base pour manipuler la vue de la scène et les objets de jeu qu'elle contient. Au centre, nous avons le jeu, la pause et le bouton de contrôle stub. Et les boutons de droite vous donnent accès à Unity Collaboration, Unity Cloud service et Unity compte, et ne vous apporteront pas grand-chose à cela. Sur le côté droit de ceux-ci, nous avons le menu de l'unité de visibilité des couches. Et nous avons l'éditeur, qui fournit des mises en page alternatives pour la fenêtre de l'éditeur et vous permet d'enregistrer vos propres mises en page personnalisées. Donc, si vous n'avez pas la même disposition que moi,
vous pouvez simplement cliquer ici sur la mise en page et vous pouvez choisir la mise en page par défaut. Et c'est le joueur par défaut que nous avons. Ce sont les projets ici, l'inspecteur et tout. Ensuite, nous allons parler de la fenêtre de hiérarchie juste ici. Il s'agit d'une représentation textuelle hiérarchique de chaque objet de jeu et de notre scène. Ainsi, chaque élément de la scène a une entrée dans la hiérarchie. Ainsi, les deux fenêtres sont intrinsèquement liées. La hiérarchie suivante révèle la structure de la façon dont les objets de jeu sont attachés les uns aux autres. Donc ici, nous avons la scène de l'échantillon. Et si nous cliquons dessus, nous avons la caméra principale en dessous. Et si nous ajoutons un autre objet de jeu, il apparaîtra également ici. Et voici l'inspecteur, comme vous pouvez le voir à droite. Ceci est l'inspecteur de fenêtre et il donne, il vous permet d'afficher et de modifier toutes les propriétés de l'objet de jeu actuellement sélectionné. Donc, ne sélectionnez pas un objet de jeu, nous ne voyons rien. Lorsque nous cliquons sur la caméra principale, nous avons ces différentes fenêtres ici, et les mises en page et le contenu du compteur de la fenêtre de l'inspecteur changé à chaque fois que vous sélectionnez un autre objet de jeu ou maintenant nous n'avons pas de objet de jeu différent. Donc on va juste se contenter de la caméra. Suivant. Ensuite, nous avons est cette vue de scène juste ici. Et la vue de la scène vous permet de visualiser et naviguer et de modifier votre vue de la scène vue. Je peux vous montrer une perspective 3D ou une perspective 2D en fonction du type de projet que vous utilisez. Donc, dans les scores seront en utilisant la vue du projet 2D, mais vous pouvez également écrire ici recueillir sur le bouton et il ira 3D. Comme vous pouvez le voir, nous avons cette vue 3D mais nous n'aurons pas besoin, elle ira simplement en mode 2D. Et enfin, je veux parler de la fenêtre du projet ici, qui affiche votre bibliothèque et les actifs qui sont disponibles à utiliser dans votre projet. Ainsi, lorsque vous importez des actifs dans votre projet, ils apparaîtront ici. Donc, par exemple, pour l'instant, nous n'avons pas d'actifs, aurait seulement le dossier scènes. Et à l'intérieur du dossier des scènes, nous avons cet exemple de dossier. Voici donc un aperçu rapide de l'unité et de ce que sont tous ces panneaux et gadgets. Nous allons, bien sûr, les
approfondir au fur et à mesure que nous suivrons le cours. Mais maintenant, je veux parler de la, quelque chose de très important et c'est le Visual Studio. Alors, qu'est-ce que Visual Studio ? Visual Studio est un Microsoft Visual Studio. Il est bien utilisé, il est développé par Microsoft et c'est un IDE. Et IDE est un environnement de développement intégré. Et ce qu'il fait, en fait, si vous me demandez dans Visual Studio, nous
aidera à écrire le code utilisé pour manipuler des objets de jeu dans l'Unité en utilisant quelque chose appelé scripts. Alors, comment utiliser Unity avec Visual Studio ? Nous avons donc besoin d'un moyen pour l'unité et Visual Studio de communiquer. Mais ils ne le font pas simplement. Nous devons y ajouter quelque chose appelé le fichier dot cs, et c'est nos scripts. Et ces scripts, nous prenons ces scripts, nous les attachons à des objets de jeu. Et l'utilisation de ces scripts sera en mesure d'ajouter un comportement à différents types d'objets de jeu. Et nous le verrons très, très bientôt. Alors, allons dans Visual Studio et voyons de quoi il s'agit. Voici Visual Studio. Et peut-être que la première fois que vous l'ouvrirez, vous aurez différents panneaux ici à droite, et différentes fenêtres juste ici à gauche. N' hésitez pas à les fermer tous. Et ne vous inquiétez pas de ce qui se passera ensuite. Bien sûr, vous ne l'aurez pas la première fois que vous démarrez Visual Studio, mais vous le verrez assez tôt. Et je vais juste vous présenter quelques lignes de codes ici. Alors nous allons zoomer un peu. Et ici, en haut, vous pouvez voir que nous utilisons des collections système. Nous utilisons des collections de timbres génériques. Et surtout, nous utilisons le moteur Unity. Qu' est-ce que tout ça ? Alors que ceux-ci sont appelés espaces de noms. Et fondamentalement, ce sont des bibliothèques qui nous donnent la possibilité d'utiliser différents types de manteau. Ainsi, par exemple, le moteur Unity, que nous avons ajouté essayé ici, nous
permet d'utiliser la méthode de démarrage poing et la méthode de mise à jour et différents moteurs pour créer des jeux et le rendre beaucoup plus facile. Et nous écrivons simplement ici en utilisant le moteur Unity. Et cela nous permet d'économiser beaucoup d'or et nous donne toute la bibliothèque à utiliser. Ensuite, nous avons le nom de classe publique. Et c'est le, en fait le ClassName, qui devrait être juste ici. Ce sera le script dont nous avons parlé et il sera attaché à un objet de jeu. Et il englobera tout le code qui va changer le comportement de notre objet de jeu et le comportement
mono est une classe de base et c'est en fait ces deux signifient qu'il hérite du comportement mono, qui lui permet d'utiliser différents types de manipulations, moteur et physique, etc. Et la prochaine chose que nous avons est le début et au-dessus c'est quelque chose appelé les commentaires. Ou chaque fois que vous écrivez du code et ajoutez ces deux lignes ici, il va commenter les choses et les commentaires ne sont pas exécutés. Et le GOP, le manteau, le manteau, le code et ils sont parfaitement sûrs. Alors c'est le début. Démarrer est appelé avant la première mise à jour de trame. Dès que notre jeu commence, la méthode de départ et la portée d'une méthode que nous commencerons à exécuter. Ensuite, nous avons la mise à jour, et la mise à jour est appelée une fois par trame. Donc, chaque image que nous avons dans notre jeu, la mise à jour est appelée. Par conséquent, start est généralement utilisé pour donner les propriétés ou configurations initiales à certains objets. Et la mise à jour est utilisée pour les objets qui peuvent se déplacer ou changer chaque image. Donc, si nous avons une voiture, par
exemple, et
que nous commençons, nous pouvons lui donner la couleur, le nom, la vitesse à laquelle elle peut aller. Une mise à jour va déplacer la voiture, fera le saut de carbone sera faire la voiture aller plus vite, peut-être augmenter sa vitesse. Donc, vous obtenez l'idée de base de Visual Studio, et maintenant il est temps de relever votre défi. Et votre défi est d'aller faire de la masse de visée. Donc, ouvrez l'unité, créez un projet. Et si vous ne savez pas comment créer un projet, nous le ferons dans la prochaine vidéo. Et quand vous aurez fini, après avoir fait de la masse de foin, allez à la vidéo suivante et nous allons faire notre première couche et commencer. Je te vois dans la prochaine vidéo.
5. Écrire votre premier code en C#: Bienvenue, mes collègues développeurs de jeux. Dans cette vidéo, nous allons créer notre premier code et nos premiers objets de jeu. Comme vous pouvez le voir ici, nous avons un objet de jeu appelé Hello World dans notre cœur et notre hiérarchie. Il est présent dans notre scène, même si nous ne le voyons pas très bien. Et nous avons le script ici attaché à lui. Nous avons également créé les critères de script dans notre projet. Et dans la console. Si nous cliquons sur le jeu, nous obtenons effectivement un message qui affiche Hello Michele, qui est moi. Mais dans votre cas, il va afficher votre nom. Je suis donc très excité pour cette vidéo parce que c'est notre première immersion dans le monde de l'unité. J' espère que vous avez apprécié la vidéo et je vous verrai dans un peu. K. Donc la première chose que nous allons faire est d'ouvrir Unity Hub. Et actuellement, vous n'avez pas de projets ici, ce qui changera dans la première chose que nous ferons est de cliquer sur nouveau ici. Et nous devrons choisir un modèle pour notre jeu. Nous allons donc créer un jeu 2D, pas un 3D. Et ce sont des options différentes également pour différents types de projet. Ensuite, nous aurons besoin d'ajouter un nom de projet. N' hésitez pas à le nommer. Ce que vous voudrez sera l'appeler pour l'instant le projet Hello World. Et assurez-vous de choisir un emplacement pour vos projets Unity. Donc, nous allons cliquer sur celui-ci et revenons en arrière et le sauvegarder dans les projets Unity. Alors sélectionnez le dossier et maintenant nous avons un emplacement pour notre jeu. Tu dois le faire. Tout ce que vous devez faire maintenant est de cliquer sur le béton. Donc, cliquez sur Créer et Unity va commencer à créer votre projet. Et je ne vous ennuierai pas avec l'attente ici. Je vais utiliser la magie de l'édition et nous allons simplement sauter dans le projet. Alors, on se voit dans un peu. Bienvenue de retour. J' espère donc que votre projet a également terminé la mise en place. Donc c'est notre scène. Si vous n'avez pas ce genre de vue, comme je vous l'ai dit,
vous pouvez toujours aller à la mise en page et choisir la mise en page par défaut. Et nous aurons la même disposition, tous les deux. Donc, avant de commencer, passons tout d'abord à quelque chose appelé la Console. Et comme vous pouvez le voir, avant même que nous ne commencions quoi que ce soit, nous avons cette fenêtre de console juste ici. Et ce que cela fait, c'est qu'il nous montre les messages. Et nous allons utiliser cette fenêtre de console pour voir les choses qui vont imprimer à partir de notre code. Et si vous ne l'avez pas, vous pouvez simplement aller ici et la fenêtre, cliquez dessus. Et juste au-dessus ici, vous pouvez voir sur le général aura la console, alors cliquez dessus, une fenêtre devrait apparaître et vous pouvez l'ancrer où vous voulez. Je vais l'ancrer juste ici à côté des projets. Dans une autre chose dont je veux parler est dans le, où vous avez enregistré votre projet, je l'ai enregistré dans D, projets
Unity et HelloWorld. Donc, comme vous pouvez le voir, nous avons différents dossiers ici. Nous avons les atouts. Tenez nos scènes et tout ce que nous créons et projetons. Vous pouvez voir les actifs et les actifs du projet ici. Nous avons aussi la bibliothèque qui a créé automatiquement chaque fois que nous entrons dans un projet, nous avons des journaux,
nous avons des paquets ,
nous avons des paramètres du projet , tout cela étant des détails qui ne seront pas trop dans. Et le dossier temporaire, dont nous discuterons plus tard dans le cube magique du jeu. Revenons à Unity. Et ici, nous allons créer notre jupe. Alors faisons un clic droit ici. Et allons dans créer et créer. Nous pouvons réellement créer plusieurs choses, comme vous pouvez le voir, nous allons en faire quelques uns dans notre projet, mais pour l'instant nous allons simplement créer un script C-Sharp. Alors cliquez sur ça. Et avant de faire quoi que ce soit, alors ne fais rien, laisse tout. Vous devez vous assurer que chaque fois que vous nommez un script, vous le faites avec précision car cela provoquera une erreur plus tard si vous voulez essayer de renommer votre script. Assurez-vous donc de le nommer correctement dès le début. Donc, nous allons nommer ce monde de bonjour sans espace et cliquer sur Entrée lorsque vous êtes sûr que vous avez décidé sur le nom du script. Alors cliquez sur Entrée et je vais vous dire pourquoi dans un peu. Comme vous pouvez le voir, nous avons quelque chose ici dans l'inspecteur. Et cela a pris un peu de temps et c'est parce qu'Unity a besoin de compiler le code ici. Et vous pouvez voir le code dans l'inspecteur. Et pourquoi je vous ai dit qu'il est si crucial de s'assurer que le nom du script ici est défini avant de cliquer sur Entrée car il va être le nom de notre classe. Donc, si vous changez le nom de notre script ici, cochez le nom de famille ne changera pas. Et il y aura une erreur où l'unité ou Visual Studio ne
sera pas en mesure de trouver le bon script dans le projet et cela provoquera des erreurs. Donc, pour éviter cela, assurez-vous
simplement que vous nommez votre script correctement et précisément dès le début. Maintenant, que devrions-nous faire ensuite ? C' est très simple. Vous double-cliquez simplement sur Hello World et le Visual Studio devrait s'ouvrir. Et comme vous pouvez le voir ici, c'est
ce que nous avons décrit quelques peut-être dans la vidéo précédente. Alors, qu'est-ce qu'on va faire ici ? Nous allons simplement imprimer quelque chose sur notre console et nous le ferons en stock. Alors allons de l'avant et imprimons. Donc, comme vous pouvez le voir immédiatement, Visual Studio, notre grand ami commence à nous aider et il donne une suggestion pour ce que nous voulons utiliser, ou nous écrivons l'impression et il nous donne la suggestion. Et maintenant, vous pouvez simplement cliquer sur Tab et il le terminera pour vous. Et maintenant, nous ouvrons nos parenthèses et nous pouvons voir que Visual Studio nous aide à nouveau. Et il nous dit que nous devons ajouter un message objet à l'intérieur d'ici. Et ce message d'objet va être une chaîne. On parlera de cordes plus tard. Mais pour l'instant, string est une chaîne de caractères que nous mettons à l'intérieur de ces deux guillemets ici. Alors allons de l'avant et ajoutons ces deux guillemets une nouvelle fois. Et maintenant nous écrivons à l'intérieur de ces deux citations, bonjour monde. Alors, est-ce suffisant ? En fait, non, parce que si vous voyez ici, nous avons la ligne rouge squigggly. Et si nous survolons,
il nous dit qu'il attend un symbole, qui est celui-ci. Et chaque ligne de code en C pointu, vous devez ajouter ce point-virgule ici. Alors, sauvegardez ça. Et maintenant, parce que nous l'avons mis au point, dès que nous commençons notre jeu, ce message devrait être imprimé sur la console. Alors essayons ça. Nous retournons dans Unity et nous entrons dans la console. Mais si nous cliquons sur le jeu, comme vous pouvez le voir, rien n'est affiché sur notre écran. Pourquoi c'est ça ? Parce qu'il ne suffit pas de créer un script, vous devez en fait l'attacher à un objet. Donc, créons un objet. Et comme nous le faisons,
nous entrons simplement dans notre hiérarchie. Nous faisons un clic droit sur ici. Nous pouvons créer un objet de jeu vide. Cliquez dessus. Et maintenant, nous avons un objet de jeu qui va de l'avant, nous pouvons changer le nom de cet objet de jeu. On l'appellera. Appelons ça objet Hello World. Cliquez sur Entrée, et en dessous, vous pouvez voir que nous avons la transformation. Et cette transformation nous indique la position de notre objet de jeu dans le monde. Et ici, nous avons les outils à manipuler. Donc, si vous cliquez sur le tabouret, nous pouvons mettre l'objet vers le haut ou faire glisser l'objet vers le bas, le
prendre à gauche ou à droite et le mettre partout où nous le voulons. Et actuellement, nous ne pouvons pas voir que nous n'avons rien à représenter ou objet de jeu. Nous avons simplement ses ordonnées et elle est transformée. Alors attachons le script de cet objet de jeu. Pour ce faire, il vous suffit de cliquer sur le script et faire glisser dans la hiérarchie et vers l'objet Hello world. Donc, si vous cliquez sur Hello work object ici, vous pouvez voir qu'il a un script juste en dessous de la transformation qui lui est attachée. Et maintenant, si nous cliquons sur jouer dans la console, nous pouvons voir que nous avons bonjour monde. Félicitations, vous venez d'écrire votre premier code et vous venez d'utiliser votre premier objet de jeu pour afficher quelque chose sur la console. Va rake. Et maintenant, c'est l'heure de votre défi. Et votre défi va imprimer le vôtre. Merci. Donc, au lieu de bonjour monde, vous aurez besoin d'imprimer votre propre nom. Alors, changez Helloworld en bonjour. Et au lieu de ces trois points, bien
sûr, ce sera votre propre nom. Je vais vous donner quelques indices. Alors ajoutez votre nom et la taille des points. Enregistrez Visual Studio. N' oubliez pas toujours d'enregistrer Visual Studio nous utilisons le contrôle comme
aller à l'unité et cliquez sur jouer et vérifier votre console. Alors assurez-vous que cela fonctionne. Mettez la vidéo en pause dès maintenant et allez faire le défi. Ow, Kay, bienvenue. Comment tu t'es trompé avec ça ? J' espère que vous avez fait de votre mieux et ce défi. Allons dans Visual Studio. Et au lieu de monde, je vais supprimer ça et je vais mettre mon propre nom, qui est Michel. Alors, bonjour Michelle. Et nous allons juste ajouter une exclamation ou trois points d'exclamation pour l'effet dramatique. Et pour m'assurer que vous avez sauvé votre projet, je supporte un script. Quand vous regardez ici, vous pouvez voir qu'il a un petit astérisque, aussi strict que les chaînes qui lui sont attachées. Et pour enregistrer ce que vous cliquez sur, et cela signifie qu'il n'a pas été enregistré. Donc, quelques maintiennent Contrôle, S, cliquez sur contrôle. Comme vous pouvez le voir que l'astérisque que Trixie disparaît, ce qui signifie que le script a été enregistré, REVEZ dans Unity. Et vous pouvez voir qu'il y a un astérisque juste ici, également à côté de la scène de l'échantillon. Alors, sauvegardez ça. Et maintenant, si nous allons à la console, vous pouvez voir ici que nous avons ce bouton clair. Ou vous cliquez vers le bas ? Vous pouvez voir que nous pouvons cliquer sur Play. Vous pouvez supprimer ça. Sentez-vous libre. Ça n'a pas d'importance. Nous allons simplement le supprimer pour voir les changements qui se sont produits à l'heure actuelle si nous cliquons sur le jeu, nous aurons bonjour Michelle, ou bonjour, quel que soit votre nom en tant que mes collègues étudiants. Et cela est si clair que,
qui s'efforcent à nouveau, cliquez sur jouer. Et Bonjour Michele. Bonjour, mes développeurs de jeux préférés. J' espère que vous avez apprécié la vidéo et je vous verrai dans la prochaine.
6. Section 2 : Cube 2 : Magic Game 2D -Introduction au contrôle de la version: Bonjour tout le monde. Dans cette vidéo, nous allons parler du contrôle de version. Alors qu'est-ce que c'est, comment cela fonctionne et pourquoi nous en avons besoin, va également télécharger l'arbre source, qui est celui-ci, une interface utilisateur graphique qui nous aidera et rendra la vie beaucoup plus facile ? Notre objectif est d'atteindre un point où nous avons tout mis en place et prêt à l'emploi. Alors ne perdons plus de temps et nous allons entrer. Contrôle de version. C' est difficile à apprendre, c'est encore plus difficile à enseigner. Mais je ne peux pas vous dire à quel point il est important que vous appreniez cette compétence. Et surtout si vous cherchez à devenir un développeur de jeux professionnel. Alors qu'est-ce que c'est ? Qu' est-ce que le contrôle de version ? En gros, c'est un système qui est responsable de la gestion des modifications apportées à vos programmes informatiques. De toute façon, le contrôle de version est un moyen pour nous d'enregistrer l'historique de notre projet. Nous avions besoin de contrôler la version de notre projet et d'avoir une sauvegarde pour chacun d'eux. qui signifie que cela nous aide à prendre des mesures risquées dans notre projet et à éviter de casser l'ensemble du projet. Pourquoi l'utiliser ? Eh bien, nous allons l'utiliser pour nous souvenir des versions
précédentes de notre jeu et avoir plus de flexibilité à expérimenter. C' est particulièrement utile quand il s'agit de créer des jeux, car le développement de jeux nécessite beaucoup d'expérimentation. Ce que nous allons utiliser est un système de contrôle de version appelé Get. Il y a d'autres moyens, mais celui-ci fonctionnera parfaitement pour nous. Et enfin, nous allons utiliser une interface graphique qui facilite notre vie, appelée arbre source. Nous pouvons aussi avoir un cheval en ligne, mais nous ne serons pas hébergés pour l'instant. Maintenant, la première chose que vous devez faire, vous devez aller de l'avant et télécharger l'arborescence des sources. Il suffit d'écrire la source trois ou d'aller à la source trois, ABC.com, ou d'écrire le téléchargement de l'arbre source sur Google. Et vous devriez venir à cette page juste ici. Vous pouvez télécharger pour Windows et il est également disponible pour votre Mac OS. Lorsque vous avez terminé le téléchargement, vous, vous devriez avoir ce fichier d'installation juste ici. Double-cliquez dessus et commencez l'installation. Et quand vous arrivez, vous devriez arriver à ce point juste ici, où vous avez la source trois installé. Il suffit de cliquer sur Accepter ici. Et puis il devrait vous conduire à la diapositive ou à la fenêtre suivante, qui consiste soit à créer un compte. Donc, soit vous utilisez un compte existant, soit vous pouvez aller chez mon adolescent et créer un compte. Maintenant, si vous avez déjà un compte Google, vous voulez vous y connecter. Il suffit de cliquer sur Utiliser Existent peut compter et créé en utilisant Google, ou vous pouvez aller et créer un nouveau compte de mon adolescent personnellement, J'en ai fait un en utilisant Google Gmail. C' est beaucoup plus facile et ils ne vous envoient pas de courrier électronique. La prochaine chose que vous devez faire. Allez dans se connecter à un compte qui, comme nous l'avons dit, nous allons sauter pour l'instant. Et enfin, lors de l'installation, il peut arriver à cette question ici où il ne peut pas trouver ou localiser le get. Donc, si vous n'avez pas déjà installé le get, il suffit de cliquer sur télécharger une version intégrée de Git et il le téléchargerait pour vous. Et enfin, comme dernière étape, il peut vous demander Mercurial, que nous n'utiliserons pas. n'y a pas de mal à télécharger. Il, ne sera tout simplement pas l'utiliser dans ce cours. Il suffit de cliquer, je ne veux pas de Mercurial. Oh, ok, donc quand tu finis l'installation, une fenêtre comme celle-ci devrait t'apparaître le plus. Si vous n'avez pas cette fenêtre, vous devriez cliquer sur Créer ici, et cette fenêtre apparaîtra pour vous. Donc, voici où nous créons notre référentiel, qui est la partie la plus importante de tout
le référentiel des systèmes de contrôle de version est la sauvegarde de notre projet. Donc, si vous cliquez ici sur Parcourir, vous pouvez réellement trouver le chemin de destination. Donc, si nous allons dans la navigation, cliquez sur D, et regardez dans nos projets Unity, vous pouvez voir que nous n'avons qu'un seul projet ici, qui est bonjour monde que nous avons fait dans la section précédente. Donc, ce que nous allons faire maintenant, c'est que nous devrons aller dans Unity Hub et créer un nouveau projet. Et ce nouveau projet, vous êtes simplement cliquer ici sur nouveau choisir 2-D. Et ce sera le projet de notre section actuelle, qui est magique q,
k, ou cube de jeu magique. Ok, tu peux le nommer comme tu veux. Mais la chose la plus importante est que vous vous souvenez de l'emplacement. Assurez-vous donc de vous souvenir de l'emplacement de votre projet pour y accéder via l'arborescence des sources. Allez-y et cliquez sur Créer. Et maintenant, nous attendrons le projet Unity. Gaye, bienvenue de retour juste sauter tout
le processus d'installation en utilisant la magie de l'édition. Et maintenant, nous sommes de retour dans Unity et nous avons notre configuration de projet, qui est Magic Game Cube. Et maintenant, ce que nous devons faire, c'est créer un référentiel pour cela. Revenez donc dans l'arborescence des sources, cliquez sur Parcourir, et recherchez le projet. Vous devriez vous rappeler quand, où vous l'avez mis et si vous allez dans vos projets Unity ou où vous l'avez enregistré, vous devriez avoir. Maintenant, jeu magique Cube, suffit de cliquer dessus et de cliquer sur le dossier de sélection. Maintenant que vous voyez le nom du référentiel comme le cube de jeu Magic. Et vous avez la possibilité ici de choisir Git ou Mercurial. Nous allons choisir obtenir. Et voici où vous pouvez créer un référentiel sur compte. Comme nous l'avons dit, nous n'accueillerons rien. Il suffit donc de le décocher, d'obtenir et de cliquer sur Créer. Ok, il vous posera un problème avec le répertoire de destination. Ne vous inquiétez pas pour ça. Il suffit de cliquer sur Oui. Nous souhaitons continuer. Excellent. Donc maintenant, comme vous pouvez le voir, nous avons des choses bizarres par ici et nous ne sommes pas sûrs de ce qui se passe. Nous avons ces actifs, ces bibliothèques et ainsi de suite, et une longue liste de choses qui sont appelées fichiers sur scène. Tu n'as pas besoin de t'inquiéter pour ça maintenant. Il suffit d'aller de l'avant télécharger la source trois et de l'installer. Et c'est en fait votre défi, qui est le téléchargement et les configurations ou S3. Alors allez-y et téléchargez l'arborescence source. Allez-y et installez et configurez tout. Et je te verrai dans la prochaine vidéo.
7. Configuration du fichier .gitignore: Bienvenue à tout le monde. Dans cette vidéo, nous allons ignorer certains fichiers. Et nous allons apprendre comment obtenir tous les fichiers dont nous avons besoin pour ignorer et le mettre dans un dossier appelé Git ignore. Nous allons également ajouter un cube. Oui, non, en fait c'est un carré magique, mais nous appellerons ce cube magique, ajouterons à notre scène, et nous créerons notre premier commit. Alors commençons. Maintenant, si nous cliquons sur notre projet, il s'ouvre assez vite, relativement vite. Et pendant que nous, d'accord, donc maintenant c'est ouvert. Et si nous allons à notre fichier source, nous pouvons voir que nous avons ce fichier temporaire ici et nous avons ce fichier de bibliothèque juste ici. Alors allons-y et fermons le projet. Pour plus près, nous pouvons voir que le dossier temporaire disparaît. Et si vous supprimez le dossier de la bibliothèque, vous pouvez toujours ouvrir le projet et unité reconstruit réellement la bibliothèque. Vous pouvez essayer ça à la maison. Ne vous inquiétez pas, c'est complètement sûr. Library contient des informations mises en cache qui aident Unity à ouvrir le projet plus rapidement. Mais le problème est que nous n'avons pas besoin d'enregistrer cette bibliothèque dans notre dépôt. Comme vous pouvez le voir ici, nous avons beaucoup de fichiers mis en scène arment des
fichiers sur état qui sont actuellement flux de la bibliothèque et ils sont inutiles. Donc, ce que nous voulons faire, c'est que nous voulons les ignorer chaque fois que nous mettons en scène nos fichiers. Pour ce faire, il suffit de cliquer avec le bouton droit de la souris sur l'un d'entre eux. Et vous pouvez voir que nous avons cette option ignorer ici. Si vous cliquez dessus, nous devons ignorer le nom exact du fichier. Ignorer tous les fichiers avec cette extension. Ou nous pouvons ignorer tout sous une bibliothèque, et c'est ce dont nous avons besoin. Il suffit donc de cliquer sur ce bouton et de cliquer sur OK. Et maintenant toute notre bibliothèque, tout sous Bibliothèque est ignoré. Et si vous faites défiler vers le haut, vous pouvez voir que nous avons un dossier ici, un nouveau dossier que ce point git ignore ce qui s'appelle gitignore. Et vous pouvez réellement double-cliquer dessus et il s'ouvrira dans un bloc-notes, vous pouvez réellement accéder aux informations. Et ici vous pouvez voir que nous avons une bibliothèque. Et ce fichier gitignore contient tout ce qui sera ignoré chaque fois que nous créerons notre dépôt. Maintenant, une autre chose que nous devons prendre en compte est que nous allons ignorer beaucoup d' autres fichiers qui sont inutiles et qui ne prendront que plus d'espace et notre dépôt. Et comment avons-nous trouvé tous ces fichiers ? Eh bien, heureusement, nous avons quelque chose qui s'appelle un fichier dot git ignore que quelqu'un a créé sait déjà ce que nous devrions ignorer. Et tu peux trouver ça. Si vous allez simplement dans Google et ici, 5p et Git ignorent l'unité et ces résultats de recherche devraient apparaître. Il suffit de cliquer sur celui qui se trouve sur GitHub et il devrait être le plus récent. Ça devrait vous emmener à une fenêtre qui est juste comme ça. Alors faites défiler vers le bas et ici vous pouvez voir tout ce dont nous avons besoin pour ignorer et ajouté à notre fichier d'ignorer point. Il suffit donc de mettre en évidence tout en ceci. Sélectionnez Tout, cliquez sur Copier ou tout simplement Ctrl-C. Revenez à notre bloc-notes ignoré enseigné, sélectionnez tout et collez. Et maintenant, nous avons r dot ignorer le fichier mis en place. Il suffit d'enregistrer cela, utilisaient le contrôle S. Et maintenant tout dans le fichier d'ignorer point a été enregistré. Sortons de ça. Et maintenant, si nous cliquons sur Git ignorer, nous pouvons voir que tous nos fichiers ont été enregistrés. Reprenons rapidement les étapes à nouveau. Donc, la première chose que vous devez faire est de trouver un fichier ici sous Bibliothèque et faites un clic droit dessus, allez à ignorer, et cliquez sur, Ignorer tout en dessous. Mais ici, il devrait être Bibliothèque. Lorsque vous avez fini avec cela, allez dans Google, recherchez Git, ignorez l'unité. Cliquez sur le premier résultat de recherche qui provient de GitHub. Bien mieux. Allez dans GitHub et vous devriez trouver ce fichier. Il suffit de copier tout cela. Retournez dans l'arbre source, sélectionnez le fichier gitignore ici et collez tout à l'intérieur de celui-ci et vous devriez être fait. La prochaine chose que nous allons faire est de créer notre premier complet. Alors comment on fait ça ? Allez dans nos fichiers sur scène, qui devraient être ici, et cliquez sur scène. Tout ça va attendre juste un peu. Et maintenant, tous nos dossiers sont mis en scène. Pour continuer, nous devons nommer ce commit. Et par courtoisie pour notre projet, nous commençons toujours par notre engagement initial en le nommant. Commentaire initial un peu anticlimactique. Mais chaque fois que vous voulez nommer un commit, il doit refléter ce que vous devez refléter les modifications que vous avez apportées à votre projet. Cliquez donc sur Commit. Et maintenant nous avons ces branches ici, et nous avons la branche principale, et c'est notre engagement initial. Excellent. Maintenant, nous avons une sauvegarde de notre projet. Donc, quels que soient les changements que nous
apportons à notre projet, nous pouvons toujours revenir à notre engagement initial. Et si nous avons cassé le projet, nous pouvons simplement le réparer avec un clic de souris. Alors la prochaine chose est votre défi. Votre défi consiste à configurer le fichier dot git ignore. Vous devez donc créer votre premier projet 2D dans Unity Hub. Vous devez créer un référentiel et une arborescence source pour le projet. Vous devez ignorer tous les dossiers de bibliothèque et créer votre premier commentaire. Alors allez-y et faites ça. Et je te verrai dans un peu. Ok, donc bienvenue. Ici, nous entrerons dans notre cube magique, un projet. Allons-y et allons là-dedans. Attendez qu'elle s'ouvre. Ça devrait s'ouvrir assez vite. Ok, donc allons de l'avant et faisons quelque chose ici, va simplement dans nos actifs ici et nous allons peut-être créer quelque chose. Voyons ce que nous devrions créer des sprites de CO2. Et créons simplement un carré. On appellera ce carré de queue magique. Et maintenant, nous allons simplement le glisser dans notre scène. Et maintenant, nous avons un cube magique au milieu de notre scène. Si nous cliquons sur w, qui
change, change l'une des clés ici, nous pouvons simplement soulever cela et régler dans la position 0 ou aller de l'avant et réinitialiser la transformation et la mettre juste ici. Contrôlez S pour tout sauver. Et maintenant, si vous revenez en arrière et l'arbre source, vous pouvez voir que nous avons des modifications non validées. Cliquez donc sur les modifications non validées. Vous pouvez voir un des fichiers sur scène que nous
avons quelque chose que nous avons ajouté un gestionnaire d'actifs cube PNG ici.me est quelque chose que l'unité utilise et il a été ajouté et nous avons fait quelques modifications à la scène d'actif, exemple de scène. Alors mettez en scène tout. Et maintenant, nous pouvons cliquer ici sur commit dans le coin supérieur gauche. On appellera ça ajouté la queue magique. Cliquez sur Commit. Et maintenant tout a sauvé GO en maître. Et vous pouvez voir que nous avons un commit initial et nous avons ajouté le cube magique. Excellent travail. Je sais que ce n'est peut-être pas très cool, mais croyez-moi, c'est une compétence fondamentale pour quand vous devenez un développeur de jeux professionnel. Et je te verrai dans la prochaine vidéo.
8. Impression à l'aide de Debug.Log(): Bienvenue à tout le monde dans une autre vidéo étonnante. Dans cette vidéo, nous allons imprimer des choses sur notre console,
mais pas utiliser l'impression, mais en utilisant l' horloge de point de débogage, ce qui nous permettra d'ajouter des avertissements et des erreurs. Et nous le ferons en utilisant un script que nous avons créé dans notre projet. On va l'ajouter à notre cube magique. Donc, comme vous pouvez le voir un inspecteur, nous avons ce script attaché à lui en ce moment et créerons du code qui est très effrayant, mais pas trop. Et enfin nous engagerons notre projet. Alors commençons. Ok, donc la première chose dont vous avez besoin est cette fenêtre de console. Si vous ne le voyez pas encore, vous pouvez simplement aller dans la fenêtre et aller dans notre alors, donc c'est en général, console. Il suffit de cliquer dessus et vous devriez obtenir cette fenêtre de console. Il sera ici quelque part. Vous pouvez simplement inscrire à côté de notre projet. Ok, super. Si vous regardez de près, vous pouvez voir que nous avons un effondrement clair et clair. Donc clair ce qu'il fait, c'est qu'il efface toute notre console. Je l'ai vérifié clairement sur le jeu. Nous avons coloré, ce qui signifie que lorsque nous avons souffert tous les messages qui sont les mêmes, il est simplement recueillir, les effondre en un seul message. Et ici, à droite, nous pouvons voir que nous avons trois boutons que nous pouvons vérifier et décocher. L' un d'eux est les messages, le milieu est les avertissements. Et à droite, nous avons les erreurs. C' est les messages les plus effrayants qu'on puisse avoir. Ok, super. Ensuite, nous allons créer notre script C-Sharp. Vous en êtes déjà familier. Alors allez à notre projet, faites un clic droit. Allez dans Create et cliquez sur C sharp script. Chaque fois que vous voulez nommer quelque chose comme ça, assurez-vous de le nommer correctement la première fois que nous en avons parlé. Alors, comment allons-nous le nommer ? Nommez simplement ce Q. Cliquez sur entrer. Maintenant, nous avons notre script cube. Excellent. Pour ouvrir le sous-marin en double-cliquant dessus. Et Visual Studio va compiler, en attendant. À tout moment maintenant, des solutions de chargement. Et on devrait tout avoir dedans. Oh, ok, super. Donc, comme vous pouvez le voir, nous avons déjà du code et ici nous ne voulons pas nous inquiéter à ce sujet. Ce que nous allons faire, c'est d'entrer dans notre méthode de départ. Et à l'intérieur, nous allons imprimer sur notre console. Maintenant, si vous êtes passé par la première section, vous pouvez vous rendre compte que nous avons utilisé print, mais maintenant nous allons utiliser le débogage. Et comme toujours, Visual Studio est extrêmement utile. Donc DBA Debug, cliquez sur Tab, il le terminera pour vous. Dot log et ouvrez les crochets. Et comme, comme je l'ai dit. Auparavant, nous avons utilisé l'impression, mais maintenant nous utilisons t Bach. Pourquoi c'est ça ? Eh bien, le débogage nous donne plus de flexibilité et de contrôle. Et techniquement, c'est du beurre, et ça nous donne de meilleures habitudes pour le codage futur. Alors, quel est le message que nous allons écrire ici ? Le message sera bonjour, tout le monde. Tout le monde. Je suis en train d'imprimer à partir de Debug. Ok. Mettez ce point-virgule là, et maintenant nous le sauvegardons, mettons un Control-S, retournez dans l'unité. Mais maintenant, si nous cliquons sur le jeu, nous ne devrions rien voir. Et pourquoi c'est ça ? Nous ne voyons r carré et la scène, mais rien n'est d'impression à la console. C' est parce qu'on n'a pas attaché notre script à quoi que ce soit. Allons-y et attachons-le à notre cube magique. Sauve ça. Et maintenant, quand nous cliquons sur jouer et aller dans la console, nous devrions avoir Bonjour tout le monde. Je suis en train d'imprimer pour déboguer. Excellent. D' accord. Maintenant, c'est l'heure de votre défi. Et vous devrez ajouter quelques lignes. Donc, la première chose, vous devez ajouter deux messages qui s'affichent sur la console en battant aussi, le joueur pour appuyer sur une certaine touche fléchée. Ensuite, vous devrez ajouter un message d'avertissement. Et enfin, vous devrez ajouter un message de journal d'erreur. Et l'heure. Je vais vous aider un peu. Si nous allons dans Visual Studio, je vais vous donner un coup de main. Donc, si nous cliquons sur le journal de points de débogage, nous pouvons voir que nous avons erreur de journal et avertissement de journal. Alors allez-y et relevez ce défi. Bienvenue de retour. Comment as-tu fait ça ? Ce n'est pas un défi très difficile, mais ça pourrait être difficile si vous commencez juste. Donc, créons notre journal de points de débogage. Et nous allons changer cela ici, dira au joueur. Si vous appuyez sur la flèche vers le haut, vous sauterez. Et en dessous, nous avons raison. Si vous appuyez sur la flèche droite, vous déplacerez O, k. et maintenant nous allons devoir créer un avertissement. Alors allons de l'avant et faisons l'avertissement de l'horloge de conversation. Et simplement lorsque vous ouvrez les crochets, vous pouvez cliquer sur n'importe quoi. Si vous appuyez sur l'espace, rien ne se passe. Et enfin, notre erreur, qui sera une erreur de journal de points de débogage. Et à l'intérieur,
que devrions-nous écrire ? Si vous cassez le clavier, rien ne se passe. Tu pleures. Cas. Sauve cette touche, clavier, clavier, ok, rien ne se passe. Tu pleures, sauve ça, retourne à Unity. Tout devrait être compilé et si on clique sur jouer, bonjour, ok, super. Donc, si vous appuyez sur la flèche vers le haut, vous sauterez. Si vous appuyez sur la flèche droite, vous vous déplacez. Et nous avons un avertissement que si vous appuyez sur l'espace, rien ne se passera et une erreur. Si vous cassez le clavier, rien ne se passe. Tu pleures. Super, j'espère que ça vous a plu. Oh, et un dernier pas. Cliquez sur jouer, enregistrer tout, aller dans la source trois parce que nous avons des modifications non validées. Je ne pense pas que je vais faire ça à chaque vidéo, mais vous devriez savoir que chaque fois que nous apporterons des changements à notre jeu, nous devrions toujours engager DM Stage tout. Cliquez sur Commit ici à l'extrême gauche. Et comment devrions-nous appeler ça ? Nous appellerons ceci en ajoutant un script avec la masse, le point en vrac Log Insight. Ok, super. Commettez ça. Et nous l'avons dans notre branche principale. Et je te vois dans la prochaine vidéo.
9. Variables 101: Bienvenue à tout le monde dans une autre vidéo. Aujourd'hui, nous allons en apprendre davantage sur les variables. Nous allons donc apprendre quelles sont les variables. Nous allons apprendre comment nous déclarons ces variables. Et nous allons apprendre comment ces variables rendent notre code plus flexible. Donc, comme vous pouvez le voir ici, nous avons différents types de messages parce que nous avons intégré ces variables dans tout l'arriéré. Et ici, dans notre code, nous voyons que nous avons trois nouvelles variables. L' un est entier et le second est une chaîne. Et nous avons aussi un Lope. Et nous avons ajouté ces variables dans notre journal de points de débogage. Alors ne perdons pas de temps et commençons. Donc, les variables, quelles sont les variables ? On peut penser à des variables comme des boîtes. Vous avez une boîte que nous appelons des vies, et nous voulons mettre des informations ou quelque chose à l'intérieur de cette boîte pour la tenir. Donc on a mis un trois à l'intérieur. Et quel est ce trois alors que c'est un nombre entier. Comment écrire cela dans le code ? Eh bien, nous avons cette façon de l'écrire. C' est un N2, ce qui signifie qu'un entier vit égal à trois. Mais qu'est-ce que ça veut dire ? Eh bien, tout d'abord, nous avons le type de la variable. Nous avons le type ici est entier. Nous avons le nom de notre variable, qui est Lives. Et par, alors que c'est une tradition commune d'encoder, si vous voulez, de nommer la variable où la première lettre ne sera jamais b majuscule, et tous les autres mots à l'intérieur du nom de la variable seront capitalisés. Et enfin, nous avons les données et les données devraient refléter le type que nous leur donnons. Alors, quels autres types avons-nous ? Nous avons des variables flottantes, par exemple, si nous voulons parler de vitesse et de vitesse a peut être 4.8. Et la façon dont nous l'écrivons comme nous écrivons la vitesse de float et 4,8 F, chaque fois que nous voulons faire une variable float, nous ajoutons à la fin de celui-ci. Et puis nous avons Booléen. Et comme vous pouvez le voir ici, nous l'avons nommé est que nous sommes le premier mot de n'est pas capitalisé, tandis que le second est capitalisé. Et le bool ou un booléen peut être soit vrai, soit faux. Et nous avons aussi une variable String. Et chaîne de valeur signifie qu'il a, c'est une chaîne de caractères. Ou par exemple, ici nous avons la boîte appelée mon nom, comme vous pouvez le voir aussi, le deuxième mot est en majuscule. Nous écrivons le nom de la chaîne est égal à Michelle, ce qui est moi. Et nous le mettons à l'intérieur d'une boîte, et maintenant nous avons une variable de parsemer. Ok, super. Alors, comment allons-nous traduire ça dans notre code personnel ? Nous allons rendre ça, eh bien,
ce qui se passe en fait, c'est que les objets de valeur rendent notre code plus flexible. Ils nous aident. Manipulez le code d'une meilleure manière. Démontrons ça. Retournons en arrière. Revenons et à notre Visual Studio, et allons de l'avant et créer un précieux. Donc, tout d'abord, si nous créons une variable à l'intérieur de start ici, nous ne pouvons l'utiliser qu'à l'intérieur de start, mais si nous l'écrivons en dehors de notre méthode de démarrage, nous pouvons l'utiliser partout où nous le souhaitons dans notre code. Alors faisons ça d'abord. Alors, quelle variable devrions-nous utiliser ? Eh bien, créons une variable entière. Donc, disons que nous avons un entier, nommera ce nombre entier de fois, et nous lui attribuerons une valeur de, disons cinq. Ok, sauve ça. Et comme vous pouvez le voir, c'est noir et blanc ou c'est un peu transparent. Cela signifie que nous n'avons toujours pas utilisé et maintenant nous allons l'utiliser. Donc, si nous allons de l'avant et déboguer le journal de points, il dit que si vous appuyez sur la flèche droite, vous allez bouger. Alors allons-y et ajoutons-y quelque chose. Pour ajouter une variable, nous faisons simplement ce qui suit. Cliquez sur l'espace, fermez le support ou la petite colonne ici. Et puis nous écrivons plus, nous écrivons numéro et Visual Studio. Comme toujours, c'est notre meilleur et nous aide simplement à cliquer sur l'onglet aux finitions, et nous sauvegardons cela. Et maintenant, nous avons une variable à l'intérieur de notre débogage. Voyons ce qui se passe et les visuels. Je veux dire, à Unity. Allons de l'avant et effacez tout cela et cliquez sur jouer. Et comme vous pouvez le voir dans notre message, si vous appuyez sur la flèche droite 5, vous vous déplacerez. Nous aurions dû ajouter cinq fois, mais vous avez la photo. Alors maintenant ajoutons une variable de chaîne. Alors allons de l'avant et cliquez ici. String nommera ce nom du KI. Et notre chaîne sera, disons l'espace, l'espace, l'espace. Et maintenant, nous voulons l'ajouter à l'avertissement par exemple. Donc, au lieu d'écrire de l'espace ici, va simplement ouvrir ceci et le fermer de l'autre côté, non ? Plus et nom de la clé. Et puis un autre plus. Et maintenant, nous avons une variable de chaîne à l'intérieur de notre avertissement de journal. On sauve ça, on retourne dans Unity. Et quand nous cliquons sur le jeu, nous devrions voir ici que c'est de l'espace. Eh bien, ce n'était pas très utile parce que nous ne savons pas si ça marche. Alors changeons ça de l'espace deux. Et rendons cela aussi ou capitalisé, sauf cela, retournons dans l'Unité. Cliquez sur jouer et cela devrait changer pour entrer. Et ça l'a fait. Donc, vous pouvez commencer à voir à quel point l'utilisation flexible de la variable rend notre code. Donc, au lieu d'aller chercher chaque nom, nous pouvons simplement ajouter une variable et la changer du haut et toutes les utilisations ultérieures de celle-ci et notre code changera. Alors quoi maintenant ? Eh bien, je pense que vous savez, parce qu'il est temps de relever votre défi et votre défi est de créer votre propre variable. Donc, vous devez créer une variable de type chaîne et l'utiliser à l'intérieur du, à l'intérieur du debug.org, ce que nous avons déjà fait. Alors allez-y et faites votre propre variable. Nous allons créer une variable de type entier et l'utiliser dans l'un des avertissements. Et enfin, nous allons créer un flotteur et l'utiliser à l'intérieur des journaux d'erreurs. Alors arrêtez la vidéo dès maintenant et partez, essayez de faire de votre mieux. Ne vous inquiétez pas de tout gâcher. C' est pourquoi nous avons le contrôle de version. Je te vois dans une seconde. Kay, bienvenue. Alors comment as-tu pu faire ça ne devrait pas être trop dur. Alors allons-y. Nous avons créé notre chaîne, nous avons créé notre entier. Maintenant, il est temps pour nos variables flottantes. Alors allons de l'avant et créons un flotteur. Comment devrions-nous appeler ça ? Nous allons appeler cela à une vitesse, appellera simplement cette vitesse. Vitesse de rupture. Et nous ferons cette valeur 4 ou le poids fera ce 6.94. Oh, ok, super. Et j'ai fait une erreur ici. Ça devrait être 6.94. Ok, alors allons-y et ajoutez-le ici et notre erreur de journal de points de débogage. Donc, si vous cassez le clavier, ça va regarder ici à une vitesse de, ajoutons simplement ceci. Et que devrions-nous écrire ici ? Vitesse de rupture. Cliquez sur un autre plus. Et maintenant, si nous retournons dans Unity, collectionnons sur Play, il devrait nous dire que si vous cassez le clavier à une vitesse de 6,94, rien ne se passe. Tu pleures. J' espère que vous avez apprécié la vidéo. Je sais que les variables et les messages dans le journal de débogage n'ont pas beaucoup de sens en ce moment, mais vous le verrez plus tard. Ce sera très important. Je te vois dans la prochaine vidéo.
10. Responding à l'entrée des joueurs: Bienvenue, mes collègues développeurs de jeux. Dans cette vidéo, nous allons répondre à l'entrée de notre lecteur. Et cela arrivera. Comment bien cliquer sur jouer en ce moment nous ne voyons pas messages
ennemis jusqu'à ce que nous appuyons sur la flèche vers le haut. Il donne, il nous donne un message qui nous dit vers le haut la touche fléchée a été pressée. Et si nous appuyons sur la flèche gauche nous dit rire, ok, a été pressé, flèche
droite et flèche bas,
et nous l' avons fait en utilisant, en utilisant une règle de code magique. Très effrayant, mais ne vous inquiétez pas. Je vais vous emmener étape par étape. Et en fait, dans cette vidéo, tu vas le faire, pas moi. Alors commençons. Oh, d'accord, comme le titre de cette vidéo l'indique, nous allons recevoir les commentaires de notre joueur. Et pour cela, nous allons utiliser, par exemple, la flèche vers le haut, la flèche droite ou la flèche gauche. Et sur cette base, nous allons imprimer quelque chose sur notre console. Mais dans cette vidéo, on va faire quelque chose de différent. Parce que mon but dans ce cours n'est pas de vous montrer comment créer un jeu. Je veux que tu sois un expert en résolution de problèmes. Donc dans cette vidéo, je vais vous dire le problème que nous avons. Et je vais prendre, vous prendre étape par étape sur la façon dont je règle habituellement mes problèmes. Donc la première chose que nous allons faire est de penser au problème. Donc, le principal problème est que nous devons obtenir l' entrée de
notre joueur à partir d'une certaine touche qu'il a pressée. Il ou elle presse bien sûr. Donc, les mots-clés pour rechercher notre entrée et la clé. Et chaque fois que nous faisons face à quelque chose que nous ne connaissons pas, Unity a un excellent site de documentation. Donc nous pouvons réellement Googler. Donc, nous allons à Google et nous écrivons simplement entrée. Unity obtiendra tous ces résultats de recherche. Mais ce que nous recherchons est la documentation qui scripte l'unité d'entrée API. Cliquez dessus. Cela nous amène à cette documentation. Donc, nous voyons que nous avons des entrées, nous avons la scription. Vous pouvez toujours lire toute la documentation, mais bien sûr, la diriger, la lire plus tard. Vous n'avez pas besoin d'être précis dans les moindres détails, juste un coup d'œil pour voir ce qu'il a. Alors que nous faisons défiler vers le bas et nous savons que nous avons besoin d'une clé qui nous dira quelle touche le joueur a appuyé. Nous pouvons voir que nous avons plusieurs méthodes statiques ici. Et l'un d'eux est appelé get C0, qui renvoie un vrai tandis que l'utilisateur maintient enfoncé la clé identifiée. Maintenant, comme nous l'avons dit, notre problème est, ne consiste pas en un joueur qui tient mal. Nous voulons seulement retourner quelque chose ou obtenir une réponse du jeu, de nous, du jeu. Chaque fois qu'un joueur clique ou appuie sur un bouton ne tient pas enfoncé. Donc, si nous lisons ci-dessous, nous pouvons le voir. Retourner true pendant le cadre pour l'utilisateur commence à appuyer sur la touche identifiée par le nom. Ça ressemble à quelque chose qu'on pourrait utiliser. Donc, nous cliquons sur obtenir keydown et il nous amène encore à i une autre documentation Unity. Et voici où nous commençons à lire notre description, qui dit qu'il retourne un vrai pendant le cadre, l'utilisateur commence à appuyer sur le bas identifié par le nom, caret. C' est ce dont vous avez besoin. Et même si vous ne savez pas comment le coder,
si vous faites défiler un peu vers le bas, vous pouvez voir que nous avons plusieurs exemples de cela. Et ici, nous avons cet exemple incroyable qui nous dit qu'ils mettent réellement ce get Qi Dao à l'intérieur de Update et en utilisant quelque chose de bizarre, qui est un if avec quelques parenthèses et je ne sais pas ce que c'est. C' est tellement bizarre, c'est si difficile. Ne nous ennuyons pas avec, copions simplement ceci. Donc nous allons copier ça. Et bien sûr, nous allons vous expliquer si les conditions plus tard. Et nous retournons dans notre Visual Studio. Et comme ils nous l'ont dit dans l'exemple, nous allons le coller à l'intérieur de la mise à jour. Oh, ok, super. Donc un petit x, je fais une petite explication de ce que nous faisons réellement ici. Donc, si la condition fonctionne, comme il est dit, si quelque chose à l'intérieur de cet endroit ici, à l'intérieur de ces deux crochets est vrai, nous exécuterons n'importe quel code à l'intérieur de ces deux crochets bouclés. Ne vous inquiétez pas si les conditions, si vous êtes nouveau pour eux, les
expliqueront plus en détail dans les vidéos ultérieures. Mais pour l'instant, collez ceci dans la mise à jour, enregistrez-le, et revenons dans Unity. Cliquez sur jouer. Maintenant, nous appuyons sur la barre d'espace. La touche Espace a été pressée, pressée, pressée et pressée. Oh, ok, tarif fille. Mais comme nous l'avons dit, nous ne cherchons pas l'espace. En fait, nous cherchons la flèche clé. Alors, comment allons-nous faire ça ? Eh bien, nous espérons que notre bon ami Visual Studio vous aidera et il le fera. Donc, si nous double-cliquez ici sur l'espace et supprimez-le, et supprimez le petit point. Et si nous cliquons à nouveau, comme nous le voyons, cela nous donne
beaucoup, beaucoup d'options. Alors, qu'est-ce qu'on cherche ? On cherche la flèche vers le haut. Alors écrivons Arrow. Et voilà. Il nous donne toutes les options que nous pouvons utiliser. Et l'un d'eux est la flèche vers le haut. Donc, il suffit de cliquer sur l'onglet et maintenant cela devrait fonctionner lorsque nous appuyons sur la flèche vers le haut. Donc, supprimons ceci et en fait, au lieu de l'espace, nous écrivons flèche vers le haut. Oh, non, non. Excusez-moi. Alors, sauvegardez ça. Retournons à Unity. Retournez dans Unity, effacez tout ça et cliquez sur jouer. Attendez qu'il se compile. Et maintenant, si on appuie sur la flèche vers le haut, on devrait se lever. La touche fléchée a été pressée. Oh, ok, super. Encore une chose que je veux faire. Commentons tous ces éléments. Et la façon dont nous le faisons est avec deux barres obliques inverses, tout comme nous avons des commentaires ici. Juste pour qu'ils ne se gênent pas. Et maintenant, c'est l'heure de votre défi. Et votre défi est de finir le reste. Qu' est-ce que je veux dire par fini le reste ? Eh bien maintenant, tu dois finir. Si le joueur pousse la flèche vers le bas. Si le joueur appuie sur la flèche gauche. Et un petit défi supplémentaire pour ceux d'entre vous qui sont très motivés si le joueur pousse la barre d'espace, même si nous l'avons déjà fait, je veux voir comment vous le faites. Alors arrêtez la vidéo dès maintenant et reprenez le défi de Gaye. Bienvenue de retour. Comment as-tu réussi avec ça ? Donc, continuons simplement et copions ceci. n'y a pas de honte à copier-coller du code, même s'il est préférable de trouver un meilleur moyen de le faire. Alors, qu'est-ce qu'on va utiliser ? Et nous allons utiliser la flèche tête vers le bas. Et nous allons copier cela aussi et nous économiser autant de temps que possible vers le haut, flèche vers le bas. Et ici, nous allons utiliser la flèche gauche. Copiez aussi cela. Et juste pour être encore plus, nerdy en fera un pour la flèche droite. Flèche droite. Copiez ça. Et ici, nous sommes simplement flèche droite. Faisons en sorte que cette lettre majuscule sauve ça. Et maintenant, si nous revenons à Unity et que nous cliquons sur le jeu, tout cela devrait être clair. Et maintenant, si nous appuyons sur la flèche vers le haut, nous levons la touche fléchée a été pressée. Flèche gauche, touche flèche gauche a été pressée vers la droite et vers le bas. Tout fonctionne bien. Et avant de partir, n'oubliez pas d'engager nos changements. Ne vous inquiétez pas si j'ai quelques changements supplémentaires ici. Ce ne sont que des expériences. Alors mettez en scène tout. Cliquez sur Commit et nous allons écrire ici, ajouté quelques entrées de couche. Ok, alors commentez que tout fonctionne bien. C' est une heure de maître, et je vous verrai dans la prochaine vidéo.
11. Ajouter des corps et des collisions rigides: Bienvenue à mes amis pour une autre vidéo. Et celui-ci utilisera des corps rigides et on utilisera des collisionneurs de boîte. Quoi, comment allons-nous les utiliser ? Nous allons les utiliser en ajoutant des composants. Et pourquoi allons-nous les utiliser ? Eh bien, parce que maintenant nos cubes ne sont pas seulement des images, ils tombent en fait. Et non seulement ils tombent, mais ils sont pris en utilisant les plateformes que nous avons créées. Donc, ne perdons plus de temps, et commençons. Donc maintenant, si nous cliquons sur le jeu, notre Cube ne fait rien d'intéressant. Et ce que nous voulions, c'est que nous voulions au moins le faire. Alors comment faire tomber ce cube ? Et par conséquent, comment y ajouter de la gravité et en faire un objet physique réel ? Nous le faisons en utilisant un corps rigide. Et qu'est-ce qu'un corps rigide ? contrôle rigide du corps nous permet de contrôler la position d'un objet par simulation physique. Non, c'est une poignée. C' est de grands mots. Mais si vous allez dans une unité, il y a des documentations que je vous ai laissées et les ressources que vous pouvez lire sur les corps rigides. Et l'objet de corps rigide sera tiré vers le bas par gravité sans ajouter de code, qui est incroyable et exactement ce dont nous avons besoin. Donc, si nous retournons dans Unity, nous pouvons réellement entrer dans notre cube magique. Et si nous regardons ici à droite à notre inspecteur, nous pouvons voir que nous avons une transformation, nous avons un rendu sprite, et nous avons le cube. Donc, transform nous indique la position à laquelle est r cube. Le moteur de rendu sprite rend réellement notre cube. Donc, si nous l'éteignons, mettons, il disparaît, le
rallumer, il tourne en arrière, et le cube est notre script. Alors faisons tous ces petits. Et nous avons ici ce bouton qui nous permet d'ajouter des composants. Donc, si vous cliquez sur ajouter des composants, nous pouvons réellement rechercher un corps rigide. Et nous avons deux corps rigides. L' un est un corps rigide, qui est utilisé pour le monde 3D. Et le corps rigide dont nous aurons besoin, qui est Rigide Body 2D. Cliquez sur le corps rigide à d. Et maintenant, nous pouvons voir que nous
avons beaucoup d'options et d'informations et de contraintes et le type de corps et la masse. Ne vous inquiétez pas pour tout ça. On ne les utilisera pas tous. Mais si vous êtes intéressé et que vous voulez aller en profondeur dans l'objet corps rigides, vous pouvez tout lire à leur sujet dans la documentation Unity. Une chose que je vais jeter un coup d'oeil sur le type de corps
mourant, que nous avons dynamique, cinématique et statique. Maintenant, plus tard, nous allons plonger encore plus profondément dans ces trois. Mais pour l'instant, ce que vous devez comprendre, c'est que la dynamique est quand notre corps est entièrement soumis au monde de la physique qui l'entoure. Cinématique comme lorsque notre corps n'est pas affecté par la gravité, mais pourrait être affecté par d'autres forces et statique comme un objet qui ne bouge pas du tout, quoi qu'il arrive à lui. Donc nous avons besoin de r cube pour être quatre maintenant, dynamique. Nous avons donc ajouté un corps en crête. Sauvons ça. Et nous allons cliquer sur jouer et voir ce qui se passe. Si nous cliquons sur le jeu, quelles sont sa ceinture D ou notre cube magique
descend et les feuilles sont vues et nous n'avons aucune idée d'où il est allé. Ça va à Arno, ce qu'on appelle là-bas, peut-être de l'aide ou n'importe quoi. Mais il disparaît. Alors, comment allons-nous le tenir ? Parce que pour l'instant ce n'est pas si magique. On le fera en utilisant des collisionneurs. Et ce que nos collisionneurs, Qu'est-ce qu'un collisionneur ? Un collisionneur permet aux objets d'interagir et donc de se heurter entre eux. Donc, chaque fois que notre Collider
ou, ou chaque fois que notre corps a une collision et qu'il touche un autre corps qui a un collisionneur. Ils vont entrer en collision et s'arrêter. Nous allons l'utiliser pour attraper des objets qui tombent,
qui tombent à cause de la gravité. Donc nous allons utiliser ce collisionneur pour attraper l'objet que nous avons. Revenons donc dans Unity et fermons ce corps rigide et en ajoutant un autre composant. Et on peut vraiment chercher un collisionneur. Et comme vous pouvez le voir, nous avons immédiatement des tonnes d'options. Nous avons des collisionneurs de boîte, nous avons des collisionneurs de boîte à la
capsule, capsule au circuit, cercle à la Donc, parce que nous utilisons R cube ou carré, sera en utilisant un Box Collider 2D, qui est ultra simple. Et comme vous pouvez le voir, nous avons aussi des tonnes et des tonnes d'options. Vous pouvez tout lire à leur sujet. Je, bien sûr, levé et les ressources. Mais une chose sur laquelle nous devons nous concentrer, c'est le déclencheur, et cela sera utile plus tard dans le cours. Mais pour l'instant, nous allons zoomer et voir ce que nous avons. On peut voir notre boîte de collisionneur. C' est vert. C' est une ligne verte tout autour de notre boîte, mais nous ne pouvons pas la voir en ce moment. La façon de le voir est si nous cliquons ici sur le collisionneur d'édition. Et nous pouvons en fait agrandir ce collisionneur ,
le
rendre ainsi, et en fait le faire dehors. Donc, c'est le collisionneur est, c'est en fait là que notre objet va entrer en collision avec des objets. Alors réinitialisons tout ça. Et voyons ce qui se passe si on clique sur jouer. Tellement excitant. Et puis o, rien ne se passe. Pourquoi c'est ça ? C' est parce que vous avez un défi et votre défi est d'attraper la chute d'un cube. Ne vous inquiétez pas, je ne vous laisserai pas tranquille. Parce que tout d'abord, vous devez créer un autre cube et le dimensionner à la taille de la plate-forme. Qu' est-ce que je veux dire par là ? Eh bien, vous devez faire notre plate-forme de cette extrémité juste ici jusqu'à l'autre extrémité pour attraper notre file d'attente. Donc, qui est continu avec la, Par conséquent créer un autre cube et en faire une plate-forme et un corps rigide. Et n'oubliez pas de changer le type de corps rigide 2, statique. Et enfin ajouter un collisionneur à notre plate-forme et attraper notre cube. Alors arrêtez la vidéo dès maintenant, donnez-lui toute votre attention, donnez-lui votre pleine concentration. Et ne vous inquiétez pas de faire des erreurs, car les erreurs sont la meilleure partie de l'apprentissage. Toi. Soit tu fais quelque chose de bien. Ou vous faites mal et apprenez de lui. Alors prenez votre temps et faites le défi. Bon, bienvenue. Comment as-tu réussi avec ça ? J' espère que vous n'avez pas regardé l'écran pendant cinq secondes jusqu'à ce que la vidéo continue. Bon, maintenant on prend notre cube magique et ce qu'on va faire, c'est le dupliquer. Et nous pouvons le dupliquer de deux façons. Nous pouvons soit cliquer avec le bouton droit de la souris ici et faire dupliquer le CO2, ce qui va créer un autre cube de jeu. Ou nous pouvons simplement cliquer sur Control D. Et maintenant nous avons un autre cube. Si on le prend ici, va faire ce cube un peu plus grand. Et la façon dont nous allons le faire est de le mettre à l'échelle. Donc, ici, nous avons l'échelle dans la direction x et nous avons la mise à l'échelle dans la direction y et dans le zed. Mais parce que c'est mardi à une échelle de toute façon. Alors ramenons Y 21. Et augmentons l'échelle x jusqu'à ce qu'elle corresponde entre les deux côtés de notre jeu. Maintenant, nous avons une plate-forme, et nous allons différencier un peu entre eux. Alors rendons cette plate-forme un peu plus sombre. Nous pouvons changer la couleur dans notre moteur de rendu sprite. Ici, nous avons la couleur. Et si on clique dessus, on peut le faire un peu gris ou noir. Alors faisons-le noir et ferons le carré ici. Faisons le, gardez-le blanc ou faites-le un peu gris. Voyons voir, peut-être gardons le blanc et changeons l'arrière-plan. Ooh, très amusant. Donc, nous pouvons aller dans la caméra et réellement changer la couleur de fond, ce qui fera Gray o cas semble assez grand. Et abaissons ce cube magique en fait, changeons son nom pour la plate-forme. Oups, c'est ça ? Plateforme. Et maintenant, nous avons notre plateforme qui est plus bas. Et ce sont les bords de notre appareil photo. Donc maintenant, si nous gardons ça et oh, j'ai oublié quelque chose et une bonne chose que je me suis souvenu. Nous cliquons sur la plate-forme et n'oublions pas de rendre ce statique ou bien il va juste tomber, tomber dans ce qui est vers le bas. Cliquez sur jouer. Et j'espère que oui, ça tient. Incroyable. J' espérais que tu aimais la vidéo. J' espère que tu as tout fait et que tu as commis tout ce qu'on a fait. Tellement engagé. Ajoutez-le. En fait, j'ai fait tomber mon cube magique et l' a tenu avec une plate-forme en utilisant un corps rigide et des collisionneurs. Ce taux de filles. Alors mettez en scène tous les commentaires, et je vous verrai dans la prochaine vidéo.
12. Ajouter de la magie à notre cube: Bienvenue les gars à une toute nouvelle vidéo. Et comme annoncé dans cette vidéo, lorsque nous cliquons sur jouer, notre q devient magique. Comment c'est ? Eh bien, si on presse, il saute. Si on appuie sur la gauche, il va à gauche. Si nous appuyons sur la droite va bien. Et si nous montons, en haut, en haut, en haut, nous pouvons réellement appuyer vers le bas, vers le bas, vers le bas, et le faire revenir plus vite sur Terre. Alors commençons. Ok, donc la première chose qu'on va faire, c'est qu'on a besoin d'une référence à notre corps rigide. Qu' est-ce que je veux dire par référence à notre corps rigide et pourquoi en avons-nous besoin ? Donc référence à un corps rigide signifie que nous allons écrire ici public et ne vous inquiétez pas du public expliquera cela plus tard. Mais pour l'instant, public signifie que tout le monde peut l'utiliser. Corps tellement public, rigide, c'est une variable de type, corps rigide. Et on appellera ça mon corps rigide 2D. Ok, sauve ça. Maintenant, comment allons-nous nous dire que c'est le corps rigide sur l'objet actuel ? Si nous retournons dans Unity, effacez ces messages, des avertissements embêtants. Et si nous cliquons sur q juste ici dans l'inspecteur, nous pouvons voir que maintenant nous avons une fente vide pour un corps rigide. Donc, si nous cliquons sur le petit cercle à droite, nous pouvons voir que nous avons la queue magique ou le corps rigide de la plate-forme. Alors allons de l'avant et cliquez sur le corps rigide de notre file d'attente. Double-cliquez dessus et dites ça. Une chose que j'ai remarqué, c'est que si on clique sur notre plateforme, c'est en fait, on leur a fait du steak. On ne devrait pas ajouter le corps rigide. En fait, nous devrions enlever le cube. Supprimons donc le composant cube de la plate-forme parce que nous n'avons pas besoin de déplacer cela. Quelque chose que nous aurions dû faire dans la vidéo précédente. Mais ce n'est pas un problème. Retournez au cube et maintenant nous ajoutons un corps rigide qui est magique QP. Excellent. Alors, sauvegardez ça. Maintenant, nous avons une référence à notre cube. La prochaine chose que nous allons faire est d'ajouter de la vitesse à notre corps rigide. Donc, si vous avez parcouru la documentation
du corps rigide dans l'unité, dans la documentation Unity, je pense que vous avez remarqué ou peut-être que vous ne l'avez pas fait, mais il y a un composant ou comment pouvons-nous l'appeler une propriété et mon corps rigide qui nous pouvons utiliser pour manipuler la vitesse. Donc maintenant, nos touches fléchées n'impriment plus de choses sur la console. Nos touches fléchées manipulent maintenant la vitesse de notre corps rigide. Alors faisons ça. Donc, afin d'accéder à la vitesse, nous allons écrire mon Rigid Body 2D, que nous avons maintenant une référence pour la vitesse de point. Vitesse. Maintenant, si nous regardons sur la vitesse, nous voyons et en fait Visual Studio nous dit que c'est un vecteur de ce qui est un vecteur aussi ? Eh bien, un vecteur est un vecteur dans l'espace. Donc, cela signifie qu'il a la coordonnée x et la coordonnée y. Maintenant, vous devriez être assez familier avec les coordonnées X et Y de l'école. Ce n'est pas trop dur de maths, mais ça devrait l'être. Maintenant, je vais bien sûr, laisser quelques ressources dans la vidéo jointe à cette vidéo où vous pouvez tout vérifier sur les outils vectoriels. Ne vous inquiétez pas pour ça. Il est assez simple de créer un vecteur deux, il suffit d'écrire un nouveau vecteur deux et d'ouvrir les crochets. Rien de trop fantaisie. Et à l'intérieur de ces parenthèses, nous pouvons réellement
passer par plusieurs paramètres que ce vecteur deux peut prendre. Et il faut un flotteur x, flotteur y. Alors comment veut-on le déplacer ? Dans notre cas, nous appuyons sur la flèche vers le haut. Cela signifie que nous voulons que la boîte se déplace vers le haut et ne se déplace pas vers un site à l'autre. Alors comment on fait ça ? Nous écrivons simplement 0 f dans la direction x et 10 F dans la direction y. Donc peut ajouter signifie que c'est un flux parce que nos paramètres nous ont dit que le corps rigide prend des flotteurs. Alors allons de l'avant et continuons la flèche vers le bas. Maintenant, même si Down Arrow, je ne pense pas que nous en aurons besoin,
mais pour les pratiques, la pratique, pour des raisons de pratique, nous allons l'ajouter et étant ceci est en baisse, au lieu de dix, f fera ce moins dix. Alors, sauvegardez ça. Allons dans Unity et voyons si quelque chose a vraiment fonctionné. Alors cliquez sur jouer. R cube tombe au sol et si nous appuyons sur la flèche vers le haut, il saute en fait et tombe ensuite. Donc, en haut et en bas, en
bas, il tombe plus vite. Excellent travail. Et maintenant tu sais quelle heure il est. C' est l'heure de votre défi. Complétez la magie. Donc, vous devez terminer l'ajout de vitesse en utilisant la flèche gauche, puis vous devez terminer l'ajout de vitesse en utilisant la flèche droite. Alors mettez la vidéo en pause maintenant. Allez-y et faites ça. Défi. Bienvenue de retour. Comment as-tu réussi avec ça ? J' espère que tout s'est bien passé. C' est très facile qu'il suffit de copier cela. Et maintenant, quand nous l'ajouterons à gauche, nous aurons 0 dans la direction y et nous ajouterons moins, disons dix. Gardez-les. Et dans le cas de la flèche droite, va ajouter dix AF dans la direction x et 0 dans la direction y. Retourner dans Unity peut manquer sur le jeu. Et maintenant une pression libre sur la flèche gauche. Nous devrions déplacer la flèche gauche ou droite et nous déplacer vers la droite, haut, vers le haut, vers le bas, vers le bas. Tout fonctionne parfaitement bien. Finale étape, comme toujours, je ne pense pas que je vais continuer à le faire, mais pour l'instant, juste pour vous prendre l'habitude de le faire. Alors, les actifs, comment devrions-nous appeler ça ? J' ai fait bouger mon cube vers la gauche, vers le haut, vers le bas, et à droite en fonction des flèches, mettez un point d'exclamation. Alors, commentez que je vous verrai dans la prochaine vidéo.
13. Utiliser l'apple, Else If, Else: Bienvenue à tout le monde dans une autre vidéo. Comme le titre le suggère, nous allons apprendre si les conditions et nous allons apprendre comment nous pouvons les manipuler. Donc, si nous cliquons sur le jeu juste ici POUR la boîte se déplace vers la gauche, notre console imprime qui sont des cubes hors limites à gauche. Et si nous passons à droite, il nous dit que nos cubes hors des limites sur le côté droit. Et la meilleure partie est que si on saute, ça nous dit que nos cubes hors de moi sont liés à la partie supérieure. Alors, comment allons-nous faire cela en utilisant les déclarations if ? Alors mettez vos plafonds de concentration et commençons. Donc, avant de commencer, parlons de ce que si les conditions sont, pourquoi nous les utilisons et leur structure. Donc conditionnels, si les instructions, ils sont, comme son nom l'indique, ils sont appelés que nous exécutons seulement dans certaines conditions. C' est donc la structure d'une condition if. Nous l'avons déjà utilisé et nos flèches dans les entrées des joueurs. Donc, si une condition qui doit être vraie est vraie, nous exécutons n'importe quel code est à l'intérieur de ces crochets bouclés. Donc, si nous mettons un booléen, comme nous l'avons dit, un booléen peut soit être faux, soit vrai. Donc, si ce booléen est vrai, nous exécutons le code qui est à l'intérieur des crochets bouclés. Maintenant, si cette déclaration arrive à ne pas être vraie, nous allons simplement éviter ou même pas considéré comme le digne, si, même pas considérer le code à l'intérieur de l'instruction if. Mais si nous ajoutons un autre, si et comme son nom l'indique, est si la condition supérieure ne le fait pas, n'est pas vrai, nous vérifions une deuxième condition, qui est une autre condition qui est vraie. Et si cette déclaration ou cette condition est vraie, nous exécutons le code à l'intérieur de ces crochets bouclés. Et si les deux déclarations sont fausses, alors nous utilisons enfin quelque chose appelé Else. Et cela ne doit pas être, rien ne doit être vrai pour que la portée ne soit exécutée que partout. Si les conditions ci-dessus doivent être fausses. Et nous avons utilisé cette autre condition avant. Nous l'avons utilisé dans notre code quand nous avons essayé de retirer la clé du joueur. Alors, comment cela fonctionne-t-il exactement ? Allons zoomer un peu. Donc, l'entrée, cette entrée, qui est une classe et l'unité, utilise la fonction ou la méthode, obtenir la clé vers le bas. Donc, si vous survolez la touche devinée vers le bas, vous pouvez voir qu'il s'agit d'un booléen et qu'il renvoie un vrai pendant le cadre, l'utilisateur commence à appuyer vers le bas. Donc, chaque fois que notre joueur appuie sur la flèche vers le haut, comme nous l'avons utilisé, comme nous l'avons dit, dit ici. Et nous l'avons fait en utilisant le code clé, qui est une autre fonction dans Unity, point flèche vers le haut. S' il appuie sur ça, la flèche vers le haut. Il indique à la touche get que,
pendant cette image, la touche fléchée vers le haut a été pressée et elle retourne true. Cela fait notre repère, qui rend ce code juste ici Exécuter et déplace notre cube. Et la même chose est vraie chaque fois que nous utilisons l'autre if déclarations. Donc maintenant, ce que nous allons faire, c'est que nous allons créer notre propre condition. Et nous allons le faire dans notre cas pour le match. Donc, pour l'instant, si nous cliquons sur jouer et retirons notre cube d'un côté à l'autre, chaque fois qu'il sort des limites, il tombe de notre plate-forme. Et ce que nous voulons faire, premièrement, nous allons agrandir notre plateforme. Donc va augmenter son échelle. Faites-le juste un peu plus grand pour donner à notre cube une place au lieu de simplement tomber dans ce qui est en bas. Et maintenant, nous allons vérifier les coordonnées sur ce cube. Donc, ce cadre blanc ici est ce que notre jeu voit réellement. Et si nous verrouillons notre vue de jeu à côté de notre vue de scène, oh, et comme vous pouvez le voir, elle devient plus petite. Pour corriger cela, nous pouvons simplement aller dans le gain et cliquer sur ce juste ici et simplement en faire 16 par neuf. Et cela devrait toujours garder ou encadrer aux mêmes dimensions. Donc maintenant, si nous allons dans notre scène, rendons cela un peu plus large et cliquez sur notre file d'attente de jeu ou le cube magique et déplacez-le. Vous pouvez voir en haut à droite et l'inspecteur que la position change. Et cette valeur peut être effectivement accessible. Donc, chaque fois que nos cubes sortent de la limite. Donc, disons qu'il devrait être juste ici, qui est 9.42. Donc, chaque fois qu'il sort de la limite, nous voulons imprimer quelque chose sur notre console. Et la même chose vaut chaque fois que nous allons de l'autre côté, qui est ce qui devrait être 9.40, nous nous contenterons de 9.5. D' accord ? Alors, comment allons-nous faire ça ? Eh bien, en utilisant la structure de si conditions que nous venons d'apprendre. Alors continuons et sauvegardons ceci et revenons dans notre Visual Studio. Et nous ferons ça à l'intérieur de l'objet. Alors, qu'est-ce qu'on va faire ? Nous voulons vérifier si le cube s'est déplacé à l'extérieur de la limite de droite. Donc, si nous devons écrire ici, première chose que nous devrons faire est d'accéder à la transformation de notre cube ou de nos objets de jeu. Donc, sa transformation, il suffit d'écrire la position du point de transport. Et nous ne cherchons pas de position. Nous cherchons spécifiquement la position x, donc c'est X.
Donc, si la position du point de transport, point x est supérieur à 9,5 f, parce que rappelez-vous que c'est un flotteur. Ensuite, à l'intérieur de l'instruction if, nous voulons exécuter du code. Et pour l'instant, nous allons simplement imprimer sur notre console. Donc nous sommes comme le débogage. Mais log, faisons de cela un avertissement juste pour le plaisir. Donc déboguer l'avertissement de journal de points. Donc on devrait écrire quelque chose à l'intérieur. Notre cube est hors limites. le côté droit, était deux points d'exclamation pour le rendre un peu plus dramatique. Alors, sauvegardez ça. Retourne dans Unity. Attendez qu'il compile et comprenne ce qui se passe. Et maintenant, effacez tout ça. Cliquez sur jouer. Et maintenant, si nous passons du côté droit, comme vous pouvez le voir, notre cube est hors limites du côté droit. Et plus nous bougeons, mais si nous passons à gauche et que rien ne se passe, alors arrêtez ça. Et maintenant, nous allons faire une déclaration, un autre si. Sinon, si. Et puis sur le côté. Pour notre déclaration else if, nous allons vérifier si notre cube va de l'autre côté de notre écran. Donc c'est la transformation. Encore une fois, nous accédons à la position
et nous n'avons besoin que du X. Et maintenant nous allons vérifier s'il est plus petit que moins 9,5 f. Et dans ce cas, nous allons également imprimer un avertissement, qui sera notre cube est hors limites sur le côté gauche avec deux points d'exclamation. Alors rendons ça un peu plus propre. Contrôlez S pour sauver tout ça, retournez dans Unity. Attendez qu'il compile, effacez tout. Cliquez sur jouer. Et maintenant, si nous allons sur le côté gauche avec r cube, il nous dit que nos cubes hors limites à gauche. Et sur le côté droit, il nous dit que notre cube était hors des limites à droite. Mais maintenant, si nous sautons sans cube, rien ne se passe parce qu'il est temps pour votre défi et votre défi est de terminer la dernière déclaration if. Donc, terminer si déclaration quand notre joueur sort du haut de notre écran, et je vais vous donner quelques conseils,
aura besoin de déplacer le cube autour de notre scène et de comprendre la limite supérieure. Et nous devrons également utiliser l'instruction if pour imprimer sur notre console. Alors mettez la vidéo en pause maintenant. Prenez votre temps avec ce défi. Je te verrai dans un peu. Ok, bienvenue. Alors, éclaircissons cela et voyons notre limite supérieure. Donc, si nous déplaçons notre file d'attente et nous pouvons voir sur la droite que nous avons la position y changer. Et si nous prenons les coordonnées y et vérifier pour eux à environ 5,5 r RQ laisse la vue de la caméra. Ok, super. Donc, revenons dans notre Visual Studio et écrivez une autre déclaration if et sinon si notre position de point de transformation. Et maintenant, au lieu du x, nous allons utiliser notre y. Donc, si notre point y de transport est supérieur à 5,5 f, nous allons imprimer un autre avertissement ici. Et cet avertissement, notre cube est hors des limites du côté supérieur, aussi les points d'exclamation, sauf cela, retournent dans Unity. Attendons qu'il comprenne ce qu'on a fait. Cliquez sur jouer. Et maintenant,
si nous sautons , sautons, sautons et nous sortons des limites, cela nous dit que notre cube est hors des limites du côté supérieur. Ok, donc dernière étape, sortons du jeu, retournons dans notre arbre source, et maintenant on peut tout engager. Alors restez Joel, cliquez sur Commit et nous appellerons ceci en ajoutant si les déclarations à mon jeu. Cliquez sur Commit. Et je te vois dans la prochaine vidéo.
14. Méthodes publiques et types de retour: Bienvenue à tout le monde dans une autre vidéo. Dans cette vidéo, nous ne faisons pas beaucoup de codage, mais nous allons restructurer notre code. Comment allons-nous faire ça ? Eh bien, comme vous le voyez, notre méthode de mise à jour est un peu différente parce que nous avons extrait toutes les choses qui sont liées. Donc, par exemple, maintenant nous avons une méthode qui déplace notre cube et c'est juste ici. Et nous avons une autre méthode qui est hors des limites. Et notre imprimante, pas seulement cela, nous avons également créé une méthode publique qui est l'impression de l'extérieur, qui a également un paramètre. Tellement excitant. Et il renvoie une chaîne et il n'est pas utilisé à l'intérieur du cube. Il est utilisé dans la plateforme, un nouveau script que nous avons créé. Je suis tellement excité pour cette vidéo. J' espère que tu l'es aussi. Alors ne perdons plus de temps. Commençons. Ok, donc si nous regardons maintenant nos méthodes de démarrage et de mise à jour, nous pouvons voir qu'elles sont un peu encombrées et il y a choses qui ne sont pas liées les unes aux autres. Donc, par exemple, nous avons toutes ces conditions si qui se rapportent à notre mouvement cube. Et nous les avons juste à côté des conditions que nous avons créées pour comprendre les limites de notre file d'attente. Nous devons donc les restructurer d'une manière et le rendre plus attrayant à l'œil. Donc, nous allons le faire en utilisant des méthodes. Donc, quelles sont nos méthodes, eh bien, la structure de la
méthode sont un peu comme ça, tout comme nous avons la méthode de départ et la méthode de mise à jour. Nous pouvons aussi créer nos propres maths. Et ils ressemblent à des objets de valeur, mais ils sont aussi une sorte de différence. Donc, nous avons V2, tout d'abord, est le type d'accès, et c'est l'accessibilité. Donc, nous devons accéder aux types. Il peut être privé ou public. Et nous allons utiliser les deux dans notre projet. Donc privé est quand une méthode est utilisée uniquement à l'intérieur de sa classe. Ainsi, par exemple, si vous créez une méthode publique à l'intérieur du cube, seul le cube peut utiliser cette méthode. Mais si vous créez une méthode publique, d'autres scripts peuvent utiliser votre méthode. Aussi. Ensuite, nous avons le type de retour, et pour l'instant nous n'avons utilisé que le vide, ce qui signifie que nous ne retournons rien. Nous pouvons avoir un type de retour d'entier, par exemple, où une certaine méthode retourne un entier, il peut également retourner une chaîne et il peut retourner d'autres choses. Nous avons également un nom de méthode. Donc, les noms de méthode devraient toujours refléter ce que fait la méthode réellement. Et par commodité, tout comme nous nommons nos variables, le premier mot sera tous n'est pas toujours capitalisé lorsque nous nommons des méthodes, notre premier mot est toujours capitalisé et tous les mots suivants sont également capitalisés. Et enfin, nous avons des paramètres et nous en avons un. Un paramètre n'a rien à l'intérieur. Ça veut dire qu'on ne passe rien. Et quels sont les paramètres ? Ils sont comme des variables que nous passons à notre méthode et nous ne pouvons les utiliser qu'à l'intérieur de notre méthode. Alors, comment allons-nous utiliser la structure de ces méthodes ? Eh bien, nous allons l'utiliser à l'intérieur de notre code juste ici. Commençons donc par restructurer certaines choses. Donc, à titre d'exemple, je vais vous montrer à quel point notre code devient beaucoup plus efficace. Supprimons donc tous ces commentaires ici. Et comme vous pouvez le voir que chaque fois que nous aurions besoin de commenter ces journaux de débogage, nous devons aller les faire un par un. Eh bien, nous pouvons en fait utiliser tous ces éléments si vous les mettez en évidence. Et bien sûr, vous utilisez Visual Studio et vous cliquez avec le bouton droit sur eux. Vous pouvez voir que nous avons quelque chose appelé action rapide et refactoring. Donc, si vous cliquez sur cela, vous
indique si vous voulez soit extraire vers une fonction locale ou extrait vers une méthode. Donc, si nous l'extrayons dans une méthode, et en passant, la différence entre une fonction et une méthode, vous pouvez réellement les utiliser de façon interchangeable et comme vous le souhaitez. Mais les fonctions sont généralement des méthodes qui sont à l'intérieur d'une, une autre méthode. Mais une méthode est une méthode qui est en dehors de la méthode que nous faisons actuellement. Donc, c'est un peu déroutant. Vous pouvez les utiliser de façon interchangeable. Ne vous inquiétez pas. Alors, comment allons-nous nommer cette méthode ici ? Et nous allons l'appeler impression à notre impression poids égal à notre console. Et cliquez sur et tournez. Et maintenant, nous avons cette fonction ou méthode ici. Et comme vous pouvez le voir, c'est une méthode privée qui ne renvoie rien parce qu'elle est vide. Et maintenant, si nous voulons commenter cela, nous pouvons simplement commenter cette fonction et tout est commenté et à 1P impression sur notre console. C' est donc le premier avantage de l'utilisation de méthodes. Alors allons de l'avant et mettons-le ceci sous mise à jour. Donc, si nous cliquons sur Control X pour le couper, et nous le mettrons ci-dessous mise à jour. J' aime mettre la mise à jour juste en dessous de la méthode de départ pour avoir une structure agréable et cohérente à notre code. La prochaine chose que nous allons faire est d'extraire vers d'autres méthodes. Donc, tout d'abord, nous allons mettre en évidence toutes les conditions si dans notre AP pour notre nourriture, pour déplacer notre cube. Donc, mettre en évidence tous, un clic droit, créer un extrait une méthode. On appellera cette masse déplaçant notre file d'attente. Et nous allons également extraire cette méthode. Et nous allons faire un clic droit aller à la méthode d'extraction. Et nous appellerons cette méthode, comment devrions-nous appeler ça ? l'extérieur ? De bornes imprimante. Ok, donc maintenant nous sommes désolés pour le retour de zoomer dessus. Donc maintenant, comme vous pouvez le voir, notre méthode de mise à jour est très cohésive et elle, euh, nous pouvons facilement voir ce que fait notre méthode de mise à jour. Donc, il déplace notre cube et il hors limites imprimer les vérifications pour hors limites. Chaque fois que r cube est hors limites, il imprime quelque chose sur notre console. Donc maintenant vous pouvez voir que nous avons cette méthode ici et une autre juste ici. Et enfin, nous avons l'impression sur notre console. Excellent. Maintenant, nous allons créer un second script et créer une méthode publique juste pour montrer comment tout fonctionne. Donc, la première chose que nous ferons est de créer une méthode publique juste en cours de mise à jour, et nous appellerons ceci, eh bien, tout d'abord, faisons un public, nous ferons cela un vide parce que nous ne voulons pas qu'il retourne quoi que ce soit pour l'instant, vide public. Mais on va l'utiliser. On appellera cette impression de l'extérieur. D' accord. Vous n'avez pas à rendre vos noms de méthodes aussi longs, mais juste pour donner un exemple. Donc, ce que cette fonction fera, il va simplement imprimer quelque chose ou un certain message qui aura Bonjour de l'autre côté. Je ne sais pas ce qui a capitalisé. Ça n'a pas à l'être. Alors c'est Bonjour de l'autre côté. Retournons à Unity. Cliquez sur la plate-forme parce que c'est le seul autre objet que nous avons en plus de la caméra. Ajoutons un composant et créons une plate-forme. Forme plate éparpillée. Donc Nouvelle plate-forme de script, excellent. Allons de l'avant et créons ça. Et cela suffit, mais il devrait être ajouté. Et maintenant, si nous, maintenant nous l'avons dans notre projet. Donc double-cliquez dessus et il devrait s'ouvrir dans Visual Studio. Et comme vous pouvez le voir, nous avons déjà la méthode de mise à jour du vide et l'étoile du vide. Maintenant, à l'intérieur du début, nous allons obtenir une référence à notre script cube et utiliser la méthode publique qu'il a. Et comment allons-nous faire ça ? Eh bien, nous allons le faire en utilisant quelque chose appelé trouver un objet de type. Un objet de type a ces deux opérateurs
ici dont nous avons besoin à l'intérieur pour dire quel script nous allons utiliser. Donc, il trouve l'objet de type cube et Visual Studio toujours utile. Et maintenant, si nous cliquons sur point, nous pouvons voir que nous pouvons utiliser tout ce qui est à l'intérieur du cube. Donc, si nous, par exemple, voulons accéder à la méthode Start, nous ne pouvons pas. Mais si nous voulons présenter, comme vous pouvez le voir, il nous donne l'impression de la méthode extérieure parce qu'il est public, donc libre. Sauvegardez ça et revenez à utiliser Unity. Et sauvegardons aussi notre scène et cliquez sur jouer. Et avant de le faire, éclaircissons ça. Et dès que nous cliquons sur jouer Bonjour de l'autre côté, quel point c'est cool ? Nous avons donc créé une fonction ou une méthode qui est à l'intérieur du cube, mais nous l'utilisons à l'intérieur sur la plate-forme. C' est tellement cool. Et c'est en fait la base. Et c'est très crucial parce que nous allons l' utiliser beaucoup dans notre jeu dans les prochaines sections. Votre défi est donc de créer votre propre méthode. Vous allez créer une méthode simple avec un type de retour de chaîne. Donc, au lieu de void, vous l'aurez comme un type de chaîne. Vous lui donnerez également un paramètre entier, et vous l'utiliserez avec la chaîne et le retournerez. C' est donc un grand défi, mais je pense que vous êtes prêt à le relever. Et un petit indice utiliser pour la chaîne. Et cela nécessitera un peu de recherche pour comprendre et relever le défi. Prenez votre temps. N' aie pas peur de faire des erreurs comme je te l'ai dit, essayer et échouer n'est pas la fin du monde. Alors je te vois dans un o.
Ok , bienvenue. Alors maintenant, nous allons changer un peu notre méthode. Donc, au lieu de void fera cela une chaîne, et il ne prend actuellement aucun paramètre. Donc, nous allons lui donner un paramètre qui est un entier. Et nous allons simplement nommer cette valeur entière pour ne pas être trop compliquée. Comme vous pouvez le voir ici, nous avons une ligne rouge squigggly. Cela signifie que notre fonction ne fonctionne pas correctement, correctement. Pourquoi c'est ça ? Parce qu'il a un type de retour, qui est une chaîne, mais il ne retourne en fait rien. Alors, comment on répare ça ? Eh bien, nous devons écrire ici retour, et nous devons retourner une certaine valeur. Et quelle est cette valeur, eh bien, doit être une chaîne. Alors allons de l'avant et créons une variable à l'intérieur de notre impression de l'extérieur. Donc, cette variable sera une chaîne. Nous appellerons cette variable d'impression quelque chose. Et quoi ? Nous allons l'imprimer, eh bien, la valeur que nous étions s_1 est. Et maintenant, nous pouvons utiliser ce paramètre qui nous a été envoyé de l'autre côté. Et maintenant en retour, nous allons revenir, imprimer quelque chose et ce voyage résoudre notre problème de ligne rouge squigggly. Mais parce que nous lui avons donné un paramètre ici d'où nous l'appelons, devrait également lui donner un certain paramètre. Donc, nous devons lui donner un entier. Et cet entier, disons, sera un 4x4 ou quoi que ce soit. Ou vous pouvez même créer une variable ici. On l'appellera un entier. Nous appellerons cette valeur au sable, et ce sera égal à dire neuf. Et ici, nous allons envoyer la valeur à envoyer enregistrer que cela renvoie réellement une chaîne. Mettons-le donc à l'intérieur d'une référence de chaîne, que nous appellerons chaîne de L à l'extérieur égal. Et maintenant, nous allons simplement déboguer le journal des points et allons imprimer cette chaîne de l'extérieur. Alors fermez ça, sauvegardez ça, retournez dans Unity. Donc, dégagez tout. Cliquez sur jouer. Et maintenant, la valeur que nous avons été envoyés est de neuf. Excellent travail. Et une chose que je veux préciser est que parce que c'est une chaîne et que cette méthode renvoie une chaîne, nous pouvons réellement la mettre directement à l'intérieur de notre serrure. Excellent travail tout le monde. J' espère que le défi n'a pas été trop difficile. J' ai pensé que c'était un peu plus haut et qu'il faut un peu de recherche, mais j'espère que vous avez fait de votre mieux. Et comme toujours, avant de partir, nous devons mettre en scène tous les commentaires. Créé ma première méthode publique avec un type de retour, validez cela, et je vous verrai dans la vidéo suivante.
15. Prefabs et relations parentées et enfants: Bienvenue à tout le monde dans une nouvelle vidéo très excitante. Dans celui-ci, nous allons en apprendre davantage sur les préfabriqués. Et pas seulement ça, nous allons, nous allons apprendre sur les préfabriqués, comment nous pouvons les utiliser d'une scène à l'autre. Ici, vous pouvez voir que nous avons un diamant était quelque chose appelé un collisionneur de polygone. Nous avons aussi ce cube magique et un petit cercle, mais en fait le cercle se déplace avec notre cube parce qu'il est un enfant de ce cube. Nous pouvons aussi, nous avons également créé un deuxième niveau, niveau 1 et niveau 2. Ici, nous avons trois cubes, comme vous pouvez le voir, et pour une raison quelconque, ils sont bleus, et nous verrons pourquoi ils sont bleus. Nous avons aussi dans le diamant juste ici. Et si on clique sur le jeu, ils tombent
tous, et c'est tout. Donc, si excitant. Je te verrai dans un peu. Ok, alors qu'est-ce qu'un préfabriqué ? Eh bien, fondamentalement, c'est un modèle pour un certain objet de jeu. Donc, si nous avons créé un objet de jeu avec tous ses composants et son script et sa position, nous pouvons créer un modèle à partir de lui pour créer d'autres objets de jeu similaires. Le système Ap vous permet de stocker un objet de jeu avec toutes ses propriétés. Disons que notre périphérie a un collisionneur, qu'elle a un corps rigide et qu'elle a un script. Chaque fois que vous créez un préfabriqué à partir d'un objet de jeu défini, vous aurez les mêmes propriétés. Et alors pourquoi l'utilisons-nous ? Eh bien, nous pouvons réutiliser un objet de jeu configuré d'une manière particulière. Nous pouvons éditer de nombreux objets à la fois, et nous pouvons utiliser le même objet et
différentes scènes, beaucoup plus facile. Alors allons de l'avant et démontrons ces trois utilisations. Donc créer un préfabriqué est en fait très, très, très simple. Vous, tout ce que vous devez faire est simplement de cliquer sur la chose que vous voulez préfabriquer. Ainsi, par exemple, nous voulons préférer notre cube magique. Cliquez dessus et faites-le glisser dans notre projet. Et maintenant, nous avons un préfabriqué de notre cube. Et vous savez, c'est un préfabriqué en regardant la hiérarchie et vous pouvez la distinguer par, parce que c'est un peu plus bleu. Excellent. Alors maintenant, que pouvons-nous faire de notre préfabriqué ? Si nous cliquons dessus, vous pouvez voir qu'il a les mêmes propriétés que le cube dans notre scène. Et maintenant, si nous cliquons sur le préfabriqué et la veste et sur notre scène, vous pouvez voir que nous pouvons créer trois beaux cubes magiques extrêmement facilement. Et cela est très utile à bien des égards. Alors démontrons comment fonctionnent les préfabriqués. Donc, disons que nous cliquons sur ce cube magique, que nous voyons dans la hiérarchie est numéro un. Disons que nous voulons changer de couleur. Donc, si nous allons dans notre moteur de rendu sprite et choisissons la couleur, et rendons le rouge. Maintenant, nous avons un cube Magic rouge. On sauve ça. Et tu vois ça. deux autres cubes magiques sont encore blancs. Et en passant, ces cubes sont appelés instances instantanées de préférence. Et si vous regardez de près dans notre inspecteur, vous pouvez voir que nous avons un autre onglet ouvert. Donc, nous avons l'ouverture qui ouvre notre préférence, qui a la queue magique. Nous pouvons sélectionner le préfabriqué et nous pouvons écraser. Et ce que ça fait. Elle s'applique aux modifications que nous avons apportées à notre instance actuelle, à notre mémoire. Donc, les choses qui ont changé, vous pouvez voir qu'ils sont également mis en évidence dans une couleur bleue juste ici. Et on a changé la couleur. Donc, si nous cliquons sur écraser et cliquez sur appliquer, tout ce qui devrait arriver est que toutes
les autres instances de ce cube ont changé en rouge et ici et notre projet, vous pouvez voir que notre cube magique est rouge maintenant, c'est-à-dire très cool et vous pouvez commencer à voir à quel point cela est utile. Donc, disons que nous avons changé en arrière, que l'instance devienne blanche. Prenons un autre cube et changeons ça en vert. Donc maintenant, si nous appliquons ceci à notre préfabriqué, que pensez-vous qu'il devrait arriver ? Eh bien, tous deviennent verts ou seulement celui qui est le rouge viendra-t-il au vert ? Essayons cela, appliquez et ops, car vous pouvez voir que seul le prefab ou qui était à l'origine, ou l'instance de prefab qui était toujours la même que l'original est changé en vert, mais ceux que nous avons également modifiés ne changent pas en arrière. Donc les préfabs de privet sont un peu difficiles, mais ils sont très utiles. Donc, par exemple, allons de l'avant et supprimons ces trois cubes. Et allons dans les scènes et nous allons simplement dupliquer notre courant vu. Par cela, nous créons une seconde scène. Renommons ça au niveau deux. Et notre scène originale sera de niveau 1. Alors maintenant, oui, il vous demande une précharge. Il suffit de cliquer sur oui. Donc maintenant au niveau un, nous avons ces trois cubes, puis le niveau deux, apparemment nous avons aussi ces trois cubes. Alors allons de l'avant et supprimez-les. Sauvegardez ça. Donc, au niveau un, nous avons les cubes. Au niveau 2, nous n'avons pas de cubes. Alors, qu'est-ce qu'on va faire à ce sujet ? Eh bien, au lieu d'aller au niveau un et de dupliquer ou de copier les cubes, nous pouvons simplement aller à notre projet et nous avons un cube magique. Et nous pouvons l'ajouter facilement comme tarte, directement dans notre scène. Et maintenant, nous avons un cube, un cube magique, et notre scène. Ok, génial, donc c'est un préfabriqué. Maintenant, ce que nos enfants bien, allons de l'avant et créer aller à des actifs. Et pour créer un sprite. Et le sprite sera un cercle. Donc maintenant, nous avons ceci, disons circuit enfant magique. Ok, donc circuit enfant magique, on peut aller de l'avant et ajouter ce circuit d'enfant magique à notre scène. Et au fait, ce cube magique est le préfabriqué. C' est juste le sprite. En passant, nous pouvons également organiser tout cela. Ou si nous créons un dossier appelé ce sprites, nous pouvons mettre les deux dans des sprites. Nous pouvons également aller de l'avant et créer un autre dossier appelé ce script. Et maintenant, nous avons ces scripts à l'intérieur des scripts de dossier. Et si nous ajoutons un autre préfabriqué, nous pouvons également créer un dossier pour les préfabriqués. Maintenant, nous avons ce cercle d'enfants magique. Pourquoi appelons-nous ça le cercle de l'enfant ? Eh bien, parce qu'on va l'enfiler à notre cube magique. Et nous le faisons en prenant simplement notre cercle d'enfant magique et en le faisant glisser juste sous notre cube de match, et maintenant c'est un enfant. Qu' est-ce que cet enfant veut dire ? Si nous cliquons sur le cercle, nous pouvons le déplacer comme nous le faisons toujours. Mais si nous cliquons sur la queue magique et que nous la déplacons, vous pouvez voir que le cercle se déplace si cela signifie qu'il s'agit d'un enfant. Et si nous mettons à l'échelle notre cube, r, cercle aussi des échelles. Et si nous mettons à l'échelle dans la direction y, il évolue aussi si nous l'avons écrit. Voyons si on a tourné. Le cercle tourne également et ce sont les propriétés d'un enfant grandit avec son parent. Et le parent est un cube magique. Donc, il grandit avec son parent, se rétrécit avec le parent, il se déplace et se comporte comme son parent le fait. Et cela est très utile parce que parfois nous pouvons avoir besoin d'ajouter des enfants. Donc, si nous avons un objet qui a plusieurs objets à l'intérieur et nous voulons qu'ils se déplacent tous à l'unisson. Au lieu de recouvrir tous les enfants, nous pouvons simplement enduire les choses au parent et les enfants bougeront avec les parents. Donc, nous allons utiliser beaucoup de relation parents enfants sera en utilisant prefab aussi beaucoup. Et maintenant, il est temps de relever votre défi. Et votre défi est de créer un nouveau préfabriqué. Donc, créez un nouvel objet dans notre scène, quelle que soit la scène que vous voulez. Préfabriquez-le, faites-en une instance dans une scène différente et ajoutez un composant à cette instance. Appliquez les modifications au préfabriqué et voyez ce qui se passe. Et si vous voulez comme un défi supplémentaire, vous pouvez également créer une relation enfant-parent quelque part dans nos scènes. Alors mettez la vidéo en pause et allez faire le challenger. Ok, bienvenue de retour. Comment as-tu réussi avec ça ? J' espère que ce n'était pas trop chaud. Alors prenons ce cube, mettez-le ici, ou cube magique, qui est carré, ironiquement. Et maintenant, allons-y et créons quelque chose. Donc on va dans les sprites. Voyons voir, nous allons créer un diamant parce que les diamants sont pour le diamant. Cliquez sur Entrée et allons de l'avant et mettez-le dans notre scène. Et nous le mettrons à l'intérieur des sprites. Maintenant, nous avons un diamant camarades de classe TimeOfDay, mais plus grand. Et changeons sa couleur. Alors faisons-en un bleu, parce que les diamants sont en quelque sorte bleus, je suppose. Maintenant, nous avons ce diamant ici. Et quand nous voulons le faire, c'est nous le voulons. Alors, quel était notre défi ? Il s'agissait de créer une instance dans une scène différente et d'ajouter un composant à l'instance. Ok, alors on prend ce diamant et on le préfaçonne. Et maintenant, parce que nous avons deux préfabriqués, créons un dossier, appelons ce prefabs et tout est organisé et rencontré. Donc maintenant, nous avons le diamant qui est aller de l'avant et sauver cela. Retournez dans notre scène de niveau 1 et nous avons trois cubes ici, mais maintenant le diamant. Mais nous pouvons facilement en ajouter un de notre hiérarchie, super facile. Alors ajoutons les composants. Composant. Ajoutons un Rigid Body 2D. Et ajoutons aussi un collisionneur. Et quel genre de collisionneur devrions-nous y ajouter ? Allons de l'avant et ajoutons un cercle. Bien sûr, pourquoi pas un circuit ? En fait, ça devrait être un collisionneur de polygone. Faisons en un collisionneur de polygone et il s'adapte parfaitement. Et en fait, juste pour le plaisir de cela, allons de l'avant et faisons pivoter dans la direction y. Non, pas dans la direction y. Je voulais dire dans la direction z. Ok, super. Alors, sauvegardez ça. Mais en ce moment, nous sommes cliqués, comme vous pouvez le voir, nous avons cliqué sur le diamant dans notre scène. Nous avons ajouté un corps rigide et un collisionneur de polygone. Donc, il n'est pas ajouté à notre préfabriqué. Si nous cliquons sur notre préfabriqué et nos projets ci-dessous, nous pouvons voir qu'il n'a pas de corps rigide ou de collisionneur. Revenons dans les diamants. Cliquez sur Remplacer, Appliquer. Et maintenant, dans notre deuxième niveau, sauvegardez ça. Et notre niveau 2, désolé pour ça. Scènes. Niveau au diamant a en fait un corps rigide et un collisionneur de polygone, ce qui est génial. Alors cliquez sur jouer juste pour le voir tomber. Le diamant tombe et tout tombe. Et comme vous pouvez le voir, le,
même, le cercle tombe avec le cube r. Mais parce qu'il n'a pas de colloïdal, ni de corps rigide, mais il se déplace sans cube. J' espère que vous avez fait le défi. J' espère que vous avez apprécié cette vidéo et je pense que ce sera la dernière vidéo de notre section. Dans la section suivante, nous allons réellement commencer à créer notre gain. Tellement excitant. Alors passez en revue ceci, assurez-vous que vous comprenez tout dans cette section et n'
oubliez pas de toujours engager notre travail. Appelons ça, reste Joel. Ajoutez un préfabriqué en diamant et un circuit enfant à ma magie. Cu O K TG taux ou convaincu qu'il a sauvé, nous l'avons dans nos engagements juste ici. Et je te verrai dans la prochaine vidéo.
16. Section 3 : Créer notre monde - Conception de jeu: Bonjour et bienvenue, mes développeurs de jeux préférés. Dans cette vidéo, je vais parler un peu de la conception de jeux. Et comme vous pouvez le voir, j'ai entendu que ça a commencé et déjà les diapositives Google sont très excités de vous parler du croquis de gang. Donc, le croquis de jeu est le suivant. Maintenant, ce n'est pas très impressionnant, mais il va obtenir le concept de notre jeu autour. Donc vous avez déjà regardé la vidéo d'introduction où je vous ai montré le jeu que nous avons déjà terminé. Mais maintenant, je vais vous emmener à travers les étapes qu'il a fallu pour que je développe le jeu. Tout d'abord, j'ai créé ce mini croquis. Et comme vous pouvez le voir, eh bien, ce n'est pas très impressionnant, mais ça fait le travail. Tout d'abord, nous avons les tuiles ici qui définiront notre monde. Et nous avons les tuiles de fond ou les combinateurs du monde juste ici des deux côtés. La prochaine chose que nous avons sont les portes. Donc nous aurons les portes d'entrée par lesquelles notre conquérant ici, ce petit gars entre et commence le niveau. Et c'est la porte juste ici qu'il doit passer pour passer au niveau suivant ou à la pièce. Ensuite, nous avons les bombes ici que j'ai esquissées comme brûlées. Et ils exploseront dès que nous les approcherons. Pas dès qu'ils commenceront à brûler quand nous nous approcherons d'eux et qu'ils exploseront. Finalement, nous avons le cœur que nous pouvons ramasser afin d'augmenter notre vie. Nous avons, bien sûr, les draps suspendus juste ici que nous pouvons grimper pour obtenir deux plateformes inaccessibles. Nous avons les diamants, bien sûr, que nous ramassons pour augmenter notre score. Et nous avons les petits monstres juste ici qui vont essayer de nous attaquer et Canvas, mais nous avons le pouvoir du marteau source qui écrasera n'importe quel ennemi et notre chemin. Et nous avons aussi cette petite place juste ici. Et si vous avez remarqué dans l'introduction, bien
sûr, vous l'avez remarqué parce que je vous l'ai dit comme dix fois, parce que je suis si fier de lui. C' est la caméra qui suivra notre joueur partout où il va. Donc, au lieu d'avoir un énorme appareil photo autour de l'ensemble nivelé et d'avoir à déplacer notre
minuscule joueur autour, nous faisons suivre notre joueur où il va. C' est très cool et je vous encourage à créer votre propre esquisse de jeux et de voir comment vous voulez faire votre propre jeu. Alors la prochaine chose, parlons des plates-formes 2D parce que notre nom va être un platformers 2D. Donc je suis sûr que vous êtes familier avec ces deux. C' est un jeu récent appelé Celeste, que beaucoup considèrent comme
l'un des meilleurs jeux de je pense que deux mille, deux mille dix-sept. Je ne suis pas sûr, mais c'est un jeu assez moderne. Et comme vous pouvez le voir, c'est comme notre jeu où il a des toils et il a un personnage pixélisé qui se déplace dans la plate-forme 2D qu'ils ont créée. Ensuite, nous avons une nuit creuse. Je ne sais pas si vous avez joué à ce jeu, mais c'est vraiment incroyable. C' est similaire à la sauce noire et à la difficulté, mais c'est un jeu de plateforme 2D. Et j'ai utilisé des exemples modernes juste pour vous montrer combien les plateformes
2D sont toujours pertinentes dans le développement de jeux. Et vous pouvez voir ici qu'il a aussi une tuile des cartes et des plates-formes et des arrière-plans, et peu pixelisés. Bien qu'ils soient, mais plus poli que notre jeu, et pas aussi pixélisé, mais le même concept s'applique. Et enfin, nous avons Pelle Chevalier. Je ne suis pas sûr si vous avez joué Chavan light, mais c'est un jeu incroyable. Je l'ai joué, je l'ai fini. C' est très cool. Et comme vous pouvez le voir, c'est très similaire à notre jeu. Il a les échelles, il a les ennemis, tandis que les ennemis sont plus grands, et il est pixélisé comme notre jeu. Et le dernier exemple, j'ai trouvé ceci sur Google. Je ne suis pas sûr de qui l'a fait, mais comme vous pouvez le voir, ils ont esquissé le jeu et le pixellisé et il montre les tuiles qui ont été utilisées pour créer le jeu. Nous allons utiliser des tuiles similaires ou une façon similaire d' empiler notre jeu et de faire de notre jeu une plate-forme 2D, tout comme celui-ci serait échelles plates-formes et avec un fond. Alors, la conquête du château, la conception du jeu de
quoi je vais parler ici ? Donc c'est une capture d'écran de notre jeu, et parlons de la mécanique de base. Donc nous aurons notre conquérant courir, sauter, grimper, et il attaquera aussi. Que devrions-nous parler du gameplay de base, mais il va être obtenir du début du niveau, de la porte
de départ à la fin sans se faire frapper plus de trois fois. Comme vous pouvez le voir, comme vous l'avez vu dans la vidéo d'introduction, je vous ai montré que notre joueur, ou le conquérant est le joueur et notre jeu n'a que trois vies. Et ça ne parle pas du grand qu'il peut vraiment ramasser. Chaque fois qu'il l'
a, il perd vivant et si vous perdez trois vies, c'est fini. Vous devez retourner au menu principal. Alors parlons de l'histoire des jeux aussi parce que c'est, vous pourriez penser que, eh bien, vous savez, je ne pense pas que nous avons besoin d'une histoire de jeu et vous avez complètement tort parce que l'histoire du jeu est,
est-ce l'histoire du jeu sera le, Je ne vais pas dire le noyau, mais il est le noyau autour duquel le noyau est construit. Alors, quelle est notre histoire de jeu ? Tu es un roi et tu viens d'hériter du château de ton père. Des monstres, des cochons l'ont pris. Et vous devez tous les vaincre. Et vous devez passer par chaque pièce et essayer d'écraser chacune d'entre elles. Et aussi sur le chemin, vous devrez collecter d1 fois. Donc, cela rendra le venu beaucoup plus intéressant. Et comme vous jouez à travers, vous pouvez sentir que vous avez la capacité de prendre en
charge tout ce qui se passe dans le jeu et vous
avez une raison de tuer les petits cochons, pas seulement pour les tuer . Vous aurez une raison et vous collectez des diamants pour une raison parce que votre château en est infesté. Tu dois reprendre ta fierté. Ok, c'est un peu dramatique, mais vous comprenez le point. Vous avez toujours besoin d'une histoire pour votre jeu. Ensuite, nous allons parler de toutes les exigences techniques pour créer ce roi. Donc, comme vous pouvez le voir, on avait beaucoup de trucs. Donc, la première chose dont nous avons besoin est un jeu de tuiles pour l'arrière-plan et le premier plan avec quelques éléments. Donc j'ai choisi une tuile triste que je vous montrerai plus tard où je l'ai eu. Et je vais le laisser, bien sûr, jusqu'à ce que les ressources. N' hésitez pas à aller chercher vos propres chemins. Assurez-vous que vous avez un premier plan et une tuile d'arrière-plan pour notre jeu. Ensuite, nous allons utiliser les entrées du clavier pour contrôler notre gain. Nous allons ajouter une CAM suivre qui suivra le joueur ou le conquérant partout où il va et zoomer en fonction de son mouvement, comme vous l'avez vu dans la vidéo d'introduction, quand nous courons théoriciens, un certain zoom avant, lorsque nous sommes immobile ou au ralenti, il y a un certain zoom arrière et ainsi de suite et ainsi de suite. Et créera également un moyen automatique d'ajouter de l'arrière-plan à notre jeu. Cela signifie que cela va ajouter une ligne, nous allons ajouter des règles à notre carrelage et faire tout l'arrière-plan automatiquement remplir tout et nous faire gagner beaucoup de temps. Donc, nous allons parler de quelques fonctionnalités de gameplay plus qui auront. Comme vous pouvez le voir ici, notre petit joueur frappe l'air, mais même si le cochon est un peu loin, mais le mouvement des conquérants, nous l'avons déjà couvert, mais il va courir sautant et gagner le marteau. Comme vous pouvez le voir ici représenté dans notre capture d'écran, il y aura des dangers. Il y aura des bombes qui vont, ces bombes qui brûlent et explosent si nous sommes près et qu'elles peuvent réellement nous tuer. Nous aurons un point de départ et de fin, auront des portes que les conquis traverseront pour passer d'une pièce à l'autre. Et par chambre, je veux dire les niveaux de notre roi. Ensuite, nous aurons les micros et les micros, nos vies le long du chemin pour que le joueur ramasse marchant et tous les diamants que vous pouvez emporter avec vous. Maintenant, il est temps de relever votre défi, et votre défi sera de créer votre propre conception de jeu. Alors, trouvez une histoire pour notre jeu. Pensez à une histoire captivante, une histoire qui fait que quiconque est assis derrière l'ordinateur et qui va jouer à votre jeu, se sentir excité et lui donner raison. Donnez-lui la raison, donnez-lui la motivation d'aller tuer tous les cochons et de recueillir tous les diamants. La prochaine chose que vous devez trouver la mécanique de jeu que vous voulez. Peut-être que vous voulez ajouter d'autres mécanismes de jeu. Et je vous encourage complètement, même si vous ne savez pas comment mettre en œuvre ces mécanismes. Juste pour les écrire, gardez-les avec vous. Et en chemin, vous découvrirez comment les créer. Vous allez télécharger vos propres sprites et typeset. Et comme je vous l'ai dit, assurez-vous d'avoir le premier plan et l'arrière-plan. Je vais laisser les liens dans les ressources pour vous d'aller de l'avant et télécharger toutes les recherches pour tous les jeux de tuiles et sprites que vous voulez. Ou vous pouvez simplement utiliser la même chose, que amusant, comprendre quelles fonctionnalités vous voulez ajouter. Donc, comme je vous l'ai dit, nous avons ramassé des choses, nous avons grimpé les draps. Vous pouvez également ajouter vos propres fonctionnalités. Je ne suis pas sûr de ce que cela sera, mais par exemple, vous pouvez ajouter des power-ups. C' est une bonne idée. Alors écrivez cela aussi et comprenez cela par vous-même. Et comme je vous l'ai dit, cela va être très excitant et une pompe pour commencer à créer ce jeu. Et j'espère que vous aussi. Alors commençons notre voyage pour nous rassembler, et je vous verrai dans la prochaine vidéo.
17. Comment délimiter les sprites en unité: Bienvenue à tout le monde. Maintenant, nous commençons un nouveau projet qui est très, très, très excitant. Oh, ok, donc tout d'abord, nous allons créer notre projet. Alors ouvrez votre hub d'unité et allez dans ajouter de nouveaux. Ce sera donc un projet 2D. Et nous nommerons cette conquête du château à D. Et rappelez-vous, nous la gardons parce que nous en aurons besoin pour que le repo crée. Et maintenant, nous attendons que le projet soit créé. Je te verrai dans un peu. Bienvenue de retour. J' ai donc accéléré le processus de création du projet Unity en utilisant la magie de l'édition. Et maintenant, nous allons établir un nouveau rapport. Donc, ceci est de cube magique pour configurer une nouvelle ondulation, il suffit de cliquer sur le bouton plus là-haut. Vous pouvez fermer cet onglet et cliquer sur le bouton Créer ici. Nous cherchons donc notre chemin. Donc, où que vous ayez enregistré votre chemin, allez dans cela et cliquez sur le château conquête 2D. Sélectionnez le dossier, conservez-le plus longtemps, gardez le compte Créer un référentiel non coché. Pour l'instant. Cliquez sur Créer. Cliquez sur oui. Et maintenant, nous avons un repo. Donc, comme toujours, nous savons que nous devrions simplement cliquer sur la Bibliothèque, ignorer tout. Ignoré tout sous la Bibliothèque. Cliquez sur OK. Maintenant, nous allons dans le gitignore. W cliquez sur ouvrir et notre bloc-notes. Et vous devriez tout avoir en
copiant et en collant si vous ne vous souvenez pas comment nous l'avons fait, consultez le Je ne suis pas sûr de quelle vidéo. Je pense que c'est la deuxième vidéo de la section précédente. Et vous trouverez où vous pouvez obtenir le gitignore ou simplement Google il. Et maintenant, nous avons tout mis en place. Donc, nous allons simplement mettre en scène tous les commit et appeler ce commentaire initial. Cliquez sur Commit, et nous sommes prêts à partir. Donc la première chose que nous allons faire est d'
importer les sprites que je vous ai fournis dans les ressources. Alors allez-y et prenez-les. Cliquez simplement sur eux et faites-les glisser dans notre projet à droite ? Avant de commencer, je veux prendre un moment et expliquer ce qu'est un sprite. Donc, comme c'est un Sprite, Ce sera notre héros ou notre conquérant. Et comme vous pouvez le voir, c'est une image. Donc un sprite est un objet 2D, et cet objet 2D a une image graphique appelée texture. sprites sont donc des objets 2D et ils ont des images graphiques appelées textures. Et ils sont utilisés en ajoutant un composant appelé Sprite Renderer à un objet de jeu vide. Donc, nous créons un objet de jeu, nous y ajoutons un sprite et nous pouvons avoir une image graphique dessus. Maintenant que nous avons expliqué ce qu'est un sprite,
il est temps pour nous de créer notre terrain. Donc, avant même cela, il est temps pour nous de découper notre terrain. Donc maintenant, si vous cliquez sur la petite flèche juste ici, et vous pouvez voir que c'est une seule image. Donc ce qu'on doit faire, c'est qu'on doit découper. Donc, si nous cliquons dessus, vous pouvez voir ici dans l'inspecteur que nous avons beaucoup d'options et l'une d'entre elles comme le mode sprite. abord, vous devez vous assurer que votre type de texture est de sprite 2D et UI. Et le mode sprite devrait être multiple. Alors cliquez sur cela et appliquez tout et allez dans l'éditeur Sprite. Donc, comme vous pouvez le voir ici, nous avons toutes ces choses. Donc les premiers seront notre premier plan et les blessures du fond seront notre arrière-plan. Donc, en haut, à gauche, vous pouvez voir que nous avons plusieurs façons de trancher nos sprites. L' un d'eux est automatique. Alors essayons cela comme une expérience ou cliquez sur des diapositives. Nous pouvons voir que c'est les tranches assez bien, mais ce n'est pas ce dont nous avons besoin. Nous ne voulons pas que ce bloc soit une seule tranche. On veut le découper en quatre petits sprites. Celui-ci aussi, je pense plus que ça, je pense que celui-ci est neuf sprites. Celui-ci est pour les petits sprites. Alors, comment pouvons-nous faire ça ? Eh bien en fait et tranche, nous avons quelque chose qui est appelé grille par taille de cellule ou grille par nombre de cellules, utilisera la grille par taille de cellule. Et je sais qu'il devrait, la taille du pixel devrait être 32 sur 32. Donc on découpe ça, on clique sur tranche, et maintenant on a notre feuille de sprite tranchée en petits sprites. Ok, super. Et vous pouvez cliquer sur chacun d'eux et vérifier les informations à ce sujet. Donc c'est la pluie, c'est le terrain aussi, et chacun d'eux a un nombre. Maintenant, si vous avez le temps et que vous voulez être très méticuleux avec ce processus, vous pouvez en fait glaner, nommer chacun d'eux et en faire le vôtre. Mais nous n'avons pas besoin de ça honnêtement. Ok, super. Alors appliquez cela sur ce modèle ici. Appliquez ça. Et maintenant, nous avons nos draps tranchés, Excellent et correct. Et c'est tout ce que nous aurons à faire et il est temps de relever un défi. Et votre défi va simplement être découpé dans votre propre feuille de calcul. Importez donc le sprite que vous choisissez d'utiliser pour votre jeu. Je vous ai donné les ressources, le site Web où vous pouvez trouver des arts de jeu gratuits et simplement les importer, les
couper en feuilles de sprite pour l'arrière-plan et les piles de premier plan assurez-vous que vous avez l'arrière-plan et le premier plan. Et comme ils moins étape de ce processus, nous allons simplement créer un dossier. On appellera ça les sprites et on fera glisser le terrain à l'intérieur. Et une autre chose peut-être que nous allons changer cela et nommer ce niveau 0 parce que nous n'avons pas d'autres niveaux, simplement le niveau 0. Ok, donc ce projet sera génial. Il aura beaucoup de sprites, deux auront beaucoup de scripts. Alors commençons par une bonne habitude d'organisation pour la première vidéo, et je vous verrai dans la prochaine.
18. Cartes de mosaïques en unité: Bienvenue à tout le monde dans une autre vidéo étonnante. Et c'est surtout la meilleure vidéo, je pense que dans tout le cours, parce que nous sommes en train de créer notre plate-forme. Comme vous pouvez le voir ici. Nous avons fait une petite plateforme. Nous avons la carte de style ici sur la droite, nous avons à gauche aussi la grille de cartographie AOL et notre hiérarchie. Nous avons utilisé tous les sprites que nous avons découpés avant pour créer cette plate-forme ici. Alors ne perdons pas de temps. Je suis tellement excité pour cette vidéo. J' espère que tu l'es aussi. Alors je veux que tu puisses tout ton pouvoir créatif dans cette vidéo et je te verrai dans un peu. Ok, donc des cartes carrelées, qu'est-ce qu'on va faire ? Eh bien, la première chose qu'on a fait, c'est qu'on a nos feuilles de sprite. On les découpe en petites feuilles de sprite. Nous allons ensuite créer des actifs de tuiles. Nous allons prendre ces éléments de style et les ajouter dans notre palette de fichiers. Et enfin, nous utiliserons nos pilotes Kyle pour créer toutes les cartes tuilées. Oh, ok, super. Donc, revenons à l'unité, où nous allons, tout d'abord, aller à Fenêtre et chercher notre palette de tuiles, qui devrait être sous 2D et palette de style. Alors cliquez sur ça. Et maintenant, nous avons notre palais. N' hésitez pas à l'ancrer où que vous vouliez. J' ai l'impression de vouloir parler à côté de l'inspecteur. Rendez cela un peu plus grand parce que nous allons en avoir besoin plus tard. Prochaine étape, nous allons dans notre hiérarchie ici à gauche où nous n'avons rien à part la caméra principale. Donc, faites un clic droit et allez à l'objet 2D et recherchez la carte de tuiles. Lorsque vous cliquez dessus, nous pouvons voir qu'une grille a été créée. Ça s'appelle la grille et notre hiérarchie et une carte de tuiles. Donc, modifions le nom de la carte de style pour aller dans Inspecteur. Assurez-vous de passer de l'inspecteur à la carte de tuiles. Donc, la carte de tuiles change en arrière plan et en créer un autre. Donc un ingrédient, nous allons créer une autre carte de tuiles et nous appellerons le premier plan du cygne. Oh, ok, super. Et nous allons aussi renommer ceci de crédit en tuile, carte, a grandi. Tout est génial. Ce que nous allons faire maintenant, c'est créer une nouvelle palette de tuiles. Donc, je vais à la palette de tuiles et ici sous Créer un nouveau pilote de tuiles. Cliquez dessus. Et il vous demandera un nom, sera simplement nommé ce palais principal peut créer. Et il vous demandera où vous voulez le sauvegarder. C' est, ce sont votre dossier d'actifs. Alors allons de l'avant et créer un nouveau dossier appelé tuiles et enregistrez-le à l'intérieur de notre dossier de sélection de tuiles. Maintenant, nous avons un nouveau dossier qui est des fichiers et il a une palette de tuyaux principale. Et voici notre palette de tuiles. Alors. Qu' est-ce qu'on va faire maintenant ? Retournez dans nos sprites dans la hiérarchie à gauche et choisissez tous ces sprites. Alors allez-y et choisissez-les tous. Pour le faire plus vite. Cliquez sur le premier,
allez à la dernière, maintenez la touche Maj et cliquez dessus pour que vous choisissiez tout et faites-les glisser dans notre palette de tuiles. Et on devrait avoir un grand maître. Ok. Maintenant, revenez aux tuiles et à l'intérieur des tuiles, sélectionnez le dossier et enregistrez-les là. Alors attendez qu'ils deviennent des actifs de pile. Et ils devraient être maintenant o k. Donc, comme vous pouvez le voir, une énorme masse a été faite. Maintenant, bien sûr, nous allons déplacer tous ces éléments et les réorganiser. Maintenant, vous pouvez les réorganiser comme vous le souhaitez. Je le ferai plus tard. Je le ferai, ce sera le même arrangement que celui sur le terrain. N' hésitez pas à faire votre propre arrangement. Alors maintenant, c'est l'heure de la partie passionnante. Alors choisissons l'une de ces tuiles et commençons à dessiner. Mais comme vous pouvez le voir, ceux-ci sont très petits. Alors, quel est le problème ? Le problème est que lorsque nous choisissons nos sprites, ils sont en fait les pixels par unité est de 100. Alors comment allons-nous les rendre en forme ? On va changer ça à 32. Alors allez à notre sprite, cliquez dessus, allez à l'inspecteur et assurez-vous que le pixel par unité est 32. Appliquez cela et ils s'intègrent parfaitement dans les carrés R. Super, retour à notre palette de tuiles. Et maintenant, allons de l'avant et dessinons un arrière-plan simple, très, très simple. Donc nous pouvons aussi en apprendre un peu sur les choses ici. Ainsi, chaque fois que vous voulez dessiner, vous devez vous assurer sur quelle carte de tuiles active vous êtes. Donc, par exemple, je viens de tirer un coup de pneus qui étaient sur le sol, ce qui n'était pas correct. Vous devez vous assurer de choisir la bonne carte de tuiles active. Et sur cela, vous pouvez voir que nous avons ce pinceau avec lequel nous pouvons dessiner un seul fichier chaque fois que nous avons à côté de lui, ce dessin de boîte, que nous pouvons simplement
cliquer ici et le faire glisser et faire autant de boîtes que nous le souhaiterions. Nous avons ceci, choisissez où nous choisissons l'un d'entre eux et nous pouvons réellement les changer tous. Et maintenant, vous pouvez également expérimenter avec tout cela. Et on a enfin ça. C' est une gomme à effacer où on peut enlever tout ce que l'on ressent comme enlever. Alors dessinons ça à nouveau. Et maintenant, nous allons changer au premier plan. Et maintenant, quand nous sommes au premier plan, nous choisissons les tuiles pour le premier plan. Retour à l'arrière-plan. Assurez-vous que nous, tout est en arrière-plan et les choses
au premier plan sont toujours les tuiles pour le premier plan. Donc maintenant, si nous cliquons sur jouer. Ce sera notre vue de jeu. C' est cool que nous commençons à créer notre jeu. Excellent. Mais quelque chose que je tiens à souligner, c'est que nous devons nous assurer que nous travaillons sur les bonnes couches. Alors, qu'est-ce que je veux dire par là ? Eh bien, si nous revenons dans vu et nos palettes de tuiles, si vous cliquez sur l'arrière-plan, nous pouvons réellement dessiner sur notre premier plan, mais les tuiles, ce qui n'est pas très bon, nous devons nous assurer que quand jamais nous dessinons, notre premier plan est bien au premier plan. Alors comment on fait ça ? Nous le faisons en utilisant des couches de tri. Les couches de tri sont très, très qui va l'aspect. Donc, si vous allez dans la hiérarchie en arrière-plan, vous pouvez voir que nous avons une carte de tuiles. Sous cela, nous avons une carte de tuiles rendue. Maintenant, si vous voulez aller dans la documentation de l'unité et tout savoir sur tout, hésitez pas à le faire. Mais nous allons nous concentrer sur ces paramètres supplémentaires. Donc, si vous l'avez fermé, ouvrez finit par arriver. Et vous pouvez voir que nous avons des couches de tri et que nous avons des couches ordonnées. Et maintenant au premier plan, vous pouvez voir que nous avons ces calque de tri et calque ordonnée. Nous devons donc créer une couche de tri pour nos arrière-plans. Cliquez donc sur la couche de tri qui est maintenant par défaut et cliquez sur Ajouter une couche de tri. Donc, pour ajouter un calque de tri, il suffit de cliquer sur ce plus ici, et nous appellerons ce R pour le sol. Ajoutons un autre calque de tri et rendons celui-ci au fond. Maintenant, nous avons deux couches de tri et en dessous, et au-dessus, nous pouvons voir les balises, dont quelque chose qui est utile pour le codage, et les couches en dessous, ce qui est bon pour les collisions, parleront de ces plus tard. Alors retournez en arrière et au premier plan. Et maintenant, dans le calque de tri, au lieu de choisir par défaut le premier plan et pour l'arrière-plan, choisissez l'arrière-plan. Mais comme vous pouvez le voir ici, notre arrière-plan est toujours en face de notre premier plan. Pourquoi c'est ça ? Eh bien, si nous retournons dans les couches pour trier
les couches, celles ci-dessous seront rendues en premier. Donc, si nous montons l'arrière-plan et le plaçons au-dessus
du premier plan, le premier plan sera rendu devant l'arrière-plan. Et chaque fois que vous devez vous assurer que vous avez vos couches dans la bonne ascension ou dissension. Ok, excellent, sauve ça. Et maintenant, nous allons créer une plate-forme simple. Une plateforme très simple. Mais d'abord, notez, pas contesté, pas encore. abord, je vais utiliser la magie de l'édition pour réorganiser tous ces styles ici. Et ce ne sera pas quelque chose de très incroyable que vous pouvez faire avec la façon dont vous voulez le faire. Je vais tout simplement faire la même chose que notre arrangement original. Ok, je suis de retour de mon voyage de montage magique. Comme vous pouvez le voir, j'ai réarrangé toutes mes tuiles et j'ai oublié de faire quelque chose. J' ai oublié de t'apprendre à faire ça. Alors. Excusez-moi de le faire, cliquez
simplement ici sur Modifier. Lorsque vous cliquez dessus, vous avez effectivement accès à toutes ces tuiles. Donc, si vous vérifiez ici, vous pouvez réellement sélectionner une zone de la grille en utilisant S et ensuite vous pouvez la déplacer en utilisant AMP. Cliquez sur nous, cliquez sur l'une des tuiles, cliquez sur M, et maintenant vous pouvez le déplacer où vous voulez. Et lorsque vous avez terminé l'édition, il suffit de cliquer sur ce bouton d'édition et il en sauvera quatre. Donc, changeons cela en tant qu'OMB et sauvegardez et contrôlez S pour tout enregistrer. Et maintenant, c'est l'heure de votre défi. Et votre défi sera de créer votre propre plateforme. Créez donc les tuiles de premier plan et d'arrière-plan. Créez une nouvelle palette de tuiles et réorganisez les travaux dans ce bulletin comme je l'ai fait. Ou trouver votre propre façon personnelle ou de les réorganiser, créer une plate-forme à partir du premier plan avec un arrière-plan. Alors mettez la vidéo en pause maintenant. Réorganisez les tuiles de la façon dont vous souhaitez les réorganiser , puis créez une sorte de plate-forme. Ne vous inquiétez pas de combien la plate-forme devrait être. Incroyable ou génial. C' est juste pour une formation simple. Je le ferai plus tard. Mais arrêtez la vidéo dès maintenant et essayez de votre mieux. Comment t'es passé avec ça ? Je suis tellement excité de voir à quoi ressemblerait votre palette. Alors maintenant, je vais créer une petite tuile juste à l'intérieur de notre écran. Chien gratuit le jeu juste à côté de lui, et il est 16.9 grade. Pour qu'on puisse le voir. Mais pour l'instant, gardons simplement là. Et je vais créer une plate-forme juste à l'intérieur cette caméra et de ne pas vous ennuyer avec tous les détails et aller, encore une fois, utiliser le montage magique. C' est une si bonne magie. C' est mieux que la magie d'Harry Potter. Et je vais créer une grille ou écrire. Alors je te verrai entrer. Bonjour et bienvenue. Donc, comme vous pouvez le voir, j'ai créé une petite plate-forme juste ici. Et ce que cette plate-forme se compose, juste que j'ai fait un petit pour petit je plutôt grand mur ici, un obstacle. Peut-être que je le réduirai plus tard, j'ai fait une petite plate-forme ici où
on pourrait mettre, je ne sais pas, peut-être des diamants ou une boîte cachée. Puis j'ai fait ce genre de pas où notre joueur peut sauter dessus. Et c'est fondamentalement tout. Rien de trop fantaisie. Et j'espère que vous l'avez fait pour créer votre propre plateforme ou
que vous auriez pu attendre que je crée la plate-forme et ensuite vous en êtes inspiré. Mais ce que je veux que vous fassiez, c'est créer votre propre plateforme. Ne copiez pas le mien parce que c'est la meilleure partie du cours. Il est en fait de créer des niveaux en utilisant la magie incroyable des cartes de tuiles, beaucoup de magie dans cette vidéo et vous voir dans la prochaine.
19. 101 (2D): Bienvenue à tout le monde dans une toute nouvelle vidéo. Et cette vidéo, nous allons investir du temps. Oui, nous allons investir du temps pour nous épargner beaucoup de temps plus tard. Et nous allons le faire en créant les règles pour nos tuiles. Donc, comme vous pouvez le voir, et maintenant nous pouvons simplement créer automatiquement des tuiles. Ainsi, comme vous pouvez le voir, ils se remplissent automatiquement, ce qui est très cool et très utile. Je vais t'apprendre à créer ces règles. Je vais vous donner toutes les ressources nécessaires. Cela prendra du temps et certains comprennent, compréhension pour l'obtenir,
mais ne vous inquiétez pas à ce sujet. Tout sera expliqué. Donc première chose
que nous allons faire est d'
importer notre rôle de carte de tuiles extras 2D. Il y a deux façons d'y arriver. Vous pouvez soit aller dans un google et taper à l'unité extras, puis aller dans votre, dans le premier résultat, qui est GitHub et l'a
téléchargé, téléchargé à partir d'ici, vous obtiendrez un dossier zip et vous devez simplement l'importer. Tout d'abord extrait, puis vous le faites simplement glisser dans vos actifs Unity ou vous pouvez utiliser celui que je vous ai fourni les ressources. Je vais l'utiliser tout de suite. Donc, prenez simplement cette tuile de rôle que j'ai fournie, faites-la glisser dans Unity et placez-la à l'intérieur des actifs. Attends-le sur le port. Il vous donnera une longue liste de choses à importer. Il suffit de cliquer sur Importer ici, dans le coin inférieur droit. Attendez que ça finisse. Et maintenant, vous devriez avoir ce dossier juste ici. Lorsque vous obtenez ce dossier, vous pouvez aller dans les tuiles. Et vous pouvez simplement, allons de l'avant et mettre tout cela dans un seul dossier. Allons de l'avant et appelons ce dossier de pluie terrain. Allez-y, choisissez toutes ces options et faites-les glisser simplement dans les tuiles de terrain pour avoir plus d'espace. Et maintenant, si vous faites un clic droit sur votre ce que vous voulez, je vous recommande d'aller dans les tuiles, aller dans créer. Et vous pouvez trouver en haut juste ici que vous avez quelque chose de nouveau. 11 est une branche préfabriquée et l'autre est exclue. Donc, cliquez sur routeur et est allé pour cet ensemble de règles particulier, nous allons faire des règles pour notre arrière-plan. Alors allons de l'avant et appelons ce dépôt de règles d'arrière-plan. Et maintenant, si nous cliquons dessus et allons dans l'inspecteur, vous pouvez voir ici que nous avons une structure bizarre de Windows. Nous avons donc le sprite par défaut et nous avons les règles de tuiles, une liste qui est vide. Et nous pouvons ajouter à cette liste en cliquant sur ce bouton ici, et nous pouvons ajouter des règles. La première chose que vous devez faire est d'ancrer cet inspecteur. Il suffit donc de monter en haut à droite de votre écran et de cliquer sur ce petit cadenas ici. Et maintenant cela ne changera pas. Ce sera très utile. Donc maintenant, comme vous pouvez le voir, il nous dit qu'il n'y en a pas. Sprite. Nous devons donc ajouter un sprite par défaut. Et parce que nous travaillons sur le fond ne
sera de travailler que sur les sprites de fond. Alors allez-y et ajoutez ce sprite jamais aléatoire que vous voulez être la valeur par défaut. Et maintenant, nous allons commencer par créer nos règles de tuilage. Donc, la première règle sera pour une tuile qui devrait être au milieu, tout comme celle-ci. Ce qui ne l'a pas, n'a pas de côté ou il n'
a pas non plus un peu naturel ce que c'est. Ceux-ci sont appelés, ce sont pour les coins en passant, et cela deviendra tout clair, juste activé. Maintenant, nous avons créé notre première règle. Félicitations. Allons-y et ajoutez-le à notre palais de tuiles. Donc, vous pouvez soit créer une nouvelle palette de tuiles
simplement pour nos règles, soit vous pouvez ajouter ici les, surtout les piles par défaut toutes ajoutées dans celui-ci. Parce que c'est plus pratique, je crois. Il suffit donc de cliquer sur cet arrière-plan et de le faire glisser dans notre palette de tuiles et devrait, il devrait s'afficher ici. Donc maintenant, si nous cliquons sur celui-ci, nous pouvons réellement dessiner ces tuiles de règle. Tu vois ça ? Oh, ok, super. Et comme vous pouvez le voir, le, tous sont du même type. Mais si nous choisissons de créer des règles pour cela. Ainsi, par exemple, si nous cliquons sur celui-ci, comme vous pouvez le voir, tout change. Pourquoi c'est ça ? Eh bien, laissez-moi vous expliquer comment ces règles fonctionnent réellement. Alors voyons cette boîte de trois par trois ici. Et si nous
ajoutons, nous pouvons réellement ajouter ce genre de flèches. Et comme vous pouvez
le voir, plus nous ajoutons les changements moraux. Et ce que cela signifie est la flèche verte signifie qu'il y a une tuile au-dessus. Donc, quand le restyle au-dessus, à gauche, à droite et en dessous,
alors nous pouvons dessiner ce style. C' est donc une règle. Et si nous cliquons sur cette flèche verte, encore une fois, nous pouvons voir qu'elle devient un X rouge. Et ce que ce X rouge signifie qu'il ne dessinera que quand il n'y a rien à sa droite. Et nous pouvons voir ici o. et si nous cliquons ici, ça fait, eh bien, ça nous montre ce qui se passera si nous ajoutons un titre ici. Et vous vous demandez peut-être pourquoi sont toutes les autres tuiles de cette façon ? Eh bien, parce que c'est notre sprite par défaut. Alors, allons de l'avant et ajoutons une règle. Et gardons ceci comme ça parce qu'en fait c'est notre règle pour cette tuile particulière. Alors allons de l'avant et ajoutons dans une autre pièce. Et pour cette règle, revenons dans les sprites. Ajoute un coin sur le côté droit. Alors allons-y. Alors, que pensez-vous que la bonne diapositive devrait avoir comme règles ? Eh bien, je pense qu'il devrait en avoir un en dessous, 12ème, non ? Et un sur sa diagonale, et il ne devrait rien avoir de part et d'autre. Maintenant rien n'a beaucoup changé, mais c'est bon parce que nous allons ajouter une autre règle. Et pour cette règle, voyons ce que nous avons. Ajoutons ce 10. Et dans ce cas, si nous avons quelque chose à faire, ces
côtés et rien de ce côté, nous devrions l'avoir ici. Et c'est à peu près correct maintenant. Alors allons de l'avant et créons une règle secondaire et ajoutez-y celle-ci. Alors maintenant, si nous avons, par
exemple, qu'est-ce que cela devrait avoir ? S' il n'a rien à sa droite et qu'il a quelque chose à sa gauche, il devrait créer celui-ci. Une autre chose à propos de ces règles ici est que vous pouvez réellement
les changer et ils peuvent être soit pivotés miroir sur l'axe x ou y. Qu' est-ce que ça veut dire ? Eh bien, si nous cliquons sur celui-ci, vous pouvez voir qu'il fait pivoter toutes les règles. Donc, si nous ne voulons pas créer de règles
pour, par exemple, nous voulons créer une règle qui ressemble à celle-ci. D'accord ? Nous pouvons simplement cliquer sur le miroir, miroir sur l'axe des x, et il va créer cette règle pour nous. Mais nous n'en aurons pas besoin parce que nos actifs sont riches et qu'ils ont tout en eux. Donc maintenant je vais
créer un ensemble de règles qui est simplement cru que l'une parce que nous avions besoin, je vais créer un ensemble de règles. Et avant de le faire, je vais vous lancer un défi et votre défi va mettre en place vos propres règles. Parce que je peux croire même que vous pouvez créer des règles battues que moi pour l'arrière-plan. Donc, la première chose est importée dans le fichier extras que j'ai fourni dans les ressources. Ensuite, vous devez définir vos règles pour le carrelage
automatique et utiliser les règles pour peindre votre propre plate-forme. Alors allez-y et faites de votre mieux. Et si vous pensez que vous ne pouvez même pas trouver les règles
les plus simples que j'ai fournies dans les ressources. Aussi, les règles que j'ai filmé tout à l'avance, donc je te verrai dans un peu. D' accord. Bienvenue de retour. Alors, comment as-tu réussi avec ça ? J' espère que vous avez au moins essayé de créer des règles. Alors allons te montrer, laisse-moi te montrer ce que j'ai fait. Donc j'ai créé, je pense qu'il s'agit de 17 règles. Et comme je les ai fait, j'ai commencé à regarder différentes façons dont chaque tuile pouvait fonctionner et comment elle devrait être positionnée. Bien sûr, si vous n'avez aucune idée de comment créer les règles, j'ai fourni aux Juifs des photos et, ou des captures d'écran que j'ai faites pour que vous puissiez les copier et utiliser mes tuiles. Mais rappelez-vous, les miens ne sont pas parfaits. Et j'ai oublié beaucoup de tuiles parce que c'est une liste très exhaustive. Je veux créer un exemple pour vous de créer vos propres règles. Ce ne sera pas facile, ce ne sera pas fait dans dix minutes. Je pense que cela m'a vraiment pris. Je pense à deux peut-être 2,5 heures pour finir tous et les tester et s'assurer que tous fonctionnent. Donc, pour montrer comment fonctionne le carrelage automatique, continuons et choisissons d'effacer quelques d'entre eux. Ainsi, comme vous pouvez le voir, lorsque nous les effacons, nouvelles tuiles sont créées pour envelopper autour. Et comme vous pouvez le voir, nous avons une erreur ici. Et puis il peut y avoir beaucoup d'autres erreurs, mais certaines d'entre elles ont fonctionné comme celle-ci, par
exemple, fonctionne parfaitement bien. Alors allons de l'avant et supprimons toutes ces choses et menons toutes ces choses. Et essayons-les sur notre plateforme et voyons comment ils fonctionnent. Alors allons de l'avant et cliquez sur cela, choisissez les tuiles automatiques. Et rappelons-nous de toujours l'avoir en arrière-plan. Donc, créons quelque chose ici, et puis nous allons créer quelque chose juste ici. Et comme vous pouvez le voir, ils se remplissent automatiquement. Et c'est parfait, je suppose qu'on va voir s' il y a quelque chose ici. Je pense que nous devons créer une autre règle pour cela. Je crois que c'est celui où vous n'avez que deux de chaque côté. Alors voyons. Ok, alors allons de l'avant et créons une nouvelle règle et voyons laquelle nous devrions utiliser. Donc nous voulons couvrir, nous voulons couvrir cette zone ici en haut et une autre par ici. Donc nous choisirons
lequel, lequel, ok, celui-ci. Alors faisons-le glisser ici. Comme vous pouvez le voir, il se remplit automatiquement, mais ce n'est pas ce que nous voulons. Nous voulons réellement créer une règle qu'il suivra toujours, parce que cela nous sera toujours par défaut. Donc, il n'a pas de tuile en haut à gauche. Il n'a pas de lien en bas à droite. Et il a des tuiles des deux côtés et des vœux de dessus et au-dessous et de chaque côté. Excellent. Donc maintenant, vous pouvez voir que nous avons notre configuration de règles juste ici. Nous pouvons automatiquement carreler tout l'arrière-plan. Cela rend notre plate-forme beaucoup plus statique que d'avoir tous les mêmes. Vous pouvez créer une porte, également une règle pour vos tuiles de premier plan. Je l'ai essayé. C' est méticuleux, prend du temps, et je vous encourage à essayer de créer cela aussi, cela rendra votre vie 20 fois plus facile. J' espère que vous avez apprécié la vidéo. J' espère que vous êtes excité comme je suis à ce sujet dans la prochaine vidéo, je pense que sera finalement ajouter notre joueur ou un conquérant nous, appelez-nous, nous allons l'appeler notre conquérant. Je te vois dans la prochaine vidéo.
20. Ajouter nos premières animations: Bienvenue, mes collègues développeurs de jeux. Comme vous pouvez le voir, nous avons créé, enfin, nous avons créé un joueur et afficher ou est notre conquérant, nous l'appellerons Ginny. Donc Jimmy ne fait rien pour l'instant. Mais si nous cliquons sur le jeu, nous pouvons voir que notre conquérant jimmy
a en fait une animation au ralenti qui tourne juste en dessous. Je t'apprendrai tout ce qu'on a fait. Vous aurez un grand défi. Donc je veux que tu me donnes toute ta force de concentration et je te verrai dans un peu. Ok, donc la première chose que nous allons faire, c'est que nous
allons annuler ça et nous allons supprimer toutes les choses inutiles que nous avons ici. Alors allons de l'avant et supprimons tout cela. Zoom arrière et allez à Arlen Specter, sauvegardé ça. Ensuite, nous allons et créer un objet de jeu vide et faire le plus petit dans ne pas besoin que grand. Cliquez dessus pour supprimer un peu plus grand et nous appellerons cet objet de jeu notre couche. Et ce calque sera réinitialisé au milieu de notre écran. Et honnêtement, c'est la partie la plus excitante de toute création de jeu lorsque vous commencez à faire votre joueur. Alors passons en revue quelques mots techniques. Animation 101 d'abord, la première chose que vous devez apprendre en tant que contrôleur d'animateur. Ainsi, un contrôleur d'animateur vous permet d'organiser et de maintenir un ensemble de clips d'animation. Vous verrez ce qui est activé. Et le composant Animator utilisé pour affecter des animations aux objets de fin de jeu dans votre scène. Donc, si vous avez un objet de jeu et que vous voulez avoir des animations, vous lui attribuez un composant Animator, et ce composant animateur obtient un contrôleur d'animateur. C' est un peu déroutant. On verra tout. Animations à plusieurs sprites rendus l'un après l'autre. Donc, il dit ensemble de sprites l'un après l'autre, nous les mettons ensuite. Tout comme la vidéo fonctionne où c'est un ensemble d'images l'une après l'autre. Et enfin, un moteur de rendu sprite dont nous avons parlé précédemment, rend un sprite pour les graphiques 2D. Ok, a grandi Rick. Revenons donc à Unity. Et à partir de l'unité, nous allons importer le sprite. Je vous ai laissé, toi et leurs ressources, pour notre humain. Alors allons-y et allons-y. Et ici, vous pouvez trouver que nous sommes tombés inactifs, sauter et courir. Donc, nous allons utiliser pour l'instant l'animation inactive. Mais pour créer les autres animations, nous avons le Ron et tous sauter. Alors cliquez sur le ralenti et faites-le glisser dans notre unité. Donc, nous l'avons juste ici. En fait, on ne veut pas, on voulait à l'intérieur des sprites. Alors fermons cela et maintenant créons un dossier. D' abord pour notre. Conquérant, qui appelle ce conquérant. Et notre conquérant aura ce sprite. La première chose que nous allons faire, c'est que nous allons trancher notre conquérant. Mais avant de le faire, je
veux comprendre les mesures que nous allons prendre. Nous allons donc importer la feuille de calcul de concordance et les découper. Nous allons créer l'objet joueur. Nous l'avons déjà fait et y avons ajouté un moteur de rendu sprite. On va le faire tout de suite. Nous sommes créés va créer une animation inactive. Nous allons ajouter un animateur à notre lecteur, créer un animateur de joueur et ordonné d'y ajouter toutes les animations, ajouter une animation inactive à l'Animateur, et nous allons assigner l'animateur à notre lecteur. Alors allons de l'avant et faisons toutes ces choses. Tout d'abord, découpons notre. Donc, nous allons aller à plusieurs fera les pixels par unités 32, et nous allons appliquer tout cela ira dans notre éditeur de sprite. Donc, comme vous pouvez le voir ici, nous avons 1234567891011 Sprites, et ils sont répartis sur 800. Ci-dessous, vous pouvez le voir huit cent cinquante, huit cent cinquante huit. Si vous faites le découpage automatique, vous pouvez voir qu'il fait assez bien le travail. Mais le problème est que lorsque nous allons ajouter d'autres animations à notre conquérant aura un léger problème avec cela. C' est pour ça que je vais le découper d'une manière manuelle. Et ça va être 58 par 58. On a tranché ça. Et comme vous pouvez le voir, ce n'est pas très précis. Pourquoi c'est ça ? Parce que nous voulons avoir une sorte de décalage. Pourquoi nous avons besoin de cette compensation ? Eh bien, parce que 50 par 58 ne le coupe pas. Et on va faire un rembourrage, je veux dire un décalage de 20. Non, je voulais dire un rembourrage, donc un rembourrage de 20. Et maintenant, nous pouvons voir qu'ils sont tous au milieu de, la chose la plus importante est d'avoir notre conquérant et site au milieu du sprite. Donc tous sont au milieu. Et Oh, ok, super. Alors tranchez ça, appliquez tout ce que vous pouvez. Comme toujours, je vous ai dit que vous pouvez les renommer si vous voulez aller dans la gorge. Donc nous avons coupé nos sprites. Maintenant, il est temps d'ajouter notre moteur de rendu. La façon dont nous faisons cela est que nous allons déplacer ceci ici et nous allons ajouter un composant. Et ça va être un rendu de sprite. Et, et notre rendu sprite, nous avons ce sprite par défaut. Choisissez quelqu'un que vous voulez et mettez-la à l'intérieur. Et nous avons notre couche, un taux de filles. Maintenant, ce que nous devons faire est d'ajouter un animateur à ce lecteur, ou en fait un composant Animator dont nous avons parlé. Alors faisons ça. Il suffit de taper et il peut parler. Maintenant, nous avons un contrôleur d'animateur et cet objet peut maintenant commencer à avoir des animations de retour dans les actifs. Créons un dossier. On appellera ce dossier. Et des animations. Et à l'intérieur des animations, nous allons créer un animateur, donc contrôleur animateur. Et on appellera ça le joueur. Maintenant, revenons qui agir devrions-nous faire maintenant ? Ok, donc l'étape suivante sera, nous allons ouvrir notre fenêtre pour une animation. Alors allez dans l'animation et cliquez sur la fenêtre Animator, animation animateur. Et nous avons l'animateur, mais nous allons faire le dossier d'une manière différente. N' hésitez pas à l'ancrer comme vous le souhaitez. C' est mon style personnel, donc je vais ancrer le projet et la console l'un à côté de l'autre. Et je vais ancrer le poids de l'animateur, et je vais ancrer l'animateur juste ici en dessous de K. Vous devez faire quelques restructurations ici. Juste comme ça, et c'est parfait. Voici notre animateur juste en dessous de notre scène. Et nous ajouterons aussi une fenêtre pour les animations. Donc animations et l'ancrer à côté de l'animateur. Juste comme ça. Ok, super. Ensuite, nous allons créer une animation et l'ajouter à notre animateur. Donc, comme vous pouvez le voir, nous avons déjà quelques états. C' est ce qu'on appelle les états. C' est l'état d'entrée, Ceci provient de n'importe quel état, et celui-ci ici est un état de sortie. Donc, nous allons créer une animation meilleure partie de notre jeu. Retournez au conquérant des sprites. Et la façon dont nous créons des animations est de choisir tous les sprites que nous voulons. Donc, comme je vous l'ai déjà dit, cliquez sur le premier, allez à la dernière, maintenez Maj, Cliquez sur eux, vous avez tous choisi, faites un clic droit dessus et allez dans Créer, et descendez dans l'animation. Donc, cela va créer une animation. On appellera ça au ralenti. Au ralenti. Ok, super. Maintenant, nous avons une animation de ralenti pour notre joueur. Faites simplement glisser cela dans l'animation. Et à l'intérieur de l'animation, nous devons maintenant ajouter cette animation au ralenti, animateur 2D. Donc, nous faisons cela en cliquant simplement sur, Cliquez sur l'élargissement et faites-le glisser dans l'animateur. Et maintenant, nous avons une animation au ralenti pour notre joueur. Une chose que nous devons également nous assurer est que nous cliquons sur l'animation et ajoutons un temps de boucle parce que nous ne le faisons pas. Il fera cette animation une fois et s'arrêtera. Je clignote est une animation que nous voulons avoir encore et encore et encore et encore. Alors cliquez sur ça. Sauvegardez tout cela, et n'oubliez pas d'aller au joueur. Et dans le contrôleur de l'animateur, il vous demandera un contrôleur. Vous pouvez soit faire glisser ceci ici ou vous pouvez cliquer sur le petit cercle et ajouter l'animateur du lecteur. Sauvegardez ça. Et maintenant, nous allons cliquer sur jouer et voir ce que nous avons fait ou quoi que ce soit fonctionne du tout. Donc si on retourne voir, on peut voir que notre joueur bouge et qu'il tourne au ralenti woo, woo, oh, ok, super. Très excitant. C'est très excitant, mais il y a un problème. Si nous prenons notre joueur dès maintenant et que nous les faisons glisser dans notre plateforme, nous ne pouvons rien voir. Alors, où est-il ? Quel est le problème ? Le problème aussi ? C' est ton problème parce que tu vois ce que j'ai fait là-bas. En fait, j'ai changé tout ce que les étapes en je défie parce que peut-être que tu regardes et que tu ne fais rien aussi. C' est donc votre chance de relever le défi. Votre défi est donc de faire toutes les choses que nous avons déjà faites. Vous pouvez le regarder à nouveau. Peut-être que tu fais déjà tout avec moi et que tu mets la vidéo en pause. Mais si tu ne l'es pas, c'est le moment. Et votre défi supplémentaire est d'utiliser les calques de tri pour rendre notre joueur visible devant l'arrière-plan. Nous avons donc couvert les couches de tri avant. Je pense que tu as assez d'habileté pour tout faire. Et je te verrai dans un peu. Bienvenue de retour. J' espère que vous avez fait de votre mieux et que ce défi, j'espère que vous venez de regarder l'écran. Donc, nous allons choisir joueur va aller dans le rendu sprite. Et nous voyons ici que nous avons le calque de tri comme nous l'avions pour le premier plan et l'arrière-plan. Donc, si nous cliquons sur Default, nous n'avons pas de joueur et nous pouvons ajouter un calque de tri. Alors allons-y et faisons-le. Donc une nouvelle couche, nous appellerons cette couche profonde, Couche. Calque, Calque. C' est amusant à dire. Et nous le mettrons devant l'arrière-plan et derrière le premier plan, même s'il ne passera pas sur le premier plan ou derrière lui. Mais nous allons le rendre comme ça. Sauvegardez tout cela dans le Lecteur et choisissez le calque de tri pour être le joueur. Donc maintenant notre joueur, notre joueur est sur la couche de joueur, disons cela dix fois. Et maintenant je, en fait, je pense que notre joueur est juste un peu assis centre commercial, je pense que va le rendre plus grand. Allons donc dans les sprites. Et comme nous le faisons,
nous choisissons les conquérants, les dramaturges, et nous en ferons 30. Donc, si nous faisons ce 13, Cliquez sur Appliquer, il devient juste un peu plus grand, juste pour qu'il puisse être vu. Mais si ce logo de l'appareil photo et ici vous dérange, ça me dérange. Vous pouvez effectivement cliquer ici sur les gadgets et vous pouvez faire toutes les icônes est plus petite. Vous pouvez même les faire disparaître. Ok, super. J' espère que vous allez relever ce défi. J' espère que vous êtes excité comme moi parce que notre joueur est en train bouger et que nous avons insufflé une certaine vie à notre jeu. Je te verrai dans la prochaine. Voici Michelle du futur. Désolé de vous interrompre. Mais je veux que tu fasses quelque chose que nous n'avons pas fait jusqu'ici. Et c'est engager nos changements. Peut-être que vous avez fait ça et je vous félicite. Mais si vous ne l'êtes pas, c'est le moment idéal pour commencer à tourner. Comme vous pouvez le voir, je l'ai fait à chaque vidéo. Donc découper des feuilles, créer des palettes, créer une plate-forme et les outils. Et maintenant, nous allons ajouter l'animation. Nous allons donc valider ce changement et ajouter une animation ou ajouter des animations inactives. Donc, si vous n'avez pas fait les repos ici, c'est un bon moment pour commencer parce que nous allons
faire beaucoup de choses dans les prochaines vidéos. Alors je te verrai.
21. Transitions d'animation: Bienvenue à mes collègues développeurs de jeux pour une toute nouvelle vidéo. Et celui-ci est très excitant parce que nous allons apprendre plus sur le nôtre, d'autres animations et encore plus de transitions. Ainsi, comme vous pouvez le voir ici dans notre animateur, nous avons ajouté deux nouveaux états qui sont l'escalade et la course à pied. Et nous avons ajouté des transitions entre eux avec également des paramètres qui nous permettront de faire ces transitions. Et maintenant, si nous cliquons sur le jeu, nous pouvons réellement prendre notre joueur de l'animation de repassage dans l'animation de course. Et nous aussi une animation d'escalade de ce que nous avons. Je suis donc très excité pour cette vidéo. Je l'espère. J' espère que tu l'es aussi. Alors allons y entrer. La première chose que nous ferons est d'aller ajouter les sprites pour courir et le client. Donc, pour la course, nous avons cette course sprites et 40 escalade. Je vais utiliser la chute et le saut parce que nous n'avons pas les animations d'escalade réelles, mais je voulais inclure cela dans notre projet. Alors allez-y, cliquez sur tous ces éléments et faites-les glisser dans notre unité. Donc, nous avons saut, nous avons le, soit l'Iran et par défaut. Pour l'instant, nous allons simplement nous concentrer sur la course à pied. Donc, comme vous le savez, c'est une étape que nous avons fait plusieurs fois. Allons-y et cliquez sur courir. Rendez-le multiple, faites la taille de pixel 30. Parce que, comme vous vous en souvenez, nous avons augmenté de taille. Sauve ça. Et oui, je voulais postuler, retourner à R1 et pour une raison quelconque, d'accord, donc aller à Sprite Editor, et nous avons ces sprites, c'est aller à la grille par taille de cellule. Il devrait être 58 par 58 avec un rembourrage de 20, comme je me souviens, oui, exactement. Ok, alors appliquez ça. Maintenant, nous avons nos sprites. Allons-y et cliquez sur tous comme nous l'avons fait avant. Vérifiez-les tous. Faites un clic droit Allez à créer une animation. Et nous appellerons ça la course chronique, grands vêtements qui prennent courir dans des animations. Et plus tard, nous allons créer un dossier. Alors maintenant, nous allons ajouter l'état d'animation en cours d'exécution à notre, un animateur à courir juste là. Donc maintenant, c'est un peu délicat, mais nous allons zoomer, déplacer cette sortie, sortir pour entendre. Et maintenant, nous avons le ralenti et la course l'un à côté de l'autre. Alors, comment allons-nous dire à notre animateur que nous voulons passer du ralenti à la course. Eh bien, si vous faites un clic droit sur le ralenti, vous pouvez réellement faire une transition. Alors faites cette transition et poussez la flèche et vers la droite. Et si vous cliquez sur cette transition, comme vous pouvez le voir, nous avons beaucoup d'options et beaucoup de paramètres aussi. Laisse-moi te dire un peu ici. Parlons des transitions. Nous avons un peu de mélange ici entre les animations, mais nous ne voulons pas que, comme vous pouvez le voir, nous avons ce mélange juste ici et nous pouvons en fait. Retirez tout ce mélange. Donc, il passe immédiatement de la marche au ralenti à la course. Et nous allons le faire parce que nous avons déjà très bon pour les animations. Donc, nous pouvons simplement aller dans la durée de transition et la mettre à 0. De cette façon, il n'y aura pas de décalage entre les animations. Maintenant, nous avons le ralenti en marche. Mais comment va-t-il savoir que nous voulons vraiment emprunter cette voie ? Eh bien, nous le faisons en utilisant les paramètres ici à gauche. Alors passez des couches en paramètres. Comme vous pouvez le voir, nous avons une liste vide. Donc, voici où nous commençons à ajouter des paramètres et nous pouvons ajouter et quelques paramètres. Nous pouvons ajouter un flotteur et un entier, un booléen ou un déclencheur. Pour l'instant, nous allons utiliser un booléen et ce booléen sera appelé en cours d'exécution. Nous voulons donc passer à la course à pied. Nous devrons utiliser le booléen en cours d'exécution. Et pour l'ajouter sous le, si nous cliquons sur les transitions, nous avons les conditions juste ici. Et cette condition, c'est vide. Alors cliquez sur plus un atome. Il ajoute automatiquement la course parce que nous n'avons rien d'autre à ajouter. Et maintenant, si nous cliquons sur le jeu, nous pouvons voir que nous sommes en ce moment au ralenti. Et si nous cliquons sur ce booléen, nous allons dans la course, mais il le fait, n'est-ce qu'une seule fois ? Pourquoi c'est ça ? Je vais vous donner un mini défi maintenant pour le comprendre. Ok, assez. Voyons donc, courir devrait être dans une boucle. Sauvegardez ça en jeu. Et maintenant, si on clique sur le booléen, il commence à courir et il continue à courir pour toujours. Pourquoi c'est ça ? On veut faire ce beurre. Nous allons donc ajouter une transition de la course à l'ouverture des yeux. Et cette transition aura également une durée de 0. Il est conditionné ici sera en cours d'exécution, mais quand il est tourné à faux, sauvegardez cela à nouveau. Cliquez sur jouer. Et maintenant notre joueur comme repassage. Et maintenant, il court et maintenant il ne court pas et maintenant il court. Et maintenant, il ne fuit pas. Ok, donc c'est très cool. C' est un très excitant et c'est un excellent moment pour vos défis soviétiques de créer l'animation d'escalade à des sprites déclinants importants à partir de ressources. Coupez-les et dimensionnez-les de manière appropriée. Créez une transition entre le ralenti et l'exécution. Et enfin créer une transition de déclenchement 40. Alors pause la vidéo maintenant, j'ai donné, je vous ai donné toutes les étapes dont vous avez besoin. Je veux que tu essaies de ton mieux. Alors je te verrai dans un peu. Bienvenue de retour. Alors, comment as-tu réussi avec ça ? Allons de l'avant et faisons le défi. Donc la première chose que nous ferons est d'aller dans notre sprite du Congrès. Et comme je vous l'ai dit, utilisera l'automne et l'animation de saut afin de créer notre animation. Donc, ce sera un peu délicat. Et maintenant, nous allons à notre chute. Donc notre faux devrait l'être. Trente-deux, et nous le rendrons multiple même si nous n'avons pas besoin de le faire. Mais parce que nous allons trancher le sirop à notre façon. Alors qu'est-ce que 58 par 58 s'appliquent ? Nous n'avons qu'un seul sprite, et ici aussi nous n'avons qu'un seul sprite. Alors appliquez ça. N' oubliez pas de le faire 30, pas 3416 tranché, appliquez. Correct. Maintenant, nous sommes prêts à utiliser ces deux-là. Donc, cliquez sur ceux-ci, cliquez avec le bouton droit de la souris et créez une animation, et nous appellerons cette doublure. Donc, escalader l'animation dans notre dossier d'animation, et nous l'ajouterons dans notre animateur, créera une transition de l'un ou l'autre des liens vers l'escalade. Et ils sont passés de la montée à la marche au ralenti va également désactiver la durée de transition sur les deux d'entre eux. Et nous allons créer un nouveau paramètre, qui sera un booléen. Et on appellera ça l'escalade. L' escalade. Et maintenant, nous allons ajouter cette condition à de la marche au ralenti à l'escalade. L' escalade devrait être vraie, et de l'escalade au ralenti, l'escalade devrait être fausse. Sauve ça. Cliquez sur jouer pour le mettre en boucle. Je ne suis pas sûr. Essayons. Alors grimper et ça s'arrête parce que nous ne l'avons pas mis en boucle, sauvegardez ça encore. Et maintenant, si on clique sur l'escalade, il commence à grimper, mais comme vous pouvez le voir, c'est super rapide. Alors allons de l'avant et jouons avec notre animation. Comment on fait ça ? Nous avons donc un tabloïd d'animation que nous ne les avons pas encore utilisés. Donc, de l'animateur à l'animation, et comme vous pouvez le voir ici, nous avons cette escalade. Si nous cliquons sur joueur dans la hiérarchie, nous avons l'élargissement, Nous avons la course, et nous avons l'escalade. Si vous cliquez sur l'un de ces, par exemple, le ralenti, vous pouvez voir qu'il nous indique quelles choses changent pendant l'animation. Par exemple, ici la chose qui change est le sprite. Donc, nous pouvons réellement le prendre image par image ou le jouer ici. Et nous pouvons voir que notre joueur bouge avec le ralenti. Et vous pouvez voir chaque cadre. Et vous pouvez aller de l'avant en arrière, le rendre plus petit, le rendre plus grand. Donc on va l'utiliser pour l'escalade. Pourquoi le coût ? Comme vous l'avez vu, l'escalade est extrêmement rapide et nous voulons la ralentir un peu. Alors, comment allons-nous faire ça ? Eh bien, va d'ici à ici, donc on va en ajouter un autre. Alors copiez ça. Cliquez sur Contrôle C. Allez au cadre où vous voulez mettre ce sprite et Control V. Ok, alors maintenant nous avons ces deux. Eh bien, en fait, choisissons ces deux. Control-C, Control-V. Et puis à nouveau source trois fois. Faisons 1 seconde. Ok, voyons comment ça marche. Cliquez sur jouer. C' est encore un peu d'abord. Mais au moins il le fait plusieurs fois. Et nous pouvons en fait, nous allons les démonter si nous choisissons tous ces, et c'est ce que nous allons supprimer les deux derniers et choisir tous ceux-ci. Et on peut les étaler sur une seconde. Et maintenant, si nous cliquons sur le jeu, sera un peu, quelque chose va mal, non ? Pourquoi c'est ça ? Parce que le dernier cadre, eh bien,
en fait, ils ne sont pas étalés correctement, alors étalons-les correctement. Donc c'est sur 68 sur l'un. Et la dernière image devrait être la même que la première image. Alors mettons-nous celui-là. Et maintenant, si nous cliquons sur Play, il devrait être très, très petit. Donc une dernière étape avant de partir, je veux entrer dans le joueur. Je veux aller dans l'animateur en fait, et je veux supprimer l'heure de sortie. Comme vous pouvez le voir, nous avons quelque chose ici qui s'appelle l'heure de sortie. Et cela est utilisé lorsque vous voulez revenir à
l' animation précédente ou passer à l'animation suivante après un certain temps. Et nous ne voulons pas cela maintenant, l'
utiliserons à l'avenir. Allez dans chaque transition et supprimez l'heure de sortie. Et nous avons fini. Alors sauvegardons ça. Cliquez sur jouer et voir ce que nous avons. Donc nous avons notre joueur qui tourne au ralenti. Et si on clique sur la course, il commence à courir et on amplicon de courir, il s'arrête et il grimpe aussi. C' est cool ? Sérieusement, c'est la partie la plus cool. Et j'espère que vous avez apprécié la vidéo. J' espère que vous avez beaucoup appris. Et n'oubliez pas de sauver et le repo. Et je te verrai dans la prochaine vidéo.
22. Ajouter des collisions 2D: Bienvenue, tout le monde. Je voulais juste te rappeler le travail incroyable que tu as fait jusqu'à présent. Dans cette vidéo, nous allons ajouter un corps rigide et un collisionneur à notre joueur, ajouterons également des collisions à notre environnement, comme vous pouvez le voir ici, qui feront ou ne pourra pas notre joueur à atterrir à la surface de notre premier plan. Donc maintenant, si nous cliquons sur le jeu, notre joueur se tient en fait à la surface. Alors commençons. Ok, alors commençons par ajouter un corps rigide à notre joueur. Mais avant de faire ça, je pense que c'est un bon moment pour nous aussi. Joueur préfabriqué. Alors fais ça, allons dans nos actifs. Cliquez avec le bouton droit de la souris
et créez un dossier, et nous nommerons ce dossier prefabs. Allons de l'avant et préfabriquons notre couche. Donc maintenant, nous avons un joueur préfabriqué, ce qui se sent bien. Revenons à notre joueur. Allons de l'avant et ajoutons un corps rigide à notre couche. Body So Rigide 2D. Et nous nous assurerons que nous l'avons comme dynamique, sauvegardons cela et appliquons à notre préférence. La façon dont nous faisons que nous allons écraser, cliquez sur le bas et il y aura une application o. ok, super. Avant de continuer, je voulais prendre une seconde et parler de corps rigides à la fois de plus. C' est donc un composant ajouté à un objet de jeu qui le soumet. Deux ne devraient pas être TPI, il devrait être à la physique, les forces du moteur. Et nous avons de nombreux types de corps de Rigide Body 2D. Nous avons donc une dynamique, qui a une masse finie et est affectée par la gravité et d'autres forces. Nous avons une cinématique qui n'est pas affectée par la gravité et d'autres forces. Et nous avons statique qui se comporte comme un objet immeuble. Oh, ok, super. Maintenant, de retour dans Unity. Et parce que nous avons un corps rigide, maintenant, si nous cliquons sur le jeu, notre joueur tombe à travers le sol. Pas très utile, mais c'est un pas en avant. Alors maintenant, c'est l'heure de votre défi. C' est important d'un défi précoce, mais je pense que vous avez couvert. On a déjà parlé de collisions. Alors maintenant, il est temps d'ajouter le collisionneur approprié à votre joueur. Vous devez ajouter une collision à l'environnement. Et vous devez vous assurer que votre joueur atterrit sur la plate-forme sans tomber à travers. Alors arrêtez la vidéo maintenant si vous sentez que vous avez des compétences pour faire ça, F rien, attendez quelques secondes et j'aurai raison avec vous. Oh, ok, donc les collisionneurs, ils sont très utiles. Alors, allez dans le joueur. Fermons ce corps rigide. Et allons de l'avant et ajoutons un collisionneur. Donc je pense que nous allons ajouter un Collider 2D à notre joueur. Et comme vous pouvez le voir, notre jeu ou notre collision de boîte est un peu trop grand pour notre joueur. Donc on va aller de l'avant et on va le réduire. Et vous pouvez le faire comme vous voulez. Cela dépend de votre préférence au gain, combien vous voulez faire la vie Foxconn grande ou petite. Mais ce que vous devez garder à l'esprit, c'est que ses pieds devraient toucher le fond du collisionneur. Alors faisons-le si grand. Et cela est simplement basé sur vos préférences. J' aime le garder juste plus petit que sa taille réelle pour rendre le jeu un peu juste. Donc, si vous faites le collisionneur de boîte plus grand, cela rendra le jeu un peu plus difficile. Et si vous le réduisez, il sera plus facile pour vos joueurs. Donc je pense que c'est assez bon. Donc, enregistrez cela et comme toujours, allez remplacer et appliquez-le au préfabriqué. Donc maintenant, si nous cliquons sur le jeu, notre joueur tombe toujours à travers. Pourquoi c'est ça ? Parce qu'on n'a pas de collisionneurs au premier plan. Alors, allons-y et ajoutons quelques aller au premier plan. Et si vous arrivez à ce point et que vous ne pouviez pas continuer, ne vous inquiétez pas car c'est quelque chose vous allez ajouter une carte de tuiles appelée plus léger. Alors allons dans la carte des tas. Et comme vous pouvez le voir, toutes les tuiles de premier plan ont été, ont maintenant un collisionneur sur eux. Mais le problème est que si vous zoomez, vous pouvez voir ou vous ne pouvez pas. Mais si vous zoomez beaucoup, vous pouvez voir qu'il y a un minuscule, minuscule,
minuscule, entre les collisionneurs. Et croyez-le ou non, cela causera des problèmes pour nous plus tard, surtout si le joueur bouge ou descend une vitesse active très rapide, il peut passer par ces collisionneurs. Alors comment on va arranger ça ? Eh bien, il y a une petite solution qui s'appelle un collisionneur composite à l', alors voyons ce que cela fait. Donc collisionneur composite à la, quand nous ajoutons cela, il ajoute automatiquement un corps rigide à notre premier plan. Et ce que cela fait, il permet en fait de fermer ceci. Et si nous cliquons ici, si nous regardons dans notre collision de carte de tuiles, nous pouvons voir que nous avons une case à cocher qui est appelée utilisée par composite. Et ce que cela fait si nous cliquons dessus, vous pouvez voir que tous les collisionneurs sont maintenant sur un seul collisionneur, mais nous pouvons le voir. Rendons ça plus grand. Ok, donc maintenant vous pouvez voir qu'on a une seule ligne de collision à notre premier plan. Donc maintenant, si nous gardons ça, oh, et il y a un autre problème. Eh bien, tu aurais dû y penser. Peut-être que tu ne l'as pas fait. C' est bon. J' ai investi beaucoup de fois parce qu'on a un corps rigide au premier plan. Si nous le gardons dynamique, partout dans le monde tombera. Nous devons donc changer cette dynamique en statique. De cette façon, il reste à sa place, quoi qu'il arrive, alors sauf qu'ils peuvent jouer. Et maintenant notre joueur passe à notre premier plan. Maintenant, le jeu devient de plus en plus réaliste. Donc c'est génial. C' est un très grand bond en avant. Mais il y a un autre problème, parce que si nous cliquons sur notre joueur et nous l'avons assis ici sur le bord et cliquez sur jouer. On peut voir qu'il tombe sur la tête. Et maintenant l'animation est des plaques. C' est cool,
tu sais, mais on ne veut pas ça. Donc, afin d'éviter ce type de comportement de notre joueur, nous pouvons réellement entrer dans notre corps non rigide, excusez-moi. On peut entrer dans notre corps rigide. Et ici, nous pouvons voir que nous avons quelque chose appelé les contraintes. Cela limite donc le mouvement de notre joueur sur certaines rotations, pour certaines rotations. Donc, ce que nous voulons est de geler la rotation sur l'axe z. Si vous regardez ici en haut du transport, si nous utilisons la rotation z, le joueur R tourne. Donc c'est celui qui va geler. Ok, super. Est-il toujours heureux. Nous devions remplacer tous les appliquer. Et maintenant, fermons ça. Pourquoi me dit-il que j'ai besoin de changer mon collisionneur ou couche de gâteau peut jouer, et maintenant notre joueur se tient à l'aide de son marteau. Ce n'est pas très réaliste, mais c'est un jeu de plateforme 2D et c'est OK. Nous n'en avons pas besoin pour être très réaliste. J' espère que vous avez apprécié la vidéo. J' espère que tu essaies de relever le défi et je te verrai dans le prochain.
23. Section 4 : Déplacez notre Moving en horizontal: Bienvenue dans une autre vidéo et commencez un nouveau chapitre dans notre parcours de développement de jeux. Dans cette vidéo, nous allons commencer à bouger. Notre joueur basé sur l'entrée du clavier utilisera la même formule que nous l'avons fait pour le projet précédent ou pour le jeu magique Cube, mais avec une autre torsion que nous verrons dans un peu. Donc, comme vous pouvez le voir, on appuie sur la flèche droite, il se déplace à droite. Nous passons sur la flèche gauche, il se déplace à gauche. Et je vous verrai dans un. Ok, comme le titre l'indique, nous voulons manipuler le comportement de notre objet de jeu. Alors, qu'est-ce que ça a besoin ? Eh bien, cela a besoin d'un est correct et cela signifie le codage, ce qui est très excitant et un peu effrayant. Alors allons de l'avant et ajoutons un script à notre
calque, alors que notre joueur, nous l'avons déjà. Alors allons à Ajouter un composant et créer un script que nous appellerons simplement joueur. Ici, nous avons des nouvelles corrompus et va créer et ajouter un script. Attendez qu'il comprenne ce qui se passe. Et d'accord, alors commençons par créer un dossier. Une de mes choses préférées personnelles à faire, apparemment si scripts, scripts, et nous allons ajouter la couche dans nos scripts. Super, nous allons double-cliquer dessus. Et attendons que Visual Studio s'ouvre et comprenne tout. Ok, donc je voulais d'abord faire ça, abord dessiné le défi plus tard, mais je pense que je vais le faire tout à l'heure. Donc, si vous êtes prêt, vous pouvez prendre l'initiative et déplacer votre couche. La première chose que vous faites est d'importer un diagramme croisé pour entrée de la
plate-forme comme il paquet que je vous ai fourni et les ressources. Ensuite, vous créez une méthode d'exécution qui est appelée depuis l'intérieur de la mise à jour. Et puis à l'intérieur de Ron utiliser le corps rigide pour déplacer le joueur. Et enfin, ajoutez une variable pour contrôler notre vitesse. C' est donc une tâche un peu redoutable. Si vous pensez avoir assez de compétences, faites-le, allez-y et mettez la vidéo en pause et essayez-la. Si ce n'est pas le cas, et vous pensez que c'est trop grand pour grimper, attendez-moi, je le ferai devant vous. Et encore une chose si à tout moment vous sentez que vous pouvez continuer seul, je vous recommande de mettre la vidéo en pause et de le faire. Alors je te vois entrer, il suffit de l'enregistrer. Ok, bienvenue de retour. Alors peut-être que vous avez essayé d' ajouter l'entrée multiplateforme à partir des ressources que je vous ai fournies. Mais vous pouvez également aller dans le magasin d'actifs d'Unity et rechercher des actifs standard, qui contient l'entrée multiplateforme à l'intérieur. Qu' est-ce que l'entrée multi-plateforme ? Eh bien, c'est quelque chose que nous allons utiliser au lieu de l'entrée. Et il fait littéralement ce qu'il dit. Qu' est-ce qui a appelé ça ? Eh bien, c'est une entrée multi-plateforme. Cela signifie que c'est sur plusieurs plateformes. Donc ce jeu que nous créons en ce moment pourrait être sur un ordinateur sur un PC, ou peut-être sur une PlayStation 5 qui sort récemment. Mais bien sûr, comme ça ne va pas être un jeu PlayStation 5, mais qui sait ? Peut-être pourriez-vous créer un PlayStation 5 à partir de ce simple graphisme. Quoi qu'il en soit, allons de l'avant et importons le paquet multiplateforme. Alors allez simplement dans les ressources et faites glisser le paquet multiplateforme dans nos actifs pour, je vous le demanderai, voulez-vous importer tous ces éléments ? Il suffit de cliquer, oh, qu'est-ce que c'est ? Ok, ne vous inquiétez pas pour ça. Nous avons déjà importé cela et ce dont nous avons besoin en tant qu'actifs standard. Alors allez-y, cherchez multi-plateforme. Cliquez sur cela et maintenant cliquez simplement sur importer. Vous n'avez besoin que des ressources multiplateformes. Et si vous avez téléchargé les ressources standard à partir d'Internet, choisissez
également seulement la plate-forme multi-plateforme. n'y a pas de mal à faire si vous importez tout, mais pour l'instant nous avons juste besoin de la multi-plateforme. Alors attendez que cela soit importé. Et maintenant, nous devrions avoir un dossier qui s'appelle dossier multi-plateforme. Et allons de l'avant et ajoutons les extras 2D, qui est sous le fichier 7.15 quoi que ce soit, notre actif standard pour rendre tout sauf plus cohérent. Comme je voudrais le dire, sauvegardez ça. Revenons dans Visual Studio. Et comme il y a une modification de fichier détectée, il vous demandera un rechargement. Il suffit de recharger. Rechargez à nouveau. Il ne devrait plus le faire. Tout va bien. Ok, donc la première chose que nous allons faire, nous allons ajouter un multi-plateforme utilisant. Ça veut dire en haut, ici. Et je ne suis pas sûr d'avoir assez expliqué ça. Ce sont les bibliothèques que nous utilisons. Par exemple, le moteur Unity est la bibliothèque pour le début et la mise à jour et toutes les autres choses liées à Unity que nous utilisons un script R. Donc, maintenant, nous devons importer la bibliothèque multiplateforme et nous le faisons en tapant en utilisant les ressources standard Unity dot cross platform entrées. Donc maintenant, nous avons accès à l'entrée multi-plateforme. La prochaine chose que nous allons faire est de créer une méthode d'exécution. Ce serait une méthode privée. Il ne retournera rien. Ça veut dire que c'est un vide et ça s'appellera « run ». Et que devrions-nous faire à l'intérieur de Run ? Eh bien, nous allons utiliser la méthode get-x et obtenir l'horizontale. Donc, eh bien, la première chose que nous allons faire est que nous allons le mettre à l'intérieur d'une variable. Donc ça va être un flotteur. Ça va l'être, appelons ça. Lancer de contrôle. Et il va être u en utilisant au lieu de l'entrée utilisera le gestionnaire d'entrée multi-plateforme, je dirais grand mot, mais c'est ce que nous utilisons au lieu de l'entrée. Il va utiliser dot get axis. Maintenant, à l'intérieur de l'axe get aura besoin du nom de chaîne pour nos entrées. Et où va-t-on l'obtenir ? Eh bien, revenons à l'unité ici. Et si nous allons éditer et que nous recherchons les paramètres du projet, nous pouvons voir que nous avons notre Input Manager qui s'ouvre. Et si vous ne l'avez pas ouvert, il suffit de cliquer sur Input Manager. C' est donc là que nous avons nos paramètres de projet. Il y a beaucoup de choses ici. On n'a pas besoin de les examiner tous. Donc, par exemple, nous avons la physique 2D, que nous allons utiliser très bientôt. Mais pour l'instant, nous allons nous concentrer sur le gestionnaire d'entrée. Nous avons cet axe ici. Et si nous cliquons dessus, nous pouvons voir que nous avons beaucoup d'options. Donc, et l'un d'eux est l'horizontal. Horizontal comme lorsque nous cliquons sur le a ou le, et c'est exactement ce dont nous avons besoin. Donc parce que et ici, ils obtiennent l'accès a besoin d'une référence de chaîne. Eh bien, retournez au gestionnaire de saisie. Et chaque fois que nous avons une référence de chaîne, nous allons toujours la copier. Nous n'avons jamais supposé que nous l'avons écrit
correctement parce que nous ne le faisons jamais et nous ne pouvons pas trouver l'erreur. Donc on a un coup de contrôle. Et pourquoi avons-nous utilisé une variable float pour attraper cet important ? Parce que je vais le démontrer. Donc, si nous cliquons ici imprimer et nous contrôlerons le lancer, imprimons ça et voyons ce qui se passe. Et ce n'est pas oublié de l'appeler dans la méthode de mise à jour. Alors conservez ça dans Unity. C' est sombre ici à côté de notre palette de tuiles. Et c'est, je pense que c'est un bon endroit. Et maintenant, si nous cliquons sur le jeu et nous cliquons sur la gauche, sur la flèche gauche, vous pouvez voir qu'il ralentit les va de 0 à moins un, puis revenir à presque 0. Et si nous cliquons sur la flèche droite, elle passe de 0 lentement à un. Et c'est pourquoi nous devons le sauvegarder à l'intérieur d'une variable pour toujours avoir le contrôle sur. Maintenant que nous avons à, supprimons cette impression ici. Ce n'était que pour démontrer comment cela fonctionne. La prochaine chose que nous allons faire est de créer une vitesse de joueur de type 2. Donc, nous allons le faire en obtenant d'abord le corps rigide. Donc, créons une variable ici qui est le corps rigide. Donc c'est un corps rigide 2D, on l'appellera mon corps rigide 2D. Et auparavant, nous avons utilisé, nous appelons cela une variable publique et nous avons ajouté de l'inspecteur. Mais maintenant, je vais t'apprendre une façon bien meilleure et peut-être plus efficace de le faire et de l'habiller. La façon dont nous allons le faire est au début, nous allons appeler notre variable. Et nous allons lui assigner le corps rigide qui est actuellement assis sur notre objet de jeu joueur. Nous allons donc utiliser le composant get, qui obtient un certain composant. Et ce composant est, eh bien, c'est un corps rigide à d. et c'est ainsi qu'il est écrit. Maintenant, nous avons une référence à notre corps rigide, à la, Allons-y et changer et courir. Donc, nous allons cliquer ici. C' est mon corps rigide 2D. Mais avant cela, créez une variable pour notre vitesse de place. Et cette variable va être un vecteur deux. On appellera ce joueur vélocité. Vitesse. Et l'affichage ou la vitesse sera égale à un nouveau vecteur deux. Et on va bouger, on se déplace dans l'axe horizontal. Donc, nous allons seulement changer la vitesse dans la direction x ou horizontale. Donc, cela va ajouter les contrôles lancés à l'axe x et 240 y va simplement le garder comme mon point de vitesse de point de corps rigide y. Donc, dans la direction y, la vitesse ne changera pas. Et enfin, nous allons attribuer la vitesse de point 2D de mon corps rigide
sera égale à la vitesse du joueur que nous avons actuellement créée. Alors, sauvegardez ça. Retournons dans Unity et voyons si nous avons fait quoi que ce soit correctement. Alors cliquez ici, sont les chutes de joueur. Si vous vous déplacez à gauche, il se déplace lentement vers la gauche. Et si nous bougeons à droite, il aussi lentement, très lentement se déplace vers la droite. O K. Excellent. Comme vous l'avez vu, il se déplace très lentement et nous devrons réparer ça. Et pour ce faire, nous allons créer ici une variable pour la vitesse de Ron. Alors allons de l'avant et créer quelque chose que nous appelons un champ sérialisé qui très effrayant. Quelques mots fantaisistes que vous utilisez Michel. Ne vous inquiétez pas, je vais vous expliquer ce que c'est. Et le champ sérialisé est comme public, où nous pouvons changer la variable de notre inspecteur. Mais la seule différence est que nous pouvons réellement manipuler cette variable à partir d'un script différent. Ok, donc nous utilisons des fonctions publiques pour changer, pour utiliser des fonctions de différents scripts, nous pouvons réellement utiliser le champ sérialisé pour changer les variables. Et je ne pense pas que nous allons l'utiliser trop, mais disons, par
exemple, que vous voulez changer la vitesse de votre joueur, par
exemple, en fonction de la plate-forme sur laquelle vous êtes debout, vous pouvez aller de l'avant et le faire en utilisant le champ sérialisé. Ok, petite explication. Continuons. Nous allons faire de cette vitesse de course un flotteur, et nous appellerons cela simplement autour de la vitesse. Et quelle devrait être la vitesse du brin B. Nous pouvons réellement faire quelque chose. Essayons dix. Et nous allons le multiplier avec la ligne de contrôle juste ici. Donc la vitesse R1, pas Trump, a réellement couru Speed. Et maintenant, si nous retournons dans Unity et cliquez sur inspecteur et cliquez sur joueur, maintenant nous pouvons voir que nous avons une vitesse de course des loyers de dix. Donc, on passe en mode jeu. Nous pouvons aller maintenant avec une vitesse de dix et nous pouvons réellement augmenter cela à 100 C. Que se passe-t-il ? Et notre joueur, qu'as-tu vu ce qui vient de se passer ? Voyez-vous comment notre joueur a disparu ? Mais en fait, vous pouvez toujours le voir juste ici, dans le coin inférieur gauche. Ne vous inquiétez pas pour ça. Nous verrons quelques autres exemples de ceci, mais nous allons le corriger plus tard dans les autres vidéos, donc j'espère que vous apprécierez ça. C' est la partie où notre joueur prend vie et nous
commençons à le manipuler en utilisant du code et tout est amusant. Tout est très cool. J' espère que ça vous plaira et je vous verrai dans la prochaine vidéo.
24. Flipping nos joueurs Sprite: Bienvenue à tout le monde. Notre joueur se déplace maintenant dans le jeu. Mais le problème, c'est qu'il marche sur la lune. Donc, chaque fois que nous reculons, il ne retourne pas p fait simplement une marche lunaire. Et on ne veut pas ça. Dans cette vidéo, nous allons retourner les joueurs ou si nous cliquons sur le jeu,
nous pouvons voir que chaque fois que nous passons à droite, nous bougeons vers la droite. Mais quand nous commençons à aller à gauche, nous retournons notre joueur. Et maintenant, il va dans la direction et regarde dans la direction qu'il se déplace, la bonne. Tellement excitant. Ne perdons pas de temps et nous allons entrer et commencer. Ok, alors comment allons-nous retourner la couche dans la direction qu'il bouge ? La première chose que nous allons faire est d'appliquer toutes nos modifications au préfabriqué. Donc, si nous regardons de près notre joueur, nous pouvons voir qu'il se déplace à gauche et à droite, mais il ne retourne pas. Comment va-t-on s'y prendre ? Si vous allez dans notre transformation, vous pouvez voir que nous avons la position, la rotation et l'échelle. Donc l'échelle, si nous augmentons l'échelle de notre joueur dans la direction X, vous pouvez voir qu'il devient de plus en plus grand et plus plat et plus plat. Mais si nous le réduisons 2,30, il devient plus petit. Mais que se passe-t-il si nous allons au-delà du 0 ? Si vous allez dans le territoire moins, nous pouvons voir que notre joueur retourne. Donc, au moins 1, notre joueur fait face à l'autre direction. Et c'est ce que nous allons faire. Mais dans notre code, en fonction de la direction de notre joueur. Et nous le ferons en maths, mais pas de maths très durs. Si vous n'aimez pas les maths, ce sera des maths simples. Oh, ok, alors maintenant allons dans notre Visual Studio et allons de l'avant et créer une fonction que nous appellerons vide privé. Philip, sprite, script, sprite. Donc, nous avons des flips lumineux et nous sommes prêts à partir. Alors flips, c'est ça ? Avant de commencer, je dois expliquer deux concepts. Tout d'abord, les applications de point mathématique. J' espère que vous vous souvenez de l'école de ce que signifie la valeur absolue. Cela signifie qu'il retourne la valeur absolue de quelque chose. Donc, par exemple, si nous avons maths dot abs moins quatre, il retourne quatre et maths dot sinus. Alors qu'est-ce qui n'est pas signé ? Il renvoie le signe d'un certain nombre. Cela signifie que si nous avons maths sinus moins quatre, nous avons moins un en conséquence. Et si nous avons des panneaux métalliques pour, nous avons plus un en conséquence. Voici donc un aperçu rapide de la vue d'ensemble des mathématiques de première année ou quelque chose comme ça. Revenons en arrière et continuons et créons un booléen. Alors allez dans Visual Studio. Donc n ceci, nous allons créer un booléen qui nous
dira si notre joueur est en train de bouger. Alors allons de l'avant et créons une planche qui
fonctionnera à l'horizontale, longue et qui fonctionnera à l'horizontale. Mais bien sûr si horizontalement prend deux heures ou juste une, ou en fait se précipite sur le a n'est pas au bon endroit ou K. Donc horizontalement égale valeur absolue de point mathématique, mon corps rigide au point de vitesse de point x. maintenant, vous pourriez vous demandez pourquoi utilisons-nous même la valeur absolue de la vitesse de nos corps rigides ? Eh bien, parce que nous nous dirigeons vers la gauche, notre vitesse est négative. Et nous sommes, quand nous avançons dans la bonne direction de notre vitesse est positive. Nous devons donc prendre la valeur absolue pour nous assurer que nous savons toujours quand notre joueur bouge. Et pour faire ce booléen, parce que pour le moment ce n'est pas booléen. On va vérifier si c'est plus grand que, attendez. Math, f dot epsilon o k. Maintenant,
encore une fois, Michelle, plus tôt en utilisant des mots très effrayants. Qu' est-ce que Math dot epsilon. Donc, tout d'abord, lorsque nous tapons math.pi f, cela signifie
que nous accédons à la bibliothèque de mathématiques où nous
avons beaucoup de fonctions et beaucoup de méthodes, d'outils. Et epsilon n'est pas une méthode ni une fonction. C' est un, un petit nombre, un très, très, très petit nombre, comme par exemple pour 04 ou cinq zéros après et un. Alors pourquoi utilisons-nous math.pi epsilon y pas simplement comparé à la vitesse égale à 0 ? Si vous vous souvenez dans la vidéo précédente quand nous avons essayé d'imprimer le lancer de contrôle, vous pouvez vous rappeler chaque fois que nous sommes allés à gauche, il est lentement déplacé de 0 à moins un. Et puis il est revenu à moins 0,00009. Il n'est jamais revenu à 0 absolu. C' est pourquoi nous utilisons maths f dot epsilon au lieu d'utiliser simplement 0. La prochaine chose que nous allons faire est que nous allons utiliser une condition if. Donc, si vous courez horizontalement et à l'intérieur de cette condition, je vais vous lancer un défi. Votre défi consiste à remplir la déclaration if. Nous allons donc retourner notre sprite Player en fonction de la direction qu'ils se déplacent. Et allons-y, je vais te donner quelques mains. On utilisera l'échelle locale de point Transformer, et c'est ainsi que vous accédez à l'échelle d'un objet de jeu. Et vous utiliserez,
utilisez maths F point sinus pour déterminer la direction dans laquelle notre joueur se déplace. Alors arrêtez la vidéo dès maintenant, donnez-lui votre pleine concentration, votre pleine capacité de pensée, et faites le défi. Je te verrai dans un peu. Ok, bienvenue. Alors que devrions-nous écrire à l'intérieur de notre condition si ? Donc sa transformation ? Parce que nous avons besoin d'accès à AAC transforme l'échelle locale. Et cette échelle locale en fait, est aussi un vecteur, parce que c'est 2D. Donc nous allons utiliser l'échelle sur les x et y alors envoyez le nouveau vecteur deux. Et ce qui devrait être bon pour l'échelle x et Y devrait rester le même. Ça veut dire que ça va être un F majuscule. Mais que devrait l'XP, tandis que le X dépendra du pendentif sur la direction. Donc nous allons écrire meth F point sinus parce que cela dépend du signe de la direction. Et quelle direction s'agit-il ? Ce n'est pas mon point de vitesse de point de corps rigide x. alors maintenant, sauvegardez ça. Donc maintenant, si notre joueur se déplace vers
la droite, la vitesse sera positive, le signe sera positif, notre échelle restera une. Mais si les vitesses des joueurs vers la gauche, cela signifie que la vitesse est négative. Cela signifie que le signe est minuscule, et cela signifie que notre échelle locale, x sera moins un. Voyons si ça marche. Sauvegardez ça et un petit mini défi que je vais vous donner tout de suite. Où utilisons-nous réellement ce sprite flip ? Où devrions-nous le mettre à l'intérieur de notre code pour retourner notre joueur ? Je vais vous donner une seconde pour y réfléchir. Un Mississippi, deux, Mississippi, trois, Mississippi. Ok, le temps est écoulé. C' est à l'intérieur de R1 parce que nous n'utilisons que le sprite flip quand nous le sommes. Produit. Sauve ça, retourne dans Unity. Sortons de la caméra. Cliquez sur jouer. Et maintenant, si on bouge à droite, bouge à droite. Si nous cliquons sur la flèche gauche, nous retournerons réellement. Et à quel point c'est cool ? Oh, ok, super. J' espère que vous avez apprécié la vidéo. J' espère que vous avez fait le défi et je vous verrai dans le prochain.
25. Comment déclencher des animations de code: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et cette vidéo, nous allons changer l'état de nos joueurs de notre code. Donc, comme vous pouvez le voir en ce moment, nous avons notre joueur en état de
ralenti et de ralenti dès que nous commençons la partie. Et si on le déplace à gauche ou à droite, vous pouvez voir que son état change en course. Et si on s'arrête, il redevient au ralenti. Alors ne perdons plus de temps et commençons. Ok, donc commençons tout d'abord, en réexpliquant ce qui se passe dans notre animateur. Tout d'abord, nous allons le rendre un peu plus grand et zoomer. Et donc la première chose qu'on va devoir prendre des notes, c'est ici en entrée. De l'entrée, nous avons une transition directement vers le ralenti. Et ce que cela signifie, c'est que dès que notre jeu commence, nous allons directement dans l'animation au ralenti. Et à partir de là, nous avons deux options ou deux États où aller. Nous avons l'état de course et nous avons l'état d'escalade, et les deux ont la transition vers et depuis. Ainsi, par exemple, pour passer du ralenti à l'escalade, nous pouvons voir que nous avons cette ligne de flèche blanche qui a une condition dessus. Et cette condition est qu'un booléen soit un booléen appelé l'escalade pour être vrai. Et pour revenir de l'état d'escalade du Comte ou de l'animation, cette escalade, une condition doit être fausse. Et la même chose vaut pour la course. Donc, la transition de l'inactivité à l'exécution nécessite
qu'un certain booléen soit vrai et qu'il revienne de l'état d'exécution, nous avons besoin d'une certaine variable ou paramètre qui est en cours d'exécution pour être faux. Alors comment allons-nous faire ça en utilisant notre code ? Eh bien, tout d'abord, parce que les paramètres sont présents sur notre animateur, ce que nous devons faire est d'obtenir une référence à nos ennemis. Allons donc dans Visual Studio et essayons de le faire. Donc, nous voici dans notre Visual Studio. La première chose dont nous aurons besoin est une référence à notre animateur. Et nous ferons ça de la même façon que nous avons fait pour obtenir une référence à notre corps rigide. Alors allons de l'avant et créons une variable pour nos ennemis. Donc nous allons créer un métal NA. Et il peut parler s'il vous plaît. Donc un animateur appellera ça mon animateur. Et nous allons utiliser le composant get pour obtenir une référence à notre animateur. Alors, obtenez l'animateur de composant et fermez ça. Sauve ça. Super. Donc maintenant, nous avons un référencé nos ennemis. La prochaine chose que nous devrons faire. D' abord, nous allons nous concentrer sur la course. Alors, comment allons -nous passer d'une marche au ralenti, alors que cela, donc de la marche au ralenti à la course, comment allons-nous changer cela ? Eh bien, nous allons devoir définir le booléen parce que nous savons que c'est un booléen. Retournons et continuons à courir. Quand nous. Commencez à courir. Allons de l'avant et allons dans l'état de marche. Donc, nous allons le faire en utilisant mon animateur, qui est notre point de référence. Et il a plusieurs méthodes attachées à elle. Et l'un d'eux est l'ensemble Bool, et cela nous permet de lui envoyer une référence. En fait, il a deux façons de donner des paramètres. La deuxième façon est notre façon, qui lui donne une chaîne et la valeur booléenne que nous voulions avoir, le nom de référence String et la valeur bool qui peut être soit vrai ou faux. Alors faisons ça. D' abord, nous aurons besoin du nom de la chaîne. Et comme il s'agit d'une référence de chaîne retournera simplement dans Unity, double-cliquez et copiez cette référence. Parce que comme nous le savons, chaque fois que nous avons une référence de chaîne, nous allons toujours, toujours la copier. Et maintenant, nous devons définir la valeur pour cela. Et bien sûr que ça va être vrai. Maintenant, ce n'est pas la solution finale par aucun moyen, mais cela montrera comment fonctionne le pool de jeu dans mon animateur. Revenons dans Unity et voyons si ça a fonctionné. Si nous cliquons sur le jeu ici, notre joueur va dans l'animation en cours d'exécution. C' est bon. Ce n'est pas mal. Au moins, on sait que ça marche, mais ce n'est pas comme ça que nous voulions. Nous voulions retourner au ralenti chaque fois que nous arrêtons l'état de marche. Ce sera donc votre défi. Et votre défi est d'arrêter l'animation en cours d'exécution. Vous devez donc ajouter à notre méthode d'exécution un moyen d'arrêter l'animation en cours d'exécution. Et ça veut dire retourner au ralenti. Donc, il devrait rester vrai pendant que le joueur est en cours d'exécution et faux lorsque le joueur s'arrête. Utilisez le code que nous avons créé lorsque vous retournez l'endroit. Alors arrêtez la vidéo dès maintenant et allez-y et faites le défi. Bon, bienvenue. Alors, comment as-tu réussi avec ça ? J' espère que ce n'était pas très chaud ou j'espère que c'était au moins un peu difficile. Voyons ce qu'il faut faire. Eh bien, parce que j'ai dit que vous aurez besoin d'utiliser quelque chose de la méthode des flips lumineux. Nous allons vérifier si notre joueur est en cours d'exécution. Et nous allons le faire en copiant simplement la ligne suivante, qui vérifie si notre joueur a une vitesse sur le plan horizontal. Donc maintenant, nous avons un booléen pour fonctionner horizontalement. Et ce que nous pouvons faire, parce que c'est en fait un booléen et c'est vrai chaque fois que le joueur est en cours d'exécution et faux si le joueur ne court pas, nous pouvons directement le définir ici et notre animateur. Donc le foie remplace ça par non, désolé, je veux dire, courir, courir horizontalement. Et faisons un pas de plus. Et c'est extraire cette méthode, méthode et vers une autre externe parce que c'est juste un peu différent. Nous appellerons ça changer en état de marche. Et maintenant, nous gardons tout ça. Nous avons un changement à l'état de course qui vérifie si notre joueur se déplace dans le plan horizontal et s'il l'est, cela signifie
que notre course horizontale est vraie. Cela signifie que notre animateur définit la course à vrai. Et s'il ne court pas, cette course horizontale sera fausse. Et donc, notre animateur va soudainement courir à faux. Allons-y et voyons si ça a fonctionné. Cliquez sur jouer. Notre joueur est initialement dans l'animation ou l'état de ralenti. Et maintenant, si nous passons à gauche, il commence à courir. Si on s'arrête, il s'arrête et retourne au ralenti, va au rythme. C' est donc la base du contrôle de nos animations à partir de notre code. Nous avons installé notre machine d'état. Nous avons des paramètres auxquels nous pouvons accéder dans notre code. Quand une chose particulière se produit, nous pouvons manipuler ces paramètres en utilisant notre code et en changeant l'état du joueur. J' espère que vous avez apprécié la vidéo et je vous verrai dans la prochaine.
26. Ajouter la possibilité de Adding !: Bienvenue, mes développeurs de jeux préférés. Dans cette vidéo, nous allons ajouter la capacité ou le joueur deux sauts. Donc, comme vous pouvez le voir, il peut maintenant atteindre des plates-formes qui étaient inaccessibles auparavant. Et il peut sauter d'une plate-forme à l'autre. Et comme vous pouvez le voir, c'est très vif, c'est très excitant et ça va être très, très amusant. Donc, ne perdons plus de temps et nous allons entrer et obtenir K's. Donc d'abord, je veux parler de la mécanique de saut et comment ils sont. Donc, la mécanique de saut sera un peu différente de la mécanique de course. Pourquoi c'est ça ? Parce que courir, c'est différent de sauter. Parce que quand nous courons, nous prenons la vitesse lentement. Mais quand nous
sautons, techniquement, nous avons immédiatement une vitesse vers le haut. Donc, je veux juste vous montrer comment notre vitesse s'accroît réellement. Donc, si nous imprimons la vitesse du calque sur notre console dès maintenant, continuons et essayons cela. Comme nous commençons à courir sans joueur, vous pouvez voir qu'il est 00 quand nous commençons à courir vers la droite par incréments lentement de 0 à 9.79.8 et finalement à dix, puis revient à 0. Et la même chose vaut lorsque nous cliquons sur la flèche gauche. Mais nous ne voulons pas que notre jeu. Nous voulons que nos joueurs sautent immédiatement dès que nous
appuyons sur la barre d'espace ou n'importe quel bouton que nous aimerions être traités. Et nous allons le faire en utilisant un type différent de
la fonction get access en utilisant le bouton get point d'entrée. Donc, si vous lisez la description ici, vous pouvez voir qu'elle renvoie un vrai. Donc, c'est un booléen, il renvoie un vrai pendant la flamme, l'utilisateur a appuyé sur le bouton virtuel identifié comme nom_naissance. Quoi qu'il en soit, ce que vous devez sortir de ceci, c'est que cela transforme immédiatement quelque chose en vrai, puis revenir à faux si nous appuyons sur un bouton, et c'est ce que nous allons utiliser. Et bien sûr, au lieu de l'entrée sera en utilisant le gestionnaire d'entrée multi-plate-forme. Parce que, comme nous l'avons dit précédemment, nous voulons que ce soit un jeu multi-plateforme. Et nous allons entrer et commencer avec ça. Donc la première chose que nous ferons est de retirer ce parent parce qu'il a fait son travail, c'est fini le service. Et nous allons créer une fonction ou une méthode ici, que nous appellerons simplement sauter. Et maintenant, si nous sauvegardons cela, nous avons la possibilité d'extraire. Nous avons cette petite ampoule à gauche. Cliquez dessus et cliquez sur Générer la méthode. Ne vous inquiétez pas de ce qui est déjà écrit à l'intérieur de celui-ci. C' est une méthode privée de vide comme nous le voulons. Alors, qu'est-ce qu'on va faire ? Eh bien, la première chose que nous allons faire est d'utiliser une huile, de créer un booléen. Boolean va être appelé, saute et qui saute
va obtenir une entrée du gestionnaire d'entrée multi-plateforme. Et nous allons utiliser la fonction que nous venons de décrire, le bouton get down. Alors ouvrons, ils l'ouvrent et nous pouvons voir qu'il prend une référence de chaîne comme entrée. Alors allons de l'avant et trouver la référence de chaîne du saut et de mettre. Nous allons dans les paramètres du projet qui est ancré ici sur la droite. Alors cliquez sur ça, rendez ça un peu plus grand. Et faisons défiler vers le bas et voyons où nous avons le saut. C' est là. Donc c'est Jump et c'est le bouton positif est l'espace. Donc, copions ceci parce que c'est une référence de chaîne. Et comme nous l'avons déjà dit, chaque fois que nous avons une référence de chaîne, nous allons toujours, toujours, toujours, toujours, la copier. Donc maintenant, nous avons le saut booléen ensemble et prêt. La prochaine chose que nous devons faire est d'ajouter de la vitesse à notre joueur dans la direction y. Alors allons-y et faisons-le. Donc, nous allons créer une condition if. Et si saute. Cela signifie que si notre joueur a appuyé sur le bouton de saut va créer un vecteur. Deux nommeront cette vitesse de saut. Et cette vitesse de saut sera égale à un nouveau vecteur deux. Et dans la direction X n'aura que mon, Je suis dans mon corps rigide. Donc mon point de vitesse de point 2D corps rigide x. et dans la direction y, nous allons vouloir ajouter une vitesse, une vitesse pour sauter. Et cela dépendra de votre préférence. Ça pourrait être cinq, dix, ça pourrait être 20. Et chaque fois que nous avons une telle variable, quand nous avons quelque chose qui est variable, il est beaucoup mieux de créer une variable pour elle, tout comme nous l'avons fait ici pour la vitesse de course. Allons donc en haut et créons un champ sérialisé. Et le champ sérialisé est quelque chose que nous pouvons ajuster à partir de différents scripts. Peut-être qu'on n'en aura pas besoin pour l'instant, mais allons-y et en faire un champ sérialisé. Donc ça dit flotteur, flotteur, et on va l'appeler vitesse de saut. Et d'abord, allons-y et faisons 1515 F parce que c'est un flotteur. Alors 15 F. Et ajoutons ça à notre vitesse de saut. Ok, super. Et comme une dernière étape, nous devons ajouter cette vitesse,
sauter, ma vitesse de point de corps rigide. La vitesse est égale à notre saut. Saute. Vitesse. Oh, ok, super. Alors, sauvegardez ça. Revenons dans Unity et voyons si ça a fonctionné. Rendre ça un peu plus petit. Cliquez sur jouer. Et maintenant, nous bougeons à gauche et à droite. Et si on appuie sur le bouton d'espace, on peut voir qu'on saute. Mais ce saut est un peu flottant comme vous pouvez le voir, mais au moins dire commencer. C' est un grand pas en avant dans le développement de notre jeu. Sûrement compris, sautez en avant. Ok, je ne ferai plus cette blague. Voyons donc ce que nous pouvons faire pour rendre ce jeu un peu plus accrocheur. Donc, nous pouvons voir ici que nous avons une option physique 2D et nos paramètres de projet. Et ce que cela nous permet de faire, c'est nous permettre d'ajuster la physique 2D de notre moteur Unity. Et nous avons beaucoup, beaucoup d'options à ajuster. Nous avons la vitesse de rotation maximale, nous avons la vitesse de traduction, nous avons des corrections angulaires. On a beaucoup de trucs ici. Je vais laisser un lien dans les ressources pour aller vérifier la physique 2D dans la documentation de l'unité, vous pouvez entrer dans chaque détail que vous voulez. Mais pour l'instant, on ne s'intéresse qu'à la gravité ici. Comme vous pouvez le voir, notre gravité actuellement dans la direction x est 0. Dans la direction y, c'est moins 9.81, ce qui est exactement la même gravité que nous avons ici sur notre planète. Donc si on clique sur le jeu et qu'on saute, on peut vraiment ajuster ça ici. Donc si on y arrive, par exemple, moins 27, maintenant si on saute, on ne saute pas aussi haut qu'avant. C' est là que nous commençons à régler notre saut en fonction de la hauteur et de la façon dont nous voulons que notre jeu soit. Et un petit rappel chaque fois que nous finissons d'ajuster quelque chose dans notre mode de jeu, si nous décliquons du jeu, voir qu'il revient à sa valeur d'origine. Alors gardez cela à l'esprit parce que vous devez vous souvenir de la valeur que vous avez choisie lorsque vous étiez en mode jeu. Et cela nous amène directement dans notre défi et notre défi, ou votre défi est d'ajuster votre saut. Donc Juin la gravité et la vitesse de saut pour faire saut mécanicien à votre goût. Et basez votre accord sur le nombre de tuiles que vous voulez que votre joueur puisse sauter. Donc, vous pouvez soit le faire totalise trois tuiles, vous pouvez faire de lui le meilleur et le plus haut sauteur et le monde entier. Cela dépend uniquement de vos préférences et de la façon dont vous voulez faire votre flux de gain. Alors, arrêtez la vidéo dès maintenant et allez-y et faites le défi. Ok, bienvenue. J' espère que ce n'était pas trop dur. J' espère que vous apprécierez ce genre de défi. Alors, nous allons cliquer sur jouer et voir ce que notre joueur fait. Donc on se déplace à gauche et à droite et on saute. Et ce saut est un peu trop. Les nausées pensent. Alors faisons cette gravité 100 et maintenant c'est un peu plus accrocheur. Et pour aider notre joueur Champollion, cliquez sur joueur, allez à son inspecteur et faisons la vitesse de saut. Je pense que 50. Alors voyons 50. Maintenant, notre joueur saute et vous pouvez voir qu'il disparaît réellement sous la plate-forme, ce qui n'est pas bon. Et nous sommes confrontés à ce problème avant, comme vous pouvez vous en souvenir de, je pense que c'était quand nous avons ajouté l'Iran parler à lui. Donc, nous devons réparer ça avant de continuer. Je ne sais pas si vous faites face à ce genre de problème en faisant le défi. J' espère que vous ne l'avez pas fait. Et ce n'est pas très difficile en fait. Si nous allons dans le corps rigide de nos joueurs, vous pouvez voir ici que nous avons quelque chose appelé la détection de collision. Et il est actuellement sur discrète. Et si nous cliquons sur la liste, nous pouvons voir que nous avons une autre option qui est continue, et c'est ce que nous allons choisir pour tous les joueurs. Qu' est-ce que ça veut dire ? Eh bien, discret est-ce qu'il vérifie les collisions chaque certain temps tandis que continu est, comme il dit, il vérifie continuellement les collisions chaque, je pense que microseconde ou milliseconde, je ne suis pas sûr, mais discrete est, par exemple, toutes les une ou deux secondes qu'il vérifie la présence d'une collision. Et les contrôles continus constamment, constamment pour les collisions. Maintenant pourquoi avons-nous l'option discrète ? Parce que nous pourrions ne pas avoir un corps qui est très rapide ou par exemple, un oiseau qui se déplace lentement ou quelque chose qui n'aura pas besoin d'une collision continue avec les choses qui l'entourent. Mais si nous avons quelque chose comme notre joueur, par exemple,
ici, qui a une gravité qui est 100. Il tombe à travers notre monde. Donc, nous allons le rendre continu. Continuous est un peu plus lourd sur le processeur de l'unité, mais c'est bon, nous pouvons gérer ça, j'en suis sûr. Alors cliquez sur appliquer, retournez dans les projets. C' est faire ça, faisons de cette gravité 200 parce que je pense qu'on en a besoin 200. Faisons la vitesse de saut 50. Sauvegardez ça, retournez en mode jeu et voyez si ça vous plaît. Ça fait du bien. Alors voyons. Je pense que ça pourrait avoir besoin de s'accrocher au sol. Je pense que la gravité est parfaite. Voyons si on veut que je pense que c'est assez. Je pense que 54 une vitesse de saut est parfaite. J' espère que vous l'accordez à vos préférences. Tu n'as pas à le faire comme moi. Tu peux l'avoir tout ce qu'on veut. C' est votre jeu, ce sont vos préférences et vous voir dans la prochaine vidéo.
27. Les sautions à l'aide Tweaking: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et dans celui-ci, nous allons réparer nos mécaniciens de saut. Donc, comme vous vous en souvenez, peut-être dans la vidéo précédente, chaque fois que nous essayons de sauter sans joueur, nous pourrions double saut et triple saut et sauter dans l'infini. Mais dans cette vidéo, nous réparons tout ça. Et maintenant, notre joueur ne saute que quand il touche le premier plan. Donc, si on a essayé de sauter plusieurs fois, on ne peut faire qu'une seule fois. Et c'est plus réaliste, c'est plus favorable. Et je te verrai dans un peu. Ok, donc ce qu'on veut, c'est que nos joueurs ne sautent que quand on touche le premier plan. Tellement effrayante. Maintenant, si nous utilisons notre joueur, nous pouvons sauter plusieurs fois, ce qui n'est pas bon. Nous voulons seulement pouvoir sauter chaque fois que nous touchons le premier plan. Et nous le ferons en utilisant des couches. Donc, si nous allons dans notre premier plan, nous pouvons réellement voir que nous avons la couche juste ici dans la valeur par défaut, et en fait tout est actuellement en défaut, mais nous allons changer cela. Donc, la première chose que nous allons faire est d'aller dans la couche, cliquez ici, et vous pouvez voir que nous avons cette couche d'ajout juste ici. Lorsque nous cliquons dessus, nous avons la possibilité d'ajouter beaucoup de couches. Donc la première chose que nous allons faire est de créer une couche et nous l'appellerons terre. Et maintenant, nous avons une couche de sol. Maintenant, quelle est la différence entre une couche, une couche de tri et une couche et une taxe. Eh bien, les couches sont utilisées chaque fois que nous avons plusieurs types de, disons collisions lorsque nous voulons contrôler ce qui entre en collision avec une autre chose et comment la physique des différents objets interagissent avec vous voyagez. Une couche de tri est utilisée pour rendre les choses en fonction de la couche de tri sur laquelle elles se trouvent. Donc, si vous voulez, par exemple, nous avons utilisé le calque de tri pour rendre l'arrière-plan derrière le premier plan et derrière le lecteur. Et enfin, les tags ne sont qu'une étape supplémentaire de l'organisation. Quatre couches, ils sont utilisés dans le code. Si nous avons, disons que le joueur peut être, peut avoir, une couche, aura une couche pour le joueur bien sûr. Et s'il a un calque, peut-être que nous voulons qu'il interagisse avec différents objets de différentes manières, et c'est là que nous utilisons tex. Ok, alors démontrons comment fonctionne la tueuse. Si nous allons à la caméra, vous pouvez voir que nous avons ici quelque chose appelé masque d'appel, qui rend tout. On peut éteindre ça, éteindre le sol. Et oh, nous n'avons pas assigné le sol au premier plan. Maintenant le premier plan a, est au niveau du sol, sur la couche de sol. Sauvegardez ça, retournez à l'appareil photo, retournez dans la vue du jeu. Et nous pouvons voir que tout sous la couche de sol, qui est notre premier plan en ce moment, ne rend pas. Et si nous retournons cela, nous pouvons voir que nous pouvons revoir le premier plan. D' accord ? Alors. Maintenant, nous avons besoin d'un moyen pour nos joueurs de savoir que nous touchons la couche de sol. Et bien sûr, nous allons l'utiliser à travers le collisionneur parce que le collisionneur est la principale chose qui tient notre joueur au premier plan. Et nous allons le faire en utilisant quelque chose appelé un collisionneur à d point est la couche touchante. Alors, que fait cette fonction ? Eh bien, il renvoie un booléen chaque fois que ce collisionneur, Collider 2D, qui sera le collisionneur joueur, touche
n'importe quel collisionneur sur ce masque de calque spécifique. Alors, quel est ce masque de couche ? C' est un certain, c'est un entier qui est placé à l'intérieur de la couche touchante. Et il nous dit quelle couche nous sommes. Alors, comment allons-nous utiliser ce masque de calque ? Alors que nous avons heureusement une fonction qui est appelée Layer Mask dot get mask. Et cela nous permet d'écrire ou d'obtenir une référence de chaîne du nom des couches. Et il renvoie un entier, le masque de calque créé à partir du nom de la couche. Donc, nous obtenons notre nom de couche. Nous mettons à l'intérieur du masque de couche. Nous l'utilisons pour, nous mettons à l'intérieur du masque de ghetto qui est utilisé par le masque de calque. Et nous avons mis tout cela et nous nous sommes assis à l'intérieur de la couche touchante pour être utilisé par le collisionneur. Donc nous allons faire quelque chose d'un peu différent maintenant parce que c'est l'heure de votre défi. Et votre défi est d'arrêter le saut maltais. Donc, vous devrez utiliser le point 2D du collisionneur est toucher les couches. Vous devrez utiliser le point de masque de calque GetMax, les noms de
calque qui doivent être rectifiés. C' est une petite main. Et nous devrons compléter la logique et empêcher le joueur de saut multiple. Donc je connais ce défi, mais je ne vous ai pas montré comment c'était fait, mais je vous ai donné toutes les ressources dont vous aurez besoin, et je vous ai donné tous les exemples et les méthodes. Alors arrêtez la vidéo dès maintenant et donnez ce défi ego. Kay, bienvenue. Comment tu t'es mis sur ça ? Donc, la première chose dont nous aurons besoin est d'aller dans notre Visual Studio. Et avant de commencer, je sais que je vous ai dit qu'il faudra une référence pour notre collisionneur parce que les collisionneurs sont les composants qui utilisent la couche de destruction. Allons donc chercher une référence pour notre collisionneur. Nous savons que notre joueur a un collisionneur de boîte sur lui. Alors faisons ça. Créons une variable qui est un Box Collider 2D t. Et nous allons appeler cela mon Box Collider 2D. Et nous allons utiliser dans le Start, My Box Collider 2D sera le composant Box Collider 2D qui se trouve sur la grille du joueur O K. Pourquoi est-ce que ça me dit ça ? J' ai tapé mon corps rigide par erreur, excusez-moi. Donc c'est mon Collider, 2D ou K. génial. Donc maintenant ce que nous allons devoir faire, c'est que nous devons empêcher cette méthode de saut pour s'exécuter à moins que nous ne touchions le sol. Alors, comment allons-nous faire ça ? Nous le ferons en utilisant une condition if. Donc, donc d'
abord, tapez si et ouvrez les parenthèses et que devrions-nous écrire à l'intérieur de celui-ci ? Donc, nous allons devoir écrire à l'intérieur de celui-ci. My Box Collider 2D point touche les couches. Et à l'intérieur de ces calques touchants, nous allons écrire un masque de calque car comme vous le voyez, il nous demande un masque de calque. Nous tapons Masque de calque, pointez, obtenez Masque, et ouvrez les parenthèses. Et maintenant vous pouvez voir qu'il nous demande une référence de chaîne. Et je t'entends déjà. Vous me dites que si nous avons une référence de chaîne, nous devons aller dans Unity et la copier. Donc je vais faire, comme vous le demandez, nous allons dans les couches, nous copions le sol même si c'est un mot très facile, mais vous devez entrer dans l'arrive de le faire. Alors maintenant, nous ouvrons les parenthèses et ce qui devrait être juste à l'intérieur de celui-ci ? Eh bien, voyons voir. Nous pouvons le faire de deux façons. Tout d'abord, nous pouvons prendre tout ce code ici et le mettre à l'intérieur de ces deux crochets. Et chaque fois que nous touchons, la couche de sol exécutera le code. Mais il y a une manière différente et beaucoup plus lisse. Donc de cette façon est, tout d'abord, nous allons ajouter un point d'exclamation juste derrière cette déclaration. Et ce que fait ce point d'exclamation, il nie tout ce qui est devant lui ? La condition à l'intérieur de celui-ci est fausse. Il exécutera tout ce qui est à l'intérieur des crochets bouclés. Donc, disons que nous ne touchons pas le sol. Cela signifie que cette couche touche renvoie false. Et parce que nous avons un point d'exclamation juste derrière,
cela rend toute cette déclaration vraie et il exécute quelque chose entre crochets. Et qu'est-ce qu'il y a à l'intérieur de ces crochets ? C' est quelque chose que tu n'as jamais vu avant. Peut-être, peut-être que tu le fais, mais ça reviendra. Nous avons déjà utilisé le retour dans la section précédente. Et ce que ce retour, ceux sans rien, nous
fait sortir de notre méthode de saut. Donc, chaque fois que nous écrivons retour sans rien à côté de
lui, il saute simplement de la fonction de saut et il continue dans la mise à jour ou n'
importe où, où il veut continuer. Alors, sauvegardez ça. Et voyons si cela fonctionne vraiment. Alors revenons à notre unité et cliquez sur joueur. Ça veut dire plus petit. Cliquez sur jouer. Et maintenant, pendant qu'on bouge, on bouge, on saute. Mais si on double saut, on ne peut plus doubler parce qu'on ne touche pas le sol actuellement. Mais il y a un problème ici. Comme vous pouvez le voir, nous sommes coincés dans le mur. Donc, si je vais à côté d'un mur et je continue à cliquer sur le bouton gauche, vous pouvez voir que la flèche gauche, vous pouvez voir que nous sommes collés au mur et va résoudre ce problème plus tard. Une autre chose, c'est que nous avons un double saut. Si nous touchons un mur et que ce n'est pas souhaitable, nous allons corriger cela dans la vidéo suivante parce que celle-ci devient un peu trop longue. Je te verrai dans la prochaine.
28. Comment éviter les Prevent de mur: Bienvenue à tout le monde dans une autre vidéo. Donc, comme vous pouvez le voir ici, chaque fois que nous cliquons sur le jeu, nous avons deux problèmes sans joueur. Tout d'abord, si nous avons sauté à côté d'un mur et continuons à appuyer sur la flèche gauche ou le bouton a. On voit qu'il reste coincé sur le mur. C' est un problème de friction. Et le deuxième problème ici, c'est que si on peut faire double saut sur le mur, comme vous pouvez le voir, il ne touche pas le sol et pourtant il peut encore sauter. C' est-à-dire, allez réparer ça pour montrer ça un peu mieux. Donc, si nous allons dans notre pellet carrelé, choisissez la gomme, choisissez le premier plan, effacez cela. Choisissez la plate-forme, allez à l'arrière-plan et en fait dessiner quelque chose. Sauvegardez ça dans le jeu. Et maintenant, vous pouvez voir que nous pouvons sauter deux fois sur le mur sans même toucher le sol. Donc, nous allons réparer ça aussi. D' accord ? La première chose que nous allons résoudre est le problème de friction. Et pour ce faire, nous allons tout d'abord faire la partie Ma préférée de toute création de projet et qui est la création d'un dossier. On appellera ça des matériaux. Et à l'intérieur des matériaux, nous allons faire un clic droit et créer un matériau physique 2D. Donc, créez ça, nous appellerons ça 0 friction. D' accord ? J'ai donc laissé dans les ressources une documentation sur les matériaux de physique. D vous pouvez tout lire à leur sujet, mais honnêtement, c'est très simple. Donc, si nous cliquons dessus, nous pouvons voir ici dans l'inspecteur que nous avons deux options. L' un d'eux est la friction et l'autre est la bonté. Donc la friction est ce qui est collé au mur va mettre à 0 et la bonté est ce qui nous fait rebondir. Ainsi, par exemple, si vous voulez ajouter un trampoline à votre jeu, vous pouvez créer un matériau physique 2D avec rebondeur et ajouté à un clochard. Propre. Alors maintenant, allons dans la couche. Et parce que nous le sommes, nous sommes en fait capables de faire le saut, double saut à cause de notre collisionneur. Et si nous cliquons sur notre collisionneur de boîte, nous pouvons voir ici que nous avons quelque chose qu'on appelle du matériel. Et ce matériel prend un matériau physique 2D. Donc ce que nous allons faire, il est évident que nous allons traîner notre matériau de friction 0 et le mettre sur le collisionneur de boîte. Comme vous pouvez le voir, nous pouvons également l'appliquer à notre préfabriqué. Alors appliquez ça. Et maintenant, si nous cliquons sur le jeu, allons à notre mur et nous pouvons encore doubler le saut, mais nous ne sommes plus coincés sur le mur. Et nous ne sommes pas coincés ici ni là. On ne reste coincés nulle part. Oh, ok, super. Donc, la première partie de la vidéo est terminée. La deuxième partie est votre défi. Votre défi est d'empêcher le joueur de sauter au mur. Donc, tout d'abord, vous arrêtez le joueur multi-saut tout en touchant le mur. Et je vais vous donner un indice, qui est d'ajouter un deuxième collisionneur aux pieds de notre joueur. Donc, vous devez ajouter un deuxième collisionneur, faites-le. qu'il rentre dans les pieds de nos joueurs, besoin d'ajouter un autre type de Collider. Je recommande d'utiliser le collisionneur de polygones. Et vous devriez faire de ce collisionneur la chose qui doit toucher le mur. Ok, c'est assez de clôture. Mettez la vidéo en pause dès maintenant et faites le défi. Bon, bienvenue. J' espère que tu essaies de le faire. Alors commençons ce spectacle. La première chose que nous allons faire est d'ajouter un composant. Et ce composant va être un collisionneur de polygones vers un polygone d y. Parce qu'on peut en faire une boîte. Et puisque nous avons déjà VOUS, puisque nous utilisons déjà un collisionneur à boîte, nous ne pouvons pas l'utiliser. Donc maintenant, nous allons éditer ce collisionneur de polygone pour le faire juste aux pieds de notre joueur. Alors rendons ça un peu plus petit. Et si vous voulez supprimer les lignes inutiles, maintenez
simplement, maintenez le contrôle. Et vous pouvez voir que vous ne pouvez pas supprimer plusieurs sites. Donc on va laisser celui-là. Obtenez la chanson plus proche, le cygne plus proche ou le contrôle supprimer, supprimer, que. On n'a même pas besoin de celui-là. Et maintenant, nous avons une boîte ou un collisionneur de polygone juste autour. Nos joueurs s'adaptent et le rendent juste un peu plus petit. Donc, je veux dire, sous la boîte de collision de nos joueurs, alors faites-le aussi grand, aussi grand, et ça, je pense que c'est assez. Enregistrez cela et appliquez-le sur notre périphérique. Oh, ok, super. Maintenant, nous avons un collisionneur de polygone sur notre joueur. Super, sauve ça. Maintenant, que devrions-nous faire ensuite ? Eh bien prochain devra ajouter ce collisionneur de polygone à notre boîte, ou au lieu de notre collisionneur de boîte ici. Pourquoi c'est ça ? Eh bien, parce que maintenant notre collisionneur de polygones
ne touchera plus les murs quand nous voulons sauter. De cette façon, il ne fera pas de vautour. La première chose dont nous aurons besoin, c'est que nous aurons besoin d'une référence à notre collisionneur de polygones. Il suffit donc de créer une variable de collision de polygone au type. On appellera ça mes pieds de couches. Et on va à UPS, désolé pour ça. Et nous allons, mes pieds de joueurs seront un composant qui est un polygone Collider 2D. Je veux obtenir, ok, super. Donc maintenant, nous avons une référence à nos joueurs adapter ce script. Et maintenant, on va changer ça. Donc on va changer le collisionneur de ma boîte à mes pieds, mes larmes pieds. Nous gardons cela et allons dans Unity pour voir si cela a fonctionné. Donc maintenant, si on se tient debout, on peut sauter, on ne peut pas sauter en double. Et si nous allons au mur, nous ne pouvons pas sauter sur le mur plusieurs fois. Excellent. Oh, ok, super. J' espère que vous avez apprécié cette courte vidéo et je vous verrai dans la prochaine. Tout le monde, désolé d'être passé, mais j'ai pensé que c'était une excellente occasion de vous rappeler de faire quelque chose de très important et c'est d'engager nos changements. Comme vous pouvez le voir, j'ai constamment engagé mes changements. Donc, je vais tout mettre en scène dès maintenant et je vais engager ce changement, les changements. Je vais appeler ça a laissé tomber la friction à 0 et a empêché le saut de mur. Super. J' espère donc que vous faites votre part du travail de toujours sauver et d'engager votre travail. Je te verrai dans la prochaine.
29. Comment ajouter des mécaniques d'escalade: Bienvenue à tout le monde dans une toute nouvelle vidéo, et ce sera probablement la vidéo la plus longue de la série. Donc, mais ça en vaut la peine parce que quand on clique sur le jeu, comme vous pouvez le voir ici, nous avons ces feuilles et ces feuilles nous aident à grimper sur notre puits dans notre environnement. Et à cause de cela, il y a des endroits qui étaient auparavant inaccessibles comme cette surface là-bas que nous pouvons maintenant grimper sur nos draps. C' est très amusant. C'est très cool. Et je veux que vous ne soyez pas très frustré par la longueur de cette vidéo. Je te verrai dans un bon accord, donc la première chose qu'on va faire est d'importer des sprites. Allons donc simplement dans des déclarations ou des ressources peu claires. Obtenez les déclarations et mettez-les à l'intérieur des sprites. Et allons de l'avant et créons un dossier. Nous appellerons ce terrain de dossier. Pourquoi ne pas cliquer sur les déclarations ou savoir que les chercheurs. Et par Ron voulait dire, j'espère avoir tapé ça correctement, les
mettre dans un environnement et découper nos feuilles de calcul. Alors faites ce 30 pour faire ce multiple. Je suis sûr que vous êtes déjà très familier avec ce que nous faisons. On l'a fait plusieurs fois et on va le découper. Alors allez-y et cliquez sur la grille découpée, la grille, la taille de la cellule. Donc 32 par 32 et trancher ce bébé. Ok, super. Maintenant ou cliquez sur Appliquer. Et je ne suis pas sûr que ça s'appelle des rideaux ou qu' on appelle des tricheurs suspendus ou pas, je ne suis pas sûr. Tu peux les appeler comme tu veux. Sauvegardez ça. Et au fait, on l'utilise parce que je n'ai pas trouvé d'autres sprites. En fait, libérez les autres sprites. Mais c'est bon. Retournons en arrière. On utilisera tout ce qu'on a à portée de main. Et il fait en fait un jeu plus amusant. Alors maintenant, il est temps de relever un défi. Donc je veux que tu finisses l'escalade. La première chose à faire est de configurer la carte de tuiles d'escalade avec ses couches. Et au fait, c'est un énorme défi. Ensuite, vous devrez créer une méthode d'escalade. Vous devrez vérifier si notre joueur touche la couche Bing de montée. Et vous devrez ajouter une vitesse d'escalade à l'axe y en utilisant la méthode get access. Enfin, vous devrez déclencher l'animation d'escalade pendant que notre joueur grimpe. Maintenant, c'est un énorme défi. C' est le plus grand défi que nous ayons fait jusqu'à présent. Donc, si vous vous sentez un peu débordée, vous pouvez commencer, puis faire une pause, puis recommencer. Ou tu peux me regarder faire le défi. Et chaque fois que vous avez l'impression d'avoir tout sous contrôle, arrêtez
simplement la vidéo et continuez. Je vais te donner ton temps. Alors arrêtez la vidéo dès maintenant et allez faire le méga défi. Ok, bienvenue de retour. Comment as-tu contourné ça ? Alors parlons. La première chose que nous devons faire est d'ajouter. Tils ici. Cliquez donc sur les rideaux dont nous avons besoin et sélectionnez-les. Maintenez le contrôle. Oh, désolé pour ça. Alors maintenez le contrôle et sélectionnez les choses dont nous avons besoin. Entraîne-le dans notre scène. Il nous demandera de créer ces styles. Alors allons dans les tuiles. Ils sont terrain, Non, ils ne sont pas tuiles de terrain va créer un nouveau dossier et ce seront les objectifs climatiques. J' espère que le climat est écrit correctement, alors grimpe marmonne, et maintenant nous les avons dans notre palais. Alors allons de l'avant et éditons ceci. Modifier, s'il vous plaît. Alors maintenant, nous sélectionnons, eh bien, avec la seconde, sélectionnez celui-ci et nous allons le déplacer ici et le mettre juste au-dessus de nos autres tuiles. Cliquez à nouveau sur manqué pour les déplacer et enregistrer cela. Et maintenant, nous avons la capacité de dessiner nos gouttes. Cool. Essayons ça une seconde. Oh, et avant de le faire, allons de l'avant et créons une grille de cartographie de tuiles. Je veux dire une carte de tuiles. Donc objet 2D, carte de tuiles, et nous appellerons cette carte de tuiles goto specter. On appellera cette carte de tuiles d'escalade. Excellent. Maintenant, revenez à la palette. Cliquez sur l'escalade. Il est déjà cliqué et maintenant nous pouvons le dessiner,
mais pas dans notre scène. Avant de le faire, je veux créer une petite plateforme. Alors allons de l'avant et au premier plan. Choisissons deux d'entre eux et nous allons les supprimer parce que je ne veux pas que ça ici maintenant. Revenons à l'arrière-plan, finit ça. Et voyons voir. Je veux faire un peu de montage ici, donc je vais peut-être accélérer cette vidéo. Oh, ok, bienvenue. Alors continuons. Donc, comme vous pouvez le voir, j'ai créé cette plate-forme ici que notre joueur peut obtenir aussi en sautant. Nous ne pouvons y arriver qu'en utilisant nos rideaux spéciaux. Alors ça va grimper et ajoutons nos rideaux. Et comme vous pouvez le voir, nous ne pouvons pas les voir. Nous allons donc changer cela en créant des couches pour nos tarifs. Allez dans ajouter un calque. Et créons ici une couche pour l'escalade. Non, ce n'est pas la couche de tri, mais nous l'utiliserons aussi pour toucher nos rideaux. Et nous allons créer un calque pour le calque de tri. Et maintenant, nous l'avons rendu devant l'arrière-plan, mais derrière le joueur. Excellent enregistrer que, revenir à l'escalade, aller dans l'inspecteur, Cliquez sur le rendu de la carte de tuiles, et dans la couche de tri faire cette escalade. Et maintenant, nous pouvons le voir parfaitement. Et nous allons aussi faire la couche sur le taux d'escalade. Une autre chose que nous devrions faire est d'ajouter un collisionneur. Alors allons de l'avant et ajoutons un collisionneur à la boîte. Et voyons, ce collisionneur est faux à 100%. Rendons-le plus petit et plus petit. Et zoomer et assurez-vous que la surface que le joueur peut toucher pour grimper comme à l'intérieur des rideaux. Alors faites-le comme ça parfait. Et une autre chose que nous devrions ajouter est un collisionneur composite. Donc les ports COM composites Collider 2D. Et nous allons nous assurer que le corps rigide est statique et que notre collisionneur de boîte est utilisé par le composite. Sauvegardez ça. Oh, ok, excellent travail. Continuons. La prochaine chose que nous devrons faire est de créer une fonction pour décliner. Parce qu'à partir de maintenant et nous ne pouvons pas grimper quoi que ce soit. Donc, si je clique sur le jeu, notre joueur se heurte simplement à nos tricheurs suspendus. Et une autre chose que nous devons faire est de nous
assurer que notre collisionneur composite ici est un déclencheur. Et ce que cela fait,
il peut être utilisé comme collisionneur, mais nous ne pouvons pas entrer en collision avec. Donc, par exemple, si on saute dessus, oh, en fait, je vais jouer ou peut-être pas arriver à ça. Oh, non, il ne peut pas. Donc il n'a pas besoin de l'échelle. Super. Ainsi, comme vous pouvez le voir, notre joueur n'entre pas en collision avec les rideaux. Sauvegardez ça. Et la prochaine chose que nous allons faire est d'aller dans notre Visual Studio et d'aller de l'avant et de créer notre fonction ou méthode de montée. Et nous allons générer ça. Donc, nous avons une fonction de montée qui est privée et ne renvoie rien. La première chose que nous allons faire est vérifier si nous touchons la couche d'escalade. Donc, nous l'avons déjà fait et utiliserons mes joueurs en forme. Je préférerais utiliser mes pieds pour grimper. Ainsi, comme toucher les calques, masque de
calque et le masque de calque ou utiliser le composant get masse et il a besoin d'une référence de chaîne. Cela signifie, même si nous savons que l'escalade est très facile à écrire, Nous allons revenir en arrière, le copier et le coller à l'intérieur d'ici. Et nous n'utiliserons pas la même méthode que celle que nous avons utilisée en saut. Vous saurez pourquoi très bientôt. Donc la prochaine chose que nous allons faire est que nous allons utiliser le get access. Et si vous sentez que vous pouvez continuer à défier à ce stade, il vous suffit de mettre la vidéo en pause, vérifier à nouveau le défi et de voir ce que vous devez faire et accompli sur vous-même. Alors mettez la vidéo en pause. Ok, on est de retour. Allons chercher l'axe. Donc bien, être utilisé la même méthode que nous avons utilisée pour la course. Donc, nous allons créer un flotteur qui s'appelle le lancer de contrôle. Et nous allons utiliser le gestionnaire d'entrée multiplateforme, point. Obtenez des axes, et cette fois il devrait être sur la verticale. Alors, allons voir quoi ? Oups, c'est encore un défi pour toi. Alors allons voir dans nos paramètres de projet et tandis que les entrées, gestionnaire
d'entrée vérifier la verticale et nous allons voir les États-Unis et W. Copier la verticale, revenir en arrière et à l'unité et je suis dans Visual Studio et rythme que, génial. Ensuite, nous devrons créer une vitesse d'escalade pour ajouter à notre joueur. Alors allez-y et faites ça. C' est exactement la même chose que pour la course, mais maintenant c'est la vitesse d'escalade. La vitesse d'escalade est donc égale à un nouveau vecteur deux. Donc maintenant ce que nous devons faire cela, nous allons devoir ajouter une vitesse dans la direction y, mais garder la vitesse de direction x la même. Donc, nous allons entrer dans mon corps rigide deux points d vitesse point x. Donc cette vitesse restera la même, en passant, si vous voulez l'essayer, vous pouvez réellement faire la vitesse sur le x 0. Ainsi, chaque fois que notre joueur touche les rideaux, il est coincé là et il ne peut plus bouger, ce qui est un peu plus logique. Mais parce que c'est encore une fois, je pense que je vais garder la vitesse x, n'
hésitez pas à le faire 0 f. Et la prochaine chose que nous allons faire est d'ajouter un lancer de contrôle dans la direction y. Mais nous savons déjà que ce sera trop lent. Nous allons donc créer une variable ici. Et bien sûr, ce sera un champ sérialisé. Ça va être un flotteur et ça va grimper à la vitesse. Et notre discours d'escalade devrait être, je pense que 8.5. C' est une bonne vitesse d'escalade. Donc, le lancer de contrôle va multiplier cela avec notre vitesse d'escalade. Fermez cette dernière étape. Ma vitesse de point 2D du corps rigide sera égale à la montée. Non, je veux dire, je voulais dire vitesse d'escalade. Merci. Fermez le point-virgule. Rappelez-vous toujours de fermer les point-virgules. Et maintenant, on a tout dit. Que devons-nous faire d'autre ? On doit vérifier si quelque chose a vraiment fonctionné. C' est de la confiance pour vous. Alors enregistrez que tout est sauvegardé et cliquez sur jouer. Et maintenant, on peut se déplacer. Si nous sautons, si nous
sautons, nous pouvons maintenant grimper et si nous laissons notre joueur tomber, il tombe effectivement des gouttes. Oh, ok, excellent. Une chose que je veux faire, c'est que je veux rendre ça un peu plus long. Donc c'est un peu plus long, juste comme ça, on peut même les faire toucher au sol, ce qui devient un peu comme une échelle. En fait, exactement comme une échelle. Alors retourne en arrière et vérifie ça. Cliquez sur jouer. Voyons notre joueur une action. Il touche les rideaux et il ne peut pas. Ok, il a besoin d'un petit coup de pouce pour sauter dessus. C' est parce que notre collisionneur ne touche pas les pieds du joueur. Changeons ça. Allons dans l'inspecteur et rendons le collisionneur un peu plus grand. Oh, oh, Talk Box Collider n'est pas allé avec l'escalade. C' est malheureux. Cela devrait être corrigé, mais pas de soucis en ce moment. J' ai sauvé ça. Cliquez sur jouer. Et maintenant, nous devrions pouvoir grimper. Oh, ok, super boulot. Nous allons maintenant étape finale devra ajouter l'animation d'escalade chaque fois que nous sommes sur les rideaux ou chaque fois que nous montons. Donc, pour ce faire, c'est super simple. Nous avons déjà la référence pour notre animateur et nous avons déjà un booléen pour l'escalade. Donc, comme nous l'avons fait avant, je vais vous donner une autre chance de terminer ça parce que c'est très facile. Suspendre la vidéo. Non, tu veux me regarder faire ça ok, donc mon animateur, donc mon animateur dot set Bool. Quand nous sommes en train de toucher, nous allons toujours être dans une animation d'escalade. Donc, nous allons aller de l'avant et obtenir la référence de chaîne. Copiez cela, revenez à Visual Studio basé. Et ça va être vrai. Et quand on est en dehors de la condition. Donc, chaque fois que notre joueur ne touche plus les feuilles, il peut en fait aller de l'avant et arrêter l'animation, qui signifie remettre l'escalade à espérer ce qui s'est passé là-bas et remettre l'escalade à faux. Sauvegardez ça. C'était une longue vidéo. OK, alors cliquez sur jouer. Et maintenant, notre joueur est coincé au drapé et va dans l'animation d'escalade. Et essayons encore ça. Et en fait, vous pouvez voir qu'il est accroché au goutte à goutte. Maintenant, une chose que nous allons arranger à propos de ça, c'est quand notre joueur touche réellement ces rideaux, je veux qu'il soit coincé à eux et qu'il ne tombe pas à chaque fois. Nous le ferons dans la prochaine vidéo parce que celle-ci est
trop longue et je te verrai dans celle-ci.
30. Tweaking les mécaniques Tweaking les Climbing: Ok, donc quelques choses qu'il faut changer ici. La première chose que nous allons changer, c'est que nous allons aller dans nos sprites et aller dans notre éditeur de sprites. Et si vous allez ici dans le coin supérieur gauche, vous pouvez voir que nous pouvons réellement personnaliser la forme physique. Et c'est la première chose que nous allons faire pour nos voyages. Donc, nous cliquons sur Générer et nous pouvons réellement changer le contour de notre collisionneur de boîte que nous allons ajouter. Pourquoi on fait ça ? Parce que je veux vraiment que notre joueur ne puisse grimper que s'il tient et touche les rideaux. Alors faites-les juste à l'intérieur des rideaux. Ça vous aidera. Il va s'accrocher à l'endroit. Donc, cliquez sur n'importe quel sprite que vous voulez et cliquez sur le bouton Générer juste ici et approchez-les un peu plus près du centre. De cette façon, ils se déplaceront et se sentiront plus, un peu plus réalistes. Donc pas tant que ça. Alors c'est aller de l'avant et garder ça à l'intérieur. On peut même celle-là à elle. Vous n'avez pas besoin d'être aussi précis. Mais si vous voulez être aussi précis, Yukon et tout est bon, celui-ci est bon, celui-ci est bon, celui-ci est bon, celui-ci est bon. Cliquez sur Appliquer et nous sommes prêts à continuer. Et maintenant, j'ai fait une erreur, un petit pieu auparavant, et j'ai ajouté un collisionneur de boîte. Nous devrons donc supprimer ce composant et ajouter un collisionneur de carte de tuiles à D et nous assurer qu'il est utilisé par composite. Alors vérifiez ça. Et le composite devrait être est déclencheur. Ok, super, sauve ça. Ensuite, nous allons faire, parce que par des essais et des erreurs, j'ai découvert qu'utiliser les pieds pour grimper n'est pas une bonne idée. Alors allons-y et changons-le en, non, en mon collisionneur de boîte, et ce sera mieux. Donc tout devrait aller bien sauf une chose. Et si nous cliquons sur le jeu et que nous avons sauté sur notre drapé, nous pouvons voir que notre joueur commence lentement à descendre un lâcher libre sur le w ou la flèche vers le haut. Et c'est là que votre défi intervient. Et votre défi est d'empêcher le joueur de glisser. Donc, la première chose que vous devez faire est de régler la gravité sur le corps rigide du joueur. Et puis vous devez régler la gravité à 0 tandis que les rideaux, tandis que le joueur est sur les rideaux. Cela nécessitera donc un peu de recherche, juste un peu de recherche. Et je suis sûr que vous serez en mesure de terminer le défi. Alors arrêtez la vidéo dès maintenant et allez-y et faites de votre mieux. Kay, bienvenue. Alors commençons. Commençons par commencer la vidéo. Donc, si vous cliquez sur joueur et regardez le corps rigide, vous pouvez voir ici que nous avons quelque chose appelé l'échelle de gravité. Et c'est que si vous survolez,
c' est à quel point la gravité affecte ce corps. Et c'est le composant qui va manipuler dans notre code. Comment allons-nous faire ça ? Eh bien, la première chose que nous allons venir ici et créer une variable qui est un flotteur. On appellera ça l'échelle de gravité de départ. Et quelle sera cette valeur ? Eh bien, ce sera
l' échelle de gravité de départ ou l'échelle de gravité avec laquelle nous commençons. Et ça va être l'échelle de la cavité originale sur mon corps rigide. Donc, nous allons taper l'échelle de gravité de départ. C' est égal à mon Rigid Body 2D point l'échelle de gravité. Et ce sera bien sûr, mais nous voulons être plus précis en utilisant l'échelle de gravité de mon corps. La prochaine chose que nous allons faire est que chaque fois que nous sommes sur les rideaux ou que nous touchons les rideaux, nous voulons régler mon échelle de gravité à points rigides à 0 F. Donc maintenant chaque fois que notre jeu touche le masque d'escalade ou la couche d'escalade, l' échelle de gravité passera à 02 signifie que l'effet le changera
à l' échelle de gravité de l'échelle de gravité de départ. Donc, si nous touchons la couche d'escalade, échelle de gravité de
mes corps rigides va devenir 0 et alors quand nous ne toucherons pas l'escalade, notre échelle de gravité sera également reculée, l'échelle de gravité de départ. Alors, sauvegardez ça, retournez dans Unity. Attendez qu'il comprenne ce qui se passe, et nous allons cliquer sur jouer et voir ce qui se passe. Donc maintenant, si nous montons, notre joueur reste sur les rideaux et ne glisse pas vers le bas sans toucher le clavier. Un tarif fille. J' espère que vous avez apprécié cette vidéo rapide et je vous verrai dans la prochaine.
31. Cinemachine Suivez caméra: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et comme le titre l'indique dans cette vidéo, nous allons faire suivre notre caméra à l'aide de quelque chose appelé machine Cinna. Donc, comme vous pouvez le voir maintenant, si nous bougeons notre lecteur, la caméra n'est pas statique. Il ne reste pas immobile et nous attend. Il bouge avec nous. Et même si nous grimpons, il bouge avec nous quand nous marchons, il bouge avec nous et quand nous sautons, va
aussi partout où notre joueur vise. Donc ou comme vous pouvez le voir, nous avons des caméras virtuelles. On a ajouté un cerveau à nos caméras. Donc maintenant, c'est en fait penser à des choses. Et je te verrai dans un peu. Ok, donc quelles sont des machines et pourquoi avons-nous besoin d'elles ? Comme vous pouvez le voir en ce moment, notre joueur se déplace juste dans l'environnement et la caméra ne prend pas en compte de lui du tout. Et ce que nous voulons, c'est que nous voulons que la caméra
suive réellement notre joueur pendant qu'il se déplace à travers le niveau, parce que nous allons ajouter un niveau beaucoup plus important qui passera d'ici et deux ici, peut-être en haut, peut-être en bas. On ne sait pas, mais on veut que la caméra le suive. Maintenant, avant les machines Cinna, tout ce que vous deviez faire, c'est que vous auriez besoin de créer un script et de mettre fin à ce qui est génial. Script. Créer un champ sérialisé qui obtiendrait le joueur et utiliser sa transformation pour aller et le suivre à chaque étape du chemin, ce qui était très lourd. Mais maintenant, nous avons la puissance des machines de cinéma, n'est-ce pas ? Commençons donc par importer des machines. Et pour ce faire, vous devez entrer dans la fenêtre ici, ici. Et vous devez aller dans Package Manager, cliquer sur Package Manager, et aller dans votre registre Unity. Et vous devriez avoir ce cinéma cinématographique, qui est vérifié ici. Et maintenant, ce que vous devez faire est que vous aurez simplement besoin de cliquer ici sur ce bouton d'installation. Il peut télécharger quelque chose. J' ai déjà téléchargé le paquet, il va simplement l'installer. Oh, ok, super. Bienvenue de retour. Donc maintenant, comme vous pouvez le voir en haut de notre écran, nous avons quelque chose appelé une machine pécheur. Qu' est-ce qu'une machine de cinéma ? Eh bien, une machine de cinéma est quelque chose qui nous permet de créer des caméras virtuelles. Nous avons toujours notre caméra principale. Et sur cette caméra, on a mis quelque chose qu'on appelle un cerveau ciné. Et ce cerveau conduit les autres caméras virtuelles que nous allons créer. Alors pourquoi on utilise ces caméras virtuelles ? Eh bien, dans les jeux 3D, ces caméras virtuelles sont utilisées pour créer des cinématiques. Par exemple, quel que soit le jeu que vous jouez, chaque fois que vous voyez une cinématique, c'est probablement parce qu'ils utilisaient une machine de cinéma ou un, je veux dire une caméra virtuelle. Et dans notre cas, pour un jeu 2D, nous l'utiliserons pour rendre notre jeu un peu plus dynamique. Alors allons tout d'abord dans notre caméra principale et cliquez sur ajouter des composants. Faites le plus petit clic sur ajouter des composants et tapez simplement dans un cerveau. Maintenant, nous allons ajouter un cerveau à notre appareil photo. Donc cinéma ciné cerveau, cliquez dessus. Et maintenant, nous avons la configuration du cerveau juste ici. Ensuite, nous allons aller dans notre hiérarchie et créer un objet de jeu vide. Et cet objet de jeu vide, nous allons réinitialiser. C'est ça. Ça n'a pas d'importance. Mais j'aimerais juste réinitialiser, Merci de les avoir tous en un seul endroit. Et nous allons renommer ceci en nos caméras ou simplement taper des lignes. Ok, et c'est pour le bien des organisations. Organisation. Mettons la caméra principale sous nos caméras. Et maintenant, allons de l'avant et d'envoyer une machine et de créer une caméra virtuelle 2D. Alors voyons, nous avons cette caméra virtuelle créer, recueillir sur cela. Et maintenant, nous avons quelque chose qui s'appelle un CM, le camp. Et si vous regardez à sa droite, vous pouvez voir que nous avons quelque chose appelé ici, suivez. Maintenant, j'ai laissé un lien dans les ressources pour tout ce que vous devez savoir sur les machines de cinéma. Vous pouvez aller de l'avant et lire le document entier ou simplement jeter un coup d'œil sur celui-ci et avoir une idée de ce que sont les choses. Donc, par exemple, ils regardent la suite le mélange de position sont des choses très importantes. Vous pouvez regarder la lentille. Il y a beaucoup, beaucoup, beaucoup d'informations utiles ici que vous pouvez tout
lire si vous ne comprenez pas en ce moment. Mais revenons à Unity et nous concentrons sur les choses importantes et principales. Nous avons donc ce suivi et c'est la partie la plus importante. C' est donc l'objet avec lequel la caméra veut bouger. Et cet objet est bien sûr notre joueur. Il suffit donc de cliquer sur le joueur et de le faire glisser dans la suite. Et maintenant, cette caméra devrait suivre notre joueur. J' ai une autre chose, parce que c'est un peu important et ça dépend de toi. C' est sous les lentilles, tu as quelque chose qu'on appelle la taille orthographique. Et c'est en fait la taille de nos caméras. Ainsi, vous pouvez le rendre plus grand et vous pouvez le rendre plus petit, et cela dépend de la façon dont vous voulez que votre jeu se sent. Donc, par exemple, notre caméra principale, nous pouvons voir ici que nous avons la taille, je pense que c'est 5.02. Et pour notre caméra virtuelle sera également 5.0.2. Faisons le taux de cinq ergo. Alors maintenant, allons de l'avant et renommons notre CMV Cam, qui est un nom très bizarre. Appelons simplement la caméra virtuelle VR. Et nous le mettrons sous les caméras. On a des caméras sous un seul objet ici, et c'est beaucoup de beurre. Alors, sauvegardez ça. Cliquez sur jouer et voyons ce qui se passe réellement. Alors maintenant, comme vous pouvez le voir, tout en se déplaçant, bouger dans notre monde, la caméra suit notre joueur. Donc maintenant, c'est beaucoup plus dynamique et ça se sent. Comme un vrai jeu 2D. Alors sortons de ça et discutons de quelques choses sur les caméras virtuelles. Maintenant. Si vous allez ici, si vous êtes toujours cliqué sur la caméra virtuelle et que vous regardez dans l'inspecteur, vous pouvez voir ici que nous avons quelque chose sur le corps qui est une transposition. Alors allons de l'avant et changeons cela et assurez-vous que vous l'avez sous la transposition de cadrage. Et vous aurez toutes ces différentes options bizarres juste ici que nous allons discuter. Mais avant de le faire, montez un peu et vous trouverez que vous avez une autre option ici qui s'appelle les guides de fenêtre de jeu. Si vous cliquez dessus, vous pouvez aller dans un jeu et vous pouvez voir que nous avons différentes fenêtres. Et chacune de ces fenêtres a un effet différent sur notre caméra virtuelle et comment elle utilise l'environnement ou comment elle suit notre jeu. Alors commençons les choses et expliquons quelques unes de ces choses. Il y a beaucoup d'options que nous ne couvrirons pas toutes. N' hésitez pas à aller dans la documentation et à lire à leur sujet si vous
voulez être méticuleux avec la première chose que nous avons est le regard à l'avenir. Donc, nous allons cliquer sur jouer et commencer le jeu et commencer à peaufiner de lui. Donc, si nous choisissons un regard à l'avance, vous pouvez passer la souris dessus. Ça ne dit rien, mais je vais te dire ce que ça fait. La première chose qu'
il fait, il détermine réellement où le joueur va aller. Donc maintenant vous pouvez voir que ce point jaune, en fait ce point jaune représente l'endroit où notre appareil photo regarde en ce moment. Donc nous avons ces deux sur 0. Vous pouvez voir que r point se déplace avec le joueur, mais il va. Mais si nous ajoutons un peu de regard à l'avance et lisser cela, le point jaune précédera le joueur. Et il calculera ou déterminera où le joueur pourrait aller ensuite et permettra de lisser la transition de la caméra. Ensuite, nous aurons quelque chose qui s'appelle la zone morte. Et cette zone, si nous augmentons la taille juste un peu, nous pouvons voir que nous aurons une zone à l'intérieur de nos guides ou guides de fenêtre. Et si on se déplace dans cette zone morte, la caméra ne bougera pas. Il ne suivra le joueur que s'il sort la zone et il est déterminé par ce bouton jaune ou point jaune. Alors maintenant, allons-y. Par exemple, si nous nous déplacons à l'intérieur de notre zone morte, nous ne nous enregistrons pas ou la caméra ne bouge pas avec notre lecteur. De quoi d'autre devrions-nous parler ? Donc je pense que nous allons ajouter un peu de cette zone ici fera 0.20.2. Oh, d'accord. Quoi d'autre devrions-nous oh, excusez-moi. Donc 0.2 par 0.2, s'il vous plaît commencer à qui et quoi d'autre devrions-nous regarder ? Nous avons quelque chose qui s'appelle l'amortissement. Et allons-y et augmentons. La meilleure façon de découvrir ce que tout cela fait est simplement de les augmenter et d'essayer le jeu. Alors maintenant amortissant, vous pouvez voir qu'il va lentement à l'endroit où se trouve le joueur. Ne saute pas immédiatement là où il est et le met à 0. Vous pouvez voir que l'appareil photo devient très rapide et il a
en fait sa propre sensation au jeu. Et tous ces éléments peuvent être ajustés à votre préférence. Ils peuvent également être rendus très extrêmes, ils peuvent être faits à 0. Cela dépend de vos préférences, la façon dont vous voulez faire votre terrain de jeu. Et rappelez-vous toujours chaque fois que vous changez des choses ici, vous devez vous en souvenir. Souvenez-vous d'eux parce que lorsque vous cliquez à nouveau sur jouer ou sortez du mode de jeu, tout sera réinitialisé. Et maintenant, c'est l'heure de votre défi. Et votre défi sera de mettre en place votre camp de suivi. Donc, la première chose, vous devez régler votre, les caméras virtuelles à votre propre préférence en fonction de la façon dont vous voulez que votre jeu se nourrit. Et vous le ferez en utilisant la taille de la caméra, en utilisant la taille de la zone morte et en utilisant le regard vers l'avant. Ainsi, vous pouvez mettre la vidéo en pause, ou c'est simplement la fin de la vidéo. Attendez qu'il se termine et allez de l'avant et configurez les caméras virtuelles selon vos préférences car c'est votre jeu. Ce n'est pas mon jeu. Je le fais comme je veux et je veux que tu le fasses comme tu le veux. Donc je vais changer un peu et je te verrai dans un peu. Ok, donc je vais juste faire quelques changements ici. Il ne va pas être beaucoup sortie les zones mortes à 0,2 dans la largeur et la hauteur. Et je vais penser, j'ajouterai juste un peu de regard devant avec un peu de regards se déplaçant et l'amortissement. Je pense que je vais garder la même chose. Et si nous cliquons sur jouer maintenant, voyons comment ça se sent. Si nous marchons, éteignons les guides de la fenêtre. Donc, si nous éteignons les guides de fenêtre, alors que nous bougeons, notre appareil photo déplacé était avec nous. Peut-être que je vais ajouter un peu plus de lissage, alors faites-le trois. Et ça se sent vraiment très bien. Faites cela un peu plus 0,02 et génial, je pense que c'est assez lisse et cool. J' espère que vous modifiez vos propres caméras virtuelles selon vos préférences, et je vous verrai dans la prochaine.
32. Extension de Cinemachine Confiner: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et celui-ci, comme vous pouvez le voir, nous avons fait un plus grand niveau, qui a besoin d'un peu plus d'ajustements, mais cela fonctionnera pour l'instant. Et ce que nous avons fait maintenant, c'est que si nous bougeons notre caméra, comme vous pouvez le voir, elle se déplace librement sans joueur. Mais si nous allons au bord, vous pouvez voir qu'il ne se déplace plus au-delà de ce bord. Ça veut dire que nous avons créé un monde confiné. Et pourquoi avons-nous fait ça ? Eh bien, ça donnera à notre jeu un sentiment d'immersion. Et chaque fois que notre joueur grimpe, il ne voit plus rien au-delà du royaume de notre combinateur mondial. Alors ne perdons plus de temps et nous allons entrer et commencer. Ok, donc le problème ici, en ce
moment, c'est que chaque fois qu'
on joue, on peut voir ce qui se passe dans les coulisses. Donc, cela sort l'émergent de notre jeu et rend notre jeu en fait pas sentir réel et se sent comme il a fonctionné, il l'est, mais nous ne voulons pas que le joueur le sache. Donc nous devons changer ce qui se passe. Ce que nous allons faire, c'est que nous allons créer un confiné autour de notre niveau. Et cela confiné ou ne laissera pas notre caméra aller au-delà. Alors faisons ça. Si vous allez dans notre inspecteur et faites défiler vers le bas, vous pouvez voir ici que nous avons quelque chose appelé extensions. Allons de l'avant et ajoutons une extension. Alors cliquez sur ça. Et vous pouvez voir que nous avons beaucoup d'options. Mais ce qu'on va avoir besoin, c'est de cette machine de cinéma, plus fine. Cliquez dessus. Et en dessous, vous pouvez voir maintenant que nous avons un nouveau composant qui est Santa machine confirmer plus fin. Et il a besoin d'une forme délimitante. C' est à d. génial. Ce que nous allons faire, c'est créer une carte de tuiles. Et cette carte de tuiles sera notre combinateur mondial. Et cela empêchera notre caméra d'aller au-delà de ça. Cliquez sur File Map. Faites un clic droit sur cela. Et nous allons créer un objet 2D qui est une carte de tuiles, va changer son nom en monde confiné. Et maintenant, nous avons une nouvelle configuration de carte de tuiles. Si nous passons à notre pilote de tuiles, nous devrions avoir notre finale WorldCom. Et vous pouvez choisir d'avoir votre pile qui représente le mot confinement ou ce qu'il est. Mais je vais choisir de l'avoir comme ce bloc central juste ici. Alors allons de l'avant et créons notre monde confiné là, juste ici. Ok, et maintenant nous l'avons mis en place, mais quand même, cela ne fonctionne pas correctement, correctement. Et c'est parce que nous n'avons toujours pas ajouté les limites pour ça. Donc ce que je vais faire maintenant, c'est que je vais rendre notre niveau juste un peu plus grand. Et pour voir comment cette caméra fonctionne réellement, et je vais en faire une vidéo rapide en utilisant la magie du montage vidéo. Alors, on se voit dans un peu. Bon, bienvenue. Comme vous pouvez le voir ici, j'ai créé une plateforme. J' ai augmenté la taille ici. J' ai ajouté une échelle pour atteindre le sommet et une sorte de pièce bizarre juste ici. Je ne suis pas sûr de ce que ça fait. Et c'est fondamentalement tout. Et ce que je voulais juste accomplir ici, c'est juste augmenter notre niveau pour le déplacer. Maintenant, revenons dans notre tuile et choisissons WorldCom plus fin et créons le confinement autour de notre monde. Alors allons-y et faisons-le. Rends-le si grand. Et allons-y et rendons-le aussi grand ici aussi. Donc, cela dépend de la façon dont vous le voulez. Tu n'as pas à le faire exactement comme je le fais. Vous allez de l'avant et créez votre propre plateforme et rendez votre propre monde confiné. Mais ce sur quoi tu dois rester concentré, c'est qu'on a besoin de ça ici. Comme vous pouvez le voir, il s'agit de la caméra que nous
avons et vous devez vous assurer que cette caméra s'adapte réellement. Donc ne jamais créer, par exemple, quelque chose de très petit, comme ici. Et cela ne permet pas à notre caméra de s'adapter entre ces deux points. Alors assurez-vous de garder ça à l'esprit. Donc contrôlons z deux fois afin d'inverser ces changements. Donc la prochaine chose que nous allons faire est d'ajouter un collisionneur de polygone à notre monde confiné. Alors allons-y et faisons-le. Et pourquoi faisons-nous ça ? Eh bien, parce que si vous regardez de près notre caméra virtuelle visuelle ici, vous pouvez voir qu'il a besoin d'un collisionneur à D qui lui dira comment il sera confiné. Et un collisionneur de polygone est le moyen idéal de le faire. Donc, comme vous pouvez le voir, c'est très grand et va changer ça très rapidement. Cliquez ici sur modifier. Et allons-y et ajoutez-la à notre confiné. Maintenant, ça n'a pas besoin d'être parfait. Vous avez juste besoin de vous assurer que les lignes vertes sont à l'intérieur de vos tuiles de combinateur de monde. Alors allons-y et rendons ça aussi grand. Et nous choisissons un collisionneur de polygone parce qu'il est très facile à manipuler. Alors faites-le si grand, puis maintenez le contrôle pour supprimer cela. Et maintenant, nous l'avons fait. Un carré. C' est un polygone, mais c'est un carré. Et assurez-vous que la ligne verte ou à l'intérieur de ceci, ces tuiles, ou tout ce que vous avez choisi pour faire le combinateur mondial N. Et je pense que c'est génial et ça marche bien. Alors, sauvegardez ça. Et maintenant, allons-y et ajoutons que ce monde l'a confinée à notre caméra virtuelle. Alors cliquez sur la caméra virtuelle, l'appareil photo à nouveau, descendez dans les extensions et maintenez simplement les opérations, maintenez le confinement du monde ou attendez de revenir et maintenez le monde confiné et faites-le glisser dans la forme de délimitation 2D. Comme vous pouvez le voir maintenant, nous avons cette forme délimitante. Alors jouons ça et voyons une chose qui ne va pas. Alors maintenant, nous cliquons sur le jeu, et comme vous pouvez le voir, nos joueurs ont tout simplement disparu dans le contre-naturel ce qu'on appelle ci-dessous. Et pourquoi c'est ça ? Eh bien, si nous cliquons sur le joueur et l'emmenons à cet endroit, par
exemple, et cliquez sur jouer à nouveau. Il disparaît toujours dans une maturité, même là où c'est. Et pourquoi c'est ça ? Eh bien, parce que notre joueur est confus, il ne sait pas où il devrait être ou avec
quoi il devrait interagir parce que notre monde confiné en ce
moment a un collisionneur de polygones dessus et il ne sait pas s'il devrait se tenir sur ce polygone ou s'ils flottent sur ce polygone, il ne comprend pas ce qui se passe. Et le problème avec cela est que si nous allons dans nos paramètres de projet, c'est proche de cela et aller dans notre physique 2D et élargi. Si nous regardons ici, nous pouvons voir cette matrice et ce qu'est cette matrice. C' est, si vous le lisez,
c' est dire matrice de collision de couche. Donc, il nous dit quelles couches interagissent et entrent en collision les unes avec les autres. Ainsi, par exemple, vous avez l'escalade qui interagit avec chaque couche qui est. Par exemple, par défaut interagit également avec chaque couche disponible. Et si nous regardons notre joueur, alors retournez à Specter. Tout d'abord, notre confinement mondial est sur la couche par défaut, et notre joueur est sur la couche par défaut. Cela les fait interagir tous les deux à cause de cette matrice. Et pour désactiver cela, vous pouvez simplement cliquer sur ce bouton et il arrêtera l'interaction entre ces deux collisionneurs. Et c'est là que je vous emmène à votre défi. Et votre défi sera de créer une caméra confinée R. Donc, la première chose que nous devons faire si vous ne l'avez pas déjà fait est de
créer un plus grand niveau pour que votre joueur et votre appareil photo puissent se déplacer. La deuxième chose que vous devez faire est d'ajouter une collision au collisionneur du monde confiné, je veux dire carte de tuiles. Ensuite, vous devez créer une couche de joueur et une couche plus fine WorldCom. Et enfin, vous devrez ajuster la matrice de la couche physique pour le joueur et le combinateur 40. Alors mettez la vidéo en pause maintenant. Vous savez déjà comment créer ces calques. Vous m'avez vu créer le plus grand niveau et à la collision. Donc, la seule chose que vous n'êtes pas très familier avec, R comme la matrice métrique des couches, mais je suis sûr que vous ferez un excellent travail. Alors arrêtez la vidéo dès maintenant et allez-y et faites ce défi. Oh, ok, bienvenue. Alors faisons ça. Donc, la première chose que nous devrons faire est cliquer sur le joueur et aller à l'inspecteur. Et nous choisirons ce calque et nous ajouterons un calque. Nous allons donc créer notre couche de couche, et nous allons créer notre couche confinée du monde. Une autre étape supplémentaire que nous ferons est de créer une couche de tri pour le WorldCom plus fin. Nous n'avons pas à le faire, mais juste au cas où nous le garderions derrière l'
arrière-plan parce que c' est là que nous voulons qu'il soit rendu. Alors sauvegardez cela, retournez dans le joueur et faites ce joueur sur la couche de joueur et appliquez-le au préfabriqué, retournez dans le combinateur mondial. Et continuons à en faire une couche de confinement du monde et allons dans le moteur de rendu de la carte de tuiles et assurez-vous qu'il s'agit d'une couche de tri. Le monde est confiné et sauve ça. Et maintenant, passons aux Paramètres du projet, faites défiler vers le bas dans la matrice et comme vous pouvez
le voir, les couches que nous avons créées, le confinement du monde et le lecteur sont maintenant disponibles. Donc, ce que nous allons faire, c'est nous tourner de tout ce que le monde peut mieux, interagir avec. Donc maintenant, le confinement du monde ne touche rien, il n'affecte rien. Il limite simplement notre appareil photo dans un espace déterminé. Donc maintenant, si nous
gardons ça, retournons dans notre joueur et le déplacer ici jusqu'au bord. Comme vous pouvez le voir même dans notre scène, notre caméra se déplace librement. Mais chaque fois que nous arrivons au bord, vous pouvez voir qu'il ne bouge plus. Essayons nos nouvelles caméras. Cliquez sur jouer. Et maintenant on bouge. Comme vous pouvez le voir, la caméra ne va plus derrière la scène, et maintenant nous pouvons sauter et ok, nous avons à peine coupé ça. Et maintenant, comme vous pouvez le voir, nous ne voyons plus ce qui se passe
dans les coulisses et nous pouvons malheureusement arriver à ce bord. Mais comme vous pouvez le voir, nous avons créé un confinement et rendu tout beaucoup plus réaliste. Alors pourquoi voulons-nous même que ce soit une heure de jeu ? Eh bien, c'est vraiment cool. Tout d'abord, deuxième chose, Il se sent comme un monde réel et il donne un sentiment d'immersion à quiconque joue notre jeu. Et il comprend qu'il y a des limites et des limites à notre monde. En plus, il ne voit pas ce qui se passe derrière la scène. Mets-le derrière la scène. D' accord. Je dois arrêter de faire ces blagues et je te verrai dans la prochaine vidéo.
33. Appareil photo d'état: Bienvenue à tout le monde dans une toute nouvelle vidéo. Comme vous pouvez le voir, nous avons quelque chose de différent ici dans notre hiérarchie, où nous avons créé une caméra dirigée par l'État. Et nous avons ajouté beaucoup de choses ici qui seront explicatives et détaillées. Mais, comme vous pouvez le voir maintenant quand nous sommes au ralenti, la caméra a zoomé et quand nous commençons à courir, la caméra fait un zoom arrière. Et quand on saute sur les draps suspendus, on voit que la caméra fait un zoom arrière. On peut sauter, on peut bouger, et la caméra fait un zoom avant et arrière. Et notre joueur sent que nous savons quand il court et marche, ce qui leur donne la sécurité et cela rend notre jeu beaucoup plus professionnel. Alors je te verrai dans un peu. Ok, alors allons de l'avant et créons une caméra basée sur l'état ou l'animation. Donc, je vais utiliser le mot état et animations de façon interchangeable. Ils signifient la même chose dans le contexte. Alors allez à la machine du Père Noël et cherchez des caméras dirigées par l'État. Cliquez dessus et cela va créer un appareil photo piloté par l'état CM. Et nous allons changer ce nom pour appareil photo piloté par
l'état parce que nous ne voulons pas que tout soit écrasé ensemble. Et comme vous pouvez le voir, nous avons une caméra virtuelle. Alors allons de l'avant et tout, enfant, notre caméra virtuelle qui est utilisé sous la scène donnée caméras. Et maintenant, si vous faites défiler vers le bas et indiquez différentes caméras dans l'inspecteur, vous pouvez voir que nous avons des enfants de caméra virtuelle. Et cela signifie que chaque fois que nous voulons ajouter des caméras virtuelles à notre caméra dirigée par l'État, nous devons les enfants. Alors, que font ces caméras virtuelles sous caméras dirigées par l'État ? Eh bien, ils sont utilisés pour chaque état ou animation que nous avons. Alors allons de l'avant et supprimons celui qui était déjà présent. Donc supprimer la caméra CM et garder la caméra virtuelle que nous avions et renommer la
caméra virtuelle en cours d' exécution et dupliquer cela et créer une caméra virtuelle au ralenti. Donc maintenant, nous avons sous piloté par l'état, une caméra virtuelle en cours d'exécution et une caméra virtuelle en marche au ralenti. Et une autre chose que nous devons prendre en considération est que nous
devrons ajouter le joueur comme cibles animées. Donc, comme vous pouvez le voir ici, nous avons quelque chose appelé Cible animée. Et traînons le joueur dans ça. Et maintenant, nous avons le joueur comme celui qui présente toutes nos animations et c'est ce dont nous avons besoin. Ensuite, nous allons faire la différence entre la course et la marche au ralenti, nous allons changer l'échelle orthographique de chaque caméra. C' est donc là qu'il s'agit de votre préférence. Donc, par exemple, si vous voulez, le joueur à être, alors disons zoom sur la caméra chaque fois que son ralenti et zoom arrière chaque fois que sa course, vous devez aller dans la caméra virtuelle, aller sur les terres. Et augmentez cette taille orthographique à, disons six. Faisons ça 16. Et la caméra virtuelle pour le ralenti sera quatre. Et comme vous le savez, cela est purement basé sur votre préférence. Vous pouvez les rendre plus grands ou plus petits selon vous, mais je fais juste des exemples de numéros pour le bien de l'exemple. Ok. Alors la prochaine chose que nous allons faire est de montrer ce qui se passe. Donc maintenant notre joueur est, par exemple, dans cette scène et il bouge mais rien ne se passe encore. C' était bien parce que nous avons oublié de créer ces états. Alors maintenant, allons de l'avant et ajoutons un état. Et ce que cela fait, c'est qu'il crée un nouvel état. Et cet état s'appelle le ralenti. Et la caméra pour elle est la caméra virtuelle de ralenti, va créer un autre état. Et ce sera pour l'état en cours d'exécution, et il utilisera la caméra virtuelle pour l'exécution. Et maintenant, si nous sauvegardons cela et si nous cliquons sur jouer, et voyons ce qui se passe. Donc, comme vous pouvez le voir, c'est un peu plus zoomé. Et quand on commence à courir, on peut voir que la caméra sort. Lorsque nous commençons la course, nous faisons un zoom arrière. Mais comme vous pouvez le voir, c'est un peu trop rapide. Il s'éteint et ensuite, si vous aimez ce genre de zoom, c'est génial. Pas besoin de le changer, mais nous pouvons réellement y apporter des modifications. Et la façon dont nous le faisons, c'est que nous avons beaucoup, beaucoup d'options. Donc, la première chose que nous avons le poids et cela en fait attendre pour revenir, par
exemple, à l'un ou l'autre lien. Alors faisons cela, par exemple, 1 seconde. Et maintenant, si nous courons et arrêtons de courir à l'attente, 1 seconde, puis zoome dans une autre option que nous pouvons changer ce minimum qui va ralentir le je ne suis pas sûr de ce qu'il fait exactement, mais ça, faisons-le cinq par exemple et voir ce que arrive. Alors maintenant on bouge, on court, puis on remonte et on descend. Donc, il faut cinq secondes, je pense, pour zoomer, et puis il faut 1 seconde pour zoomer et bien, alors maintenant nous savons quel est le minimum. C' est le temps minimum d'attendre avant d'entrer dans le prochain état de caméra virtuelle. Mais revenez à 0. Que pouvons-nous changer d'année ? Eh bien, nous avons la valeur par défaut du terrain, qui détermine le temps qu'il faut pour faire réellement l'animation ou le zoom avant et arrière. Et nous pouvons choisir ce que nous voulons changer. Ainsi, par exemple, nous pouvons changer la facilité d'entrée ou de détente. Et faisons cela par exemple, à quelques secondes. Alors maintenant, quand nous commençons à marcher, il faut deux secondes pour zoomer et nous nous arrêtons, attendez 1 seconde et puis il nous faut 2 secondes pour zoomer. Et sortons du mode de jeu. Et comme une dernière chose que je veux vous dire c'est que vous pouvez réellement créer vos propres plantes personnalisées. Cliquez donc sur Créer des mélanges personnalisés. Et nous allons l'ajouter à l'intérieur de l'animation. Et il s'appellera caméra dirigée par l'État et sauvegardez cela. Et vous aurez une sorte de flèche bizarre juste ici. Ne vous inquiétez pas pour ça. Si vous avez simplement effacé ça, ça disparaît. Et chaque erreur que vous pouvez simplement effacer et qu'il ne casse pas le jeu n'est pas si mauvaise. Ok, donc la prochaine chose que nous allons faire est d'aller dans plans
personnalisés et ici nous avons le mélangeur, donc nous allons simplement faire glisser ça et envoyer une machine et maintenant nous pouvons créer nos terres personnalisées. Alors allons-y et faisons-le. La première terre que nous allons créer sera de la marche au ralenti et à la course. Et ce sera une facilité d'entrée et de sortie. Et le temps qu'il faudra pour le faire sera, je pense que cela devrait être très rapide. Donc je vais faire cette 0,5 seconde. Et disons que le deuxième mélange sera de la course au ralenti. Et je pense que la facilité et la sortie devraient prendre, je pense que cela ne devrait pas prendre plus de 1,5. Donc ce sera en quelque
sorte, alors voyons comment cela fonctionne. Si nous cliquons sur jouer. Maintenant, nous bougeons, nous passons directement à la course. La caméra sort immédiatement. Si nous arrêtons, il effectue un zoom avant et prend 1,5 seconde. Que devrions-nous faire d'autre ? Eh bien, nous devrions aussi ajouter une caméra virtuelle à l'escalade, mais ce sera votre défi. Et votre défi sera d'ajouter une caméra d'état d'escalade. Donc, vous devez créer une caméra d'état pour l'escalade. Et vous devrez faire le mélange entre d'autres caméras et des caméras d' escalade
épaisses à votre propre rythme de gain. Alors allez-y et faites un défi, et je serai là pour vous attendre. Oh, OK, bienvenue. Alors, qu'est-ce qu'on va faire ? Donc ce que nous allons faire, c'est nous allons dupliquer le ralenti et nous
allons appeler cette doublure de caméra virtuelle. Que devraient faire les caméras d'escalade ? Je pense qu'il y a deux façons d'y arriver. Je pense que chaque fois qu'on grimpe, on devrait zoomer. Donc le joueur a du sens parce que le joueur, quand il grimpe, il ne voit pas très loin parce qu'il se concentre sur l'escalade de la feuille. Ok, ce n'est pas très logique, mais c'est la logique de mon gain. Donc je vais le rendre un peu plus petit et en faire un 2.5. D' accord. 2.5. est peut-être trop petit. Faisons-le. Combien coûte le ralenti ? 43. Ok, je pense que trois, c'est assez bon. Maintenant, nous retournons en arrière et les caméras dirigées par l'État et nous allons de l'avant et ajoutons un atterrissage. Donc ici, je vais choisir de passer de n'importe quelle caméra à l'escalade. Ça prendra deux secondes. Je pense que deux secondes, c'est bon ou 1.5 à 1.5. Et de l'escalade à n'importe quelle caméra, je pense que ça devrait prendre deux, peut-être 2,5. Parce qu'on y
pense parce que chaque fois qu'il arrête de grimper, il arrive à ça. Il est fatigué. Il regarde toujours le sol, puis il bouge la tête et voit tout. Ok, super. Excellent. Alors, sauvegardez ça. Je sais que ce n'est pas très logique, mais juste traîner là avec moi. Et vous pouvez créer votre propre logique de jeu d'ailleurs, et vous n'avez pas à suivre la mienne. Alors maintenant, il dirige la caméra, il sort. Quand il arrête de courir, la caméra fait un zoom arrière et s'il saute et maintient l'échelle ou je veux dire la feuille suspendue. Eh bien, je n'ai pas vu beaucoup de changement dans ce but parce que nous ne l'avons pas ajouté à l'état. Alors allons de l'avant et ajoutons un état ou un nouvel état, grimpant et grimpant l'échelle. J' ai sauvé ça. Et maintenant, démontrons. N' oubliez pas d'ajouter les états ou maintenant nous courons, nous zoomons, nous sautons et il zoome. Et quand il arrive au sommet, il fait un zoom arrière très rapide. Et je n'aime pas cet effet. Il a besoin d'un peu plus de changement, mais pas de s'inquiéter à ce sujet. On le comprendra plus tard quand on modifiera notre jeu. J' espère que vous avez apprécié la vidéo. J' espère que tu t'es amusé dans cette section. Et comme une dernière chose que nous ferons, c'est que nous allons engager notre changement. Comme vous le voyez, je l'ai commis depuis le début. J' espère que vous aussi. Nous allons donc créer des états animés avec un point d'exclamation parce que nous avons terminé la section. Tu as été incroyable. Je tiens à vous féliciter et je veux que vous preniez une seconde pour apprécier tout le travail que vous avez fait jusqu'à présent. Alors donne-toi un high 5 et je te verrai dans la prochaine vidéo.
34. Section 5 : Ajouter des ennemis et des Enemies - Faire des ennemis: Bienvenue à tout le monde dans une toute nouvelle vidéo et une toute nouvelle section. Donc, ce sera un peu d'une vidéo plus longue, mais il en vaudra la peine, parce que nous ajoutons enfin quelques ennemis dans R c. Donc, comme vous pouvez le voir ici, notre ennemi, chaque fois que nous appuyons sur le jeu, Aller dans la scène. Notre ennemi marche. Et non seulement il fait ça, mais
il retourne quand il arrive à un mur. Comme vous pouvez le voir, il a une petite couronne sur la tête et il continue de rebondir et de rebondir et de rebondir à gauche et à droite. Maintenant, nous pouvons quand même nous n'avons toujours pas la capacité de se faire blesser par eux, mais nous ajouterons ça très bientôt. Je veux deux choses de toi. Tout d'abord, je veux beaucoup de concentration. Et la deuxième chose dont j'ai besoin, c'est vos patients. Alors allons de l'avant et fait sombre. Ok, donc ajouter des ennemis. Enfin, la première chose que nous allons faire est d'aller dans les ressources et d'importer l'ennemi. Sprites va créer un dossier. On appellera ce dossier l'ennemi. Et nous allons ajouter ces protéines au dossier ennemi. Maintenant, ce qu'on va faire, c'est qu'on va découper tout ça. Nous allons en faire une animation et nous allons
créer un nouvel objet de jeu appelé ennemi avec sprite, un moteur de rendu de sprite, un corps rigide,
un collisionneur, et tout le reste. Donc, nous avons fait toutes ces étapes avec le joueur. Donc, si vous sentez que vous avez la confiance et bien sûr le courage, allons-y et faisons une petite course. Je vais tout faire et je vais en parler pour que vous puissiez le faire avec moi en même temps et nous verrons qui peut faire ça d'abord, 0, K. Commençons. Donc la première chose que nous allons faire est que nous allons aller dans le sprite fera les pixels par unité. Allons-y et faisons-les 30. Nous allons rendre ces modes privés multiples, et nous allons l'appliquer. Nous allons dans Sprite Editor et nous voyons que nous avons 123456. Allons de l'avant et prenons notre calculatrice de confiance. Nous avons donc 228 divisés par six. Ça fait 3838. Allons-y et découpons. Il fait déjà 38 sur 28. Cliquez sur les diapositives et elles sont parfaites. Appliquez ça, retournez en arrière. Et maintenant, nous avons notre sprite tranché. Allons de l'avant et créons un objet de jeu vide. On le réinitialisera à son endroit d'origine. Mettons-le ici sur la plate-forme, et allons de l'avant et renommons le en ennemi. Maintenant, nous avons un objet de jeu ennemi. Poids. Il n'a pas renommé l'ennemi. S' il vous plaît entrer, et maintenant c'est un ennemi. Allons de l'avant et ajoutons un moteur de rendu de sprite à notre ennemi et choisirons un sprite par défaut pour cela. Et maintenant on ne peut toujours pas le voir parce qu'il faut créer des couches. Allons donc ajouter un calque de tri à notre ennemi. Nous appellerons cette couche de tri ennemi. Et nous le mettrons entre l'escalade et le joueur. Donc, il va être rendu et inondé devant l'arrière-plan, mais derrière le joueur et le premier plan. Ok, c'est fait. Et maintenant revenir à l'ennemi, faire la couche de tri sur ce produit comme ennemi. Et voilà. Notre ennemi est présent sur les lieux. Rendons-le un peu plus grand. Je veux que je pense 22. Faisons-le 22. D' accord. Maintenant, il est plus grand et semble mieux, plus grand que le joueur. Excellent. La prochaine fois, on ajoutera un corps rigide. Donc Rigid Body 2D composant le rendra cinématique. Et nous allons ajouter un collisionneur à notre ennemi. Donc, je vais choisir un collisionneur de capsule
libérera également la rotation sur le Zed pour le corps rigide. Fermez ça. Je ne pense pas qu'on ait besoin de faire ça. Je vais le faire pour le bien de le faire, juste au cas où. Alors allons de l'avant et éditer le collisionneur le rendra petit. On n'a pas besoin de le faire grand. Et c'est le collisionneur qui déterminera quand notre joueur sera touché. Donc je vais le rendre petit, aussi petit que possible tout en le rendant juste. Donc je pense qu'à peu près oui, c'est assez bon. Donc juste comme ça. Oh, ok, super. Vous ne voulez pas ajouter une grosse boîte à coup sûr à votre ennemi parce que cela rendrait le jeu un peu injuste. Ok, maintenant nous sommes prêts à y aller. Ok, alors un nuage décontracté, quoi d'autre avons-nous besoin ? Eh bien, nous avons besoin d'un animateur sur l'ennemi Gn, et nous devons créer une animation. Alors faisons ça. Sélectionnez les sprites, cliquez avec le bouton droit de la souris et créez l'animation en cours. Donc en cours d'exécution. Et allons-y et emmenons-le dans le dossier d'animation. Mais la première chose que nous devons faire est que nous devons aller dans l'animation et créer un dossier. Nous appellerons ce joueur pour commencer à tout organiser afin que nous n'ayons pas plusieurs courses. Et puis on va créer un dossier et on l'appellera ennemi. J' adore créer des dossiers. Cela nous donne vraiment un champ très organisé à notre jeu et à notre hiérarchie. Maintenant, à l'intérieur de l'ennemi, à l'intérieur de l'animation, nous allons créer un contrôleur d'animateur et le nommer ennemi. Ensuite, nous allons retourner dans les sprites et récupérer notre animation, mettre dans le dossier ennemi, et nous l'ajouterons à l'animateur ici dans notre panneau. Ok, un pas de plus. Nous devons ajouter l'animateur à l'Animateur et notre inspecteur pour l'ennemi a sauvé cela. De quoi d'autre avons-nous besoin ? Eh bien, on a tout, alors allons-y et démo. Voyez ce qui se passe si ça a fonctionné. Faire face à la vue de la scène et notre ennemi ne fait rien. Pourquoi c'est ça ? Eh bien, je pense parce qu'il ne bouclait pas. Sauvegardez ça, revenez en mode lecture. Cherchez la scène, et maintenant notre ennemi est en cours d'exécution. Un très, très, très cool. Ok, super. Maintenant, ce que nous allons devoir faire, c'est d'ajouter du comportement à cet ennemi et de le faire partir, au moins maintenant sur le côté gauche de notre écran. Donc nous allons créer un script pour l'ennemi, et nous appellerons cela simplement ennemi. Donc entrez moyenne créer un nouveau script était le nom de l'ennemi, créer et ajouter du poids pour Visual Studio. Pourquoi il s'est ouvert ? Ok, maintenant nous avons le script ennemi retourner dans les actifs et mettre l'ennemi à l'intérieur des jupes pour ne pas le perdre. Ok, merci. Visual Studio. Pourquoi continuez-vous à ouvrir les scripts maintenant, double-cliquez sur l'ennemi, et maintenant nous avons un tout nouveau script pour l'ennemi. Oui. Alors, qu'est-ce qu'on veut faire ? Eh bien, nous voulons faire bouger notre ennemi, du moins pour l'instant à gauche. Pourquoi c'est ça ? Pourquoi la gauche ? Eh bien, parce que décrit par défaut est à la recherche vers la gauche. Alors allons-y et faisons-le. La première chose dont nous aurons besoin pour faire bouger notre ennemi vers la gauche est de créer une référence de corps rigide. Donc nous allons créer un corps rigide à la variable, que nous appellerons corps rigide ennemi. Et nous allons obtenir le composant juste ici au début. Donc, tout corps rigide est égal à o, ce qui est moins quatre égal obtenir composant. Et c'est un type de Rigide Body 2D. Ensuite, nous aurons besoin de faire, une mise à jour fera que notre corps rigide ennemi sont courus vers la gauche. Cela signifie que nous allons écrire la vitesse de point du corps rigide ennemi égale le nouveau vecteur deux. Et que devrions-nous écrire à l'intérieur du vecteur deux ? Eh bien, nous voulons qu'il se déplace à gauche, sur le plan horizontal dans la direction gauche. Donc, ne sera qu'ajouter quelque chose au flotteur x nought au y. et puisque nous ajoutons quelque chose au X et c'est différent par exemple, classe de
flux, allez-y et stérilisez-le. Donc, créez un champ sérialisé. Ce sera un flotteur et nous appellerons le, cette vitesse de course ennemie. Et allons-y et faisons-le. Je ne sais pas, peut-être cinq F On peut le changer quand tu veux pour l'instant, va faire cinq F, et on va l'ajouter à la vitesse ennemie de Ron. Mais une chose, et dans la direction y, ça va être 0. Et une chose que vous devez garder à l'esprit est que parce que nous allons à gauche, cela signifie
que la vitesse devrait être négative. Donc nous allons mettre un moins juste derrière la course ennemie. Sauvegardez ça. Revenons dans Unity et voyons si ça a fonctionné. Alors, sauvegardez ça, sauvegardez tout. Cliquez sur jouer. Et assurons que nous avons vu et maintenant notre ennemi court et
court et qu'il continue à courir derrière le premier plan. Et lui, où vas-tu ? Oh, attends, attends, attends. D' accord. Donc, au moins, ça marche. Ce que nous devons faire, c'est que nous devons faire basculer notre ennemi chaque fois qu'il arrive au bord de la plate-forme. De cette façon, il fait le tour et le tour d'un côté à l'autre. Alors il courra vers le Edge, Hill, retournera sur ce bord et courra vers le mur. Et chaque fois qu'il arrive au mur, il doit retourner. Et cela fait partie de votre défi, ou votre défi est de faire tourner l'ennemi. Maintenant, ce n'est pas un défi facile parce que lorsque l'ennemi atteint la fin d'une plate-forme, nous devons les faire tourner et aller dans l'autre direction. Donc, je vais vous donner quelques indices. Tout d'abord, vous devez retourner horizontalement comme nous l'avons fait dans le joueur. Vous devrez utiliser un collisionneur pour déterminer quand basculer. Vous devrez donc ajouter un autre collisionneur à l'ennemi. Et ce collisionneur saura quand nous atteindrons un mur ou que nous enrichissons l'extrémité d'une plate-forme, vous devrez, eh bien, c'est le collisionneur à boîte que vous devrez ajouter pour détecter les collisions. Et je vais vous donner un indice. Ce gros indice est d'utiliser quelque chose appelé On Trigger exit. Maintenant, nous n'avons pas couvert sur la sortie de sucre ou entrer encore. Mais je vais le faire, je vais vous donner ce grand défi pour que vous découvriez quelque chose de nouveau. Parce que, comme je vous l'ai dit, mon objectif est de faire de vous un expert en
résolution de problèmes et pas seulement de me regarder créer un jeu et de rechercher tout pour moi. Il suffit donc de vous donner les ressources et la documentation et de vous le montrer dès maintenant. Donc c'est un collisionneur 2D, qui serait bien sûr le collisionneur, le collisionneur de boîte que l'ennemi a. Il utilisera quelque chose appelé Onsager exit to d, qui prend dans un collisionneur 2D. Donc, si vous lisez la description, elle est envoyée lorsqu'un autre objet laisse un collisionneur de déclenchement attaché à cet objet. Donc, chaque fois que nous partons avec notre collisionneur de boîte, quelque chose qui devrait être le sol ou le mur. Nous aurons la possibilité de faire quelque chose à l'intérieur des sorties non-déclencheurs. Alors faisons ça. Mais d'abord, mettez la vidéo en pause et allez faire le Challenger. Oh, ok, bienvenue. Alors, comment allons-nous faire ce défi ? Nous devons retourner notre ennemi. La première chose que nous allons faire est d'ajouter un collisionneur à cet ennemi. Et ce collisionneur de boîte représentera quelque chose appelé un périscope. Donc si vous ne savez pas ce qu'est un Périscope,
c'est quelque chose d'utilisé dans les sous-marins. Tu sais ce qu'est un sous-marin ? C' est un navire qui flotte ou ne flotte pas en fait qui nage à Je ne suis pas sûr s'il fait froid, nage sous l'eau et il a un Périscope. Et ce périscope est comme une lentille qui monte du vaisseau et qui peut regarder au-dessus de l'eau. Je suis sûr que vous l'avez vu dans des dessins animés ou dans des films. Et nous appelons celui-ci un périscope parce que ce sera un peu comme un sous-marin mais inversé. Donc, ce collisionneur de boîte va s'assurer que nous sortons à travers la plate-forme. Donc, si nous prenons notre ennemi maintenant et que nous commençons à le déplacer, alors il bouge, bouge, bouge, bouge. Et chaque fois qu'il arrive au bord, d'accord. Il déclenchera la sortie non-déclencheur, qui est une fonction qui va basculer ou un flip douv à l'intérieur de celui-ci. Mais la sortie de l'entrepreneur est utilisée chaque fois que notre collision de boîte sort d'une certaine chose. Donc, chaque fois que cela se produit, nous devons retourner le sprite à minus1 et puis notre ennemi va commencer à courir dans l'autre direction jusqu'à ce qu'il arrive au mur. Et quand il arrive au mur et sort par le collisionneur, puis de nouveau, nous retournons une fois de plus et il retourne de l'autre côté. Et pourquoi cela fonctionne-t-il ? Eh bien, parce que vous vous en souvenez, au premier plan, nous avons ceci. Où est le collisionneur de compost ? Nous avons ce collisionneur composite, et c'est ainsi que fonctionne la sortie de l'entrepreneur. Chaque fois que notre Collider ou le collisionneur sur l'ennemi sort par, par
exemple, ici, ce mur juste ici. Quand il sortira à travers elle, nous allons déclencher, nous allons utiliser la sortie entrepreneur et tout ce qui est à l'intérieur de la sortie Onsager, qui sera notre sprite flip exécutera et notre sprite Player retournera. Ok, donc j'espère que ce n'était pas trop déroutant. Je ne suis même pas sûr. Alors sauvegardons ça. Revenons dans Visual Studio et continuons et commençons par. La première chose que nous ferons est de créer la sortie Onsager. Donc, si nous allons simplement ici et commencer à écrire sur le trigger, Visual Studio sont incroyables et meilleur ami nous donne beaucoup de suggestions. Et l'un d'eux est sur la sortie de déclenchement aussi. Alors maintenant que devrions-nous écrire et au sud de la sortie de déclenchement de bras, première chose que nous devons écrire est le
côté de résolution de sprite flip de la sortie entrepreneur va créer une fonction qui sera flip sprite. Et ce sprite flip va être assez similaire à celui du joueur. Mais la seule différence est, c'est que nous sommes en ce moment, nous n'avons pas réellement de course horizontale ou de vitesse, ou nous n'avons pas besoin de vérifier quoi que ce soit parce que tout le mouvement est dynamique. Donc la seule chose dont nous aurons besoin est cette ligne juste ici, qui vérifie la direction ou le signe de la vitesse sur le corps rigide. Alors allons de l'avant et générons la méthode et simplement coller ceci ici. Et une autre chose que nous devons changer, c'est le corps rigide ennemi. D' accord ? Donc maintenant, chaque fois que nous déclenchons la sortie de l'entrepreneur, deux D iront dans la fierté des flips, et cette méthode flip sprite vérifiera la vitesse du point du corps rigide ennemi point x sinus. Donc basé sur cela, il va retourner le sprite. O Kay, Caret. Ensuite, nous allons devoir faire, et maintenant cela fonctionne parfaitement bien, mais le seul problème est que nos ennemis vont toujours dans la même direction que lui parce que nous n'avons pas changé la façon dont il court. C' est toujours une mise à jour. Nous avons notre ennemi que la vitesse du corps rigide est toujours dans la même direction. Et pour corriger cela, nous allons créer une méthode qui est appelée est face à gauche. Alors, quelle est cette méthode ? Allons de l'avant et créé et nous verrons ce qu'il fait. C' est un booléen. Ce sera un booléen et il s'appelle est orienté vers la gauche. O cas. Alors quoi, est face à gauche ? Eh bien, c'est un booléen qui retournera la transformation ou le point d'échelle locale x. et il vérifiera si cette échelle est plus grande ou plus petite que 0. Pourquoi c'est ça ? Eh bien, parce que si nous retournons dans votre unité, lui et nous regardons notre ennemi, nous pouvons voir que chaque fois qu'il se déplace à gauche ou qu'il fait face à gauche. Ici, sur la transformation, on voit que son échelle est une. Donc, s'il fait face à gauche et que cela signifie que son échelle est supérieure à 0, cela signifie
que la fonction ou la méthode est face à gauche renvoie true. Et s'il n'est pas à gauche, c'est s'il est à droite, ça veut dire que son échelle sera moins un. Cela signifie qu'il retournera faux. Et comment allons-nous utiliser ça ? Nous allons l'utiliser ici dans le corps rigide du point NMI ou ici dans la mise à jour. Alors allons-y et faisons-le. Donc, cela est orienté vers la gauche va vérifier pour le
point local de transformation chou frisé et point x bien sûr. Et il vérifiera si c'est plus grand que 0. Donc l'effet est plus grand que 0. Ce sera vrai et cette fonction ou méthode retournera true. Et cela signifie que si est orienté vers la gauche, est orienté vers la gauche. Nous ferons, nous ferons aller notre ennemi dans la direction de gauche. Sinon. Ça veut dire que s'il n'est pas à gauche, continuons et copions ça. Et nous allons enlever le signe moins. Alors enlevons cela, rendons tout serré et bon. Et allons vérifier si ça a marché. Alors on va mettre l'ennemi ici. Nous allons cliquer sur jouer. Allons dans la scène. Et ça n'a pas marché du tout. Pourquoi ? Où est-ce que ce type est allé ? Donc s'il atteint le mur, il ne fait rien non plus. Pourquoi c'est ça ? Eh bien, je pense que c'est parce que. Notre ennemi n'a pas encore de couche. Alors, allons de l'avant et ajoutons une couche Ennemi. Alors couche ennemie. Et sauve ça. Et nous allons aller dans la matrice et nous assurer que notre ennemi n' interagit qu'avec le joueur et le sol. Alors, sauvegardez ça. Voyons si ça marche. Maintenant, retournez en arrière, cliquez sur jouer, vérifiez Arsine et nos ennemis vont toujours et il continue jusqu'à ce qu'il atteigne l'escalade. Alors, quel est le problème ? Le problème, c'est qu'on devrait faire de ce collisionneur ici un déclencheur. Et c'est ce qui est très important, et j'ai oublié de le faire. Et pourquoi est-ce important ? Eh bien, à cause du nom de la fonction que nous utilisons,
il s'appelle « On Trigger exit ». Donc cet ennemi doit être un déclencheur. Je veux dire, le collisionneur de boîte devrait être un déclencheur. Donc si nous retournons bien, mettons-le ici pour que nous ayons le temps de vérifier l'ennemi va pécher et qu'il se retourne et qu'il finisse au mur. Il retourne aussi. Et s'il y retourne, il retourne aussi et tout fonctionne parfaitement. Alors passons en revue le code juste un peu parce que je sais que cela pourrait être déroutant. Notre ennemi a donc une vitesse NME Ron et cette vitesse ennemie iranienne est constante à chaque fois, mais son genou change de direction en fonction de la direction que notre ennemi affronte. Donc, ce que nous avons fait est que nous avons utilisé la fonction ou la méthode est face à gauche qui vérifie si notre joueur est face à gauche en fonction de la transformation que l'échelle locale 0.8x. Donc, si notre joueur est orienté vers la gauche, échelle sera un et sa direction sera vers la gauche. Par conséquent, nous mettons un moins à côté de la vitesse des ennemis Ron. Et sinon s'il ne fait pas face à l'amour, ça veut dire qu'il doit faire face à droite. Cela signifie que son échelle locale est négative. Cela signifie que les vitesses d'urine devraient être dans la bonne direction. Ensuite, nous avons créé une sortie sur le sucre. Et cette sortie d'entrepreneur est activée quand d'autres notre collision de boîte que nous avons créé comme un périscope sous notre ennemi. Il, chaque fois qu'il sort d'un certain, comment devrions-nous l'appeler, un certain Collider. Chaque fois qu'il quitte cela, il est déclenché et tout ce qui est à l'intérieur de cette méthode est exécuté. Et ce que nous avons mis à l'intérieur de celui-ci est un sprite flip, qui bascule sur le signe de vélocité des corps rigides ennemis. J' espère que vous avez apprécié la vidéo. J' espère que ce n'était pas très déroutant. Je sais que c'était long. Merci de m'avoir porté avec moi et je te verrai dans la prochaine.
35. Touche de joueur: Revenez tout le monde à une toute nouvelle vidéo. Et dans cette vidéo, nous allons rendre notre joueur vulnérable à nos ennemis. Maintenant, chaque fois que nous touchons notre ennemi, vous pouvez voir que nous nous envolons et nous jouons une petite animation qui nous
rend blancs et nous ne pouvons pas bouger pendant environ deux secondes. Donc si nous essayons de bouger maintenant, nous ne pouvons pas, mais après deux secondes, nous ne pouvons pas. Donc, cette vidéo est aussi un peu longue, mais c'est aussi très, très utile, parce que nous commençons à créer des mécanismes pour notre jeu. Alors ne perdons plus de temps et commençons. R. Donc, je vais commencer par vous donner un défi. Votre défi sera donc de créer une tête dramatique. Donc quand le joueur touche l'ennemi, nous devons déclencher une sorte de coups de pied. La peur devra changer l'animation des joueurs. Et nous devrons arrêter la capacité de bouger pendant deux secondes. Donc je sais que c'est difficile et que nous sommes prêts à relever le défi, mais je suis sûr que vous êtes à la hauteur de la tâche. Alors arrêtez la vidéo dès maintenant et allez faire le défi. Bon, bienvenue. Donc avant de commencer, première chose que je veux que vous fassiez est que vous allez dans l'ondulation, allez dans le contrôle de version ou l'arbre source, et allez de l'avant et mettez en scène tout de la vidéo précédente. Nous n'avons pas eu le temps de le faire, alors allons de l'avant et appelons cela des ennemis supplémentaires et les avons fait autour. Ok, c'est assez de commentaire, et maintenant il est enregistré dans notre contrôle de version. Retournons dans Unity et réfléchissons à ce que nous allons faire. Eh bien, nous voulons que nos joueurs soient touchés chaque fois qu'il touche l'ennemi. Alors allez dans le script du joueur et voyons ce que nous allons faire. La première chose que nous ferons est d'ajouter une méthode appelée hit de couche. Et ce joueur touché ne devrait être appelé que chaque fois que notre joueur touche l'ennemi. Nous devrons donc aller de l'avant dans l'unité. Et quelque chose que nous devons faire avant est de faire notre ennemi, la couche ennemie, sur la couche Ennemi. Et une autre chose que nous pouvons faire, nous pouvons effectivement préfabriqué sont des ennemis ou maintenant nous avons un préfabriqué de l'ennemi parce que nous avons déjà tout mis en place en lui presque. Alors revenons et voyons ici. Donc le coup de joueur ne peut être appelé que si notre Collider Box, point
2D, non, je suis et mon collisionneur de boîte. Donc, mon collisionneur de boîte, alors qu'il, My Box Collider 2D point touche, touche les couches. Désolé, je ne sais pas ce qu'il y a dans Visual Studio. Donc c'est toucher des couches, couche,
masque, point get mosquée y. Qu'est-ce qui ne l'a pas fait capitaliser ? Ok, alors maintenant Masque de calque, point obtenir Masque. Et enfin, on peut ajouter l'ennemi ici. Et comme il s'agit d'une référence de chaîne, nous allons à l'ennemi, cliquez sur Ajouter un calque et trouver la préférence de chaîne pour l'ennemi. Retournez dans Visual Studio et à cela, ouvrez
maintenant les crochets. Maintenant, si vous êtes curieux de savoir comment je bouge ça. Eh bien, en fait, j'ai mis en évidence en attente Alt et j'appuie sur la flèche vers le haut. Et maintenant un ordre de retrait vers la droite, nous cliquons simplement sur Tab go taux. Maintenant, allons de l'avant et générons cette méthode. On a un joueur touché en ce moment. Et que devrions-nous faire à l'intérieur du joueur frappé ? Eh bien, ce que nous voulons faire, c'est que nous voulons d'abord, notre joueur dans l'année. Alors allons de l'avant et créons une variable pour cela. Ce sera un champ sérialisé. Ce sera un facteur deux. Ce sera un facteur deux parce que nous voulons que le joueur se
fasse frapper dans la direction x n et dans la direction du vent. On appellera ça coup de pied. Et ce sera un nouveau vecteur à, avec quelles variables devrions-nous le faire ? Quoi, comment difficile ou à quelle hauteur devrait-il être ? Je pense que 50 F par 50 F est un bon coup de pied. Nous pouvons nous permettre de le changer plus tard chez notre inspecteur, donc pas de soucis. Allons de l'avant et supprimons ceci. Et nous allons ajouter ce coup de pied à notre vitesse de corps rigide. Donc ma vitesse de corps rigide, la vitesse de
point, d'accord, va être frappé coup de pied. Mais ce n'est pas suffisant. Nous voulons le multiplier par quelque chose et que quelque chose va être notre, je l'écrirai juste et je vais vous dire ce que c'est. Donc ça va être moins transformé échelle locale point, ok ? Dot x et un f. Alors sauvegardez ça et laissez-moi vous expliquer ce que cela signifie. Tout d'abord, bien sûr, vous comprenez ce qu'est le coup de pied, mais pourquoi se multiplions-nous ? C' était un nouveau vecteur deux avec l'échelle locale du lot de transformation moins. Eh bien, disons par exemple que notre joueur marche vers l'ennemi. Alors prenons ce joueur et il court vers l'ennemi. Donc sa balance est une. Donc s'il est touché, il sera lancé en l'air. D'accord ? Mais le problème, c'est que nous ne voulons pas qu'il se lance dans l'ennemi. Nous voulons qu'il se lance loin de l'ennemi. C' est pourquoi nous avons mis le sien, nous avons multiplié le coup de pied par un nouveau vecteur qui est l'échelle locale de point de transformation moins. De cette façon, il fait face aux ennemis de cette façon, ou du côté gauche, ok ? Ou dans cette direction, il sera frappé par un moins et il sautera à gauche. Ou, s'il est de ce côté et que sa balance est minuscule, il sera envoyé de ce côté. Ok, donc j'espère que ça explique ça. Alors cliquez sur jouer. Et voyons si nous laissons l'ennemi viser, nous l'avons touché et nous sauterons. Alors voyons ça encore. Et il a été coincé dans l'escalade. Faisons un autre coup. Et voyons encore un livre de temps de plus ou gay, correct. On peut, on changera peut-être le coup ou la force du coup plus tard. Mais pour l'instant, je pense que c'est assez bon. Donc, si vous sentez à ce stade que vous avez tout sous contrôle et que vous voulez continuer à défier seul. Je vous encourage à le faire. Si ce n'est pas le cas, continuons. Nous allons importer notre sprite de tête à partir des ressources que je vous ai aimées. Allons-y et mettons-les à l'intérieur de là où sont les sprites à l'intérieur des sprites Conqueror, génial. Donc c'est la tête. Nous allons en faire 30 pixels par unité. Nous allons le rendre multiple. Nous allons appliquer cela et aller dans l'éditeur de sprite. Nous allons grille par taille de cellule, et je vais laisser ceci était 58 par 58 avec une tranche de remplissage de 20 pixels que jusqu'à, parfait. Donc 58 par 58 avec 20 rembourrage, appliquez ça. Et maintenant, allons de l'avant et de créer l'animation pour nos joueurs frappés. Alors va dans l'animation et on va, comment devrions-nous appeler ça ? Eh bien, obtenir un hit, Sauvegarder cela, et déplacez-le le dossier d'animation et dans le dossier du lecteur à l'intérieur de l'animation. Et qu'allons-nous faire maintenant ? Eh bien, nous allons l'ajouter à notre animateur. Et comment allons-nous faire les transitions ici ? Donc nous allons faire la transition pour obtenir un enfant de n'importe quel état. Ce que cela fait est où quel que soit notre statut si tout jouer comme courir est sauter est. Je ne sais pas, escalade, marche au ralenti. S' il touche l'ennemi, il doit déclencher le coup et déclencher l'animation de se faire frapper. Et voyons l'animation en ce moment. Si on prend la tête, voyons ça. Oh, ok, excellent au travail. Très bien. Et que devrions-nous faire ? Ça devrait être en boucle. Non, je ne pense pas que ça devrait l'être. Donc, chaque fois que notre joueur est touché, son b peut être de n'importe quel état et puis il devrait revenir au ralenti. Et voyons comment faire ces transitions. Comme toujours, nous allons tourner la durée de transition à 0, donc c'est instantané, instantané. Et nous devons bien sûr, ajouter une condition ici qui sera un déclencheur, pas un booléen parce que nous n'avons pas besoin de revenir. On avait seulement besoin d'être un déclencheur. Et nous appellerons ça frappant juste pour rester cohérent avec les déclencheurs au-dessus. Et maintenant, nous allons ajouter cette condition ici, et nous allons voir comment nous allons utiliser ce déclencheur au lieu du booléen. Ensuite, nous devrons revenir à l'élargissement, et je pense que nous ferons cette transition vers. Voyons comment cela va cette transition B. Tout d'abord, ce serait 0 ici. Alors, sauvegardez ça. Et pour passer de la frappe dans le dos au ralenti, je pense que nous allons faire le temps de durée. On peut le faire, disons un. D' accord ? Donc, chaque fois que le frapper, obtenir frappé se termine ou que nous pouvons arriver à, par exemple, nous verrons comment cela se passe après que nous arrêtons réellement le joueur de bouger. Alors allons de l'avant et sauvegardons cela et allons et déclencher l'animation quand nous sommes frappés, la façon dont nous faisons cela est d'obtenir notre animateur. Et au lieu de mettre Bool, nous allons l'utiliser ici. C' est ce qu'on appelle le déclencheur. Et il faut aussi une référence de chaîne. Alors allons le chercher. Toucher le contrôle C. Eh bien, non, pas ici. Et Contrôle V. Et maintenant notre animation devrait être déclenchée. Et parce que nous avons ajouté un temps de sortie, il sortira tout seul. Alors cliquez sur jouer. Et voyons si ça marche. Donc notre ennemi là-bas et nous sommes touchés, et comme vous l'avez vu, nous jouons l'animation. Refaisons-le. Et on est de retour au ralenti ou au gay, super. Encore une fois. Alors arrêtons ça. Passons à l'étape suivante, qui est, voyons, notre défi à nouveau est d'arrêter la capacité de bouger pendant deux secondes. Alors, comment allons-nous faire ça ? La première chose que nous allons faire est que nous allons créer une variable ici qui sera un booléen. Et ce booléen va être quelque chose que nous appellerons va lui faire du mal. Pense, ok, et qu'est-ce que ça fait mal ? Eh bien, tout d'abord, ça va être faux quand on commencera la partie. Et que devrait faire cette variable ? Eh bien, à l'intérieur de la mise à jour, si ça fait mal. Donc, si notre joueur est blessé ou rejeté gratuitement, alors nous allons ajouter un point d'exclamation. Donc, si notre joueur est blessé, maintenez Alt enfoncé et déplacez-le vers le haut et appuyez sur Tab et tout est génial. Donc, si notre joueur est blessé, nous ne voulons pas pouvoir courir,
sauter, grimper ou quoi que ce soit. Nous voulons arrêter notre mort dans ses traces. Donc, ce que nous avons fait ici, c'est que nous avons créé une variable qui
est, fait mal, ce qui ne fera que, ce qui sera vrai chaque fois que notre joueur touché et faux plus tard créera quelque chose pour cela. Donc, si blesser, si blesser est vrai, cela rendra toute cette déclaration fausse et nous
ne serons pas en mesure d'entrer les méthodes suivantes. Mais si ça fait mal est faux, la déclaration avec le point d'exclamation annulant sera vraie et sera capable de faire tout cela. Alors nous allons mettre, ça fait mal trop vrai. Chaque fois qu'on se fait frapper. Et voyons si ça marche. Retournez dans Unity, cliquez sur Play. Et on se fait blesser. Et nous ne pouvons plus bouger cependant, nous essayons. Donc, nous allons cliquer sur jouer à nouveau, quitter et revenir à Visual Studio. Que devrions-nous faire maintenant ? Eh bien, nous devons retourner ce mal en faux. Et comment allons-nous faire ça ? Après deux secondes ? Nous allons le faire en utilisant quelque chose appelé Cole Teens et ce que nos coroutines. Eh bien, c'est une méthode qui peut suspendre l'exécution de l'instruction jusqu'à ce qu' une certaine condition soit remplie ou que certaines conditions avec un s soient remplies. Donc, ces suspensions sont connues sous le nom de rendement. Et dans notre exemple sera utilisé, sera suspendu le temps jusqu'à ce que notre joueur peut se déplacer à nouveau après avoir été frappé. Donc tourner, c'est revenir à faux. J' ai adoré les documentations d'unité pour les routines de
charbon dans les ressources afin que vous puissiez aller et lire tout à leur sujet. Mais c'est l'idée principale derrière les revêtements. Et les coroutines sont extrêmement importants et l'unité le développement du jeu. C' est donc une grande habileté à apprendre. Et allons de l'avant et faisons un revêtement. Donc, la façon dont nous lançons une routine d'appel est la suivante. Donc, nous tapons dans I, énumérons tous. Donc je suis en numérateur. On appellera ça ça faire mal. Et c'est tout. La prochaine chose que nous devrons faire est d'écrire le rendement, le retour. Et la prochaine chose dont nous aurons besoin, c'est de nouveau. Attendez quatre secondes. Alors maintenant, nous pouvons attendre un certain nombre de secondes. Et comme nous l'avons dit, nous allons faire deux f parce qu'il faut un flotteur. Et après que nous avons attendu deux secondes, nous allons tourner est blessant de retour à faux. Et nous serons en mesure de déplacer notre joueur à nouveau. Maintenant, avant de continuer, nous devons appeler la routine. Et la façon dont nous appelons co routines comme nous tapons et commençons la routine co et à l'intérieur de celui-ci, nous donnons le nom de la co-routine donc ça arrête de faire mal. Fermez les parenthèses, enregistrez cela, et tout devrait fonctionner. Retournez dans Unity, cliquez sur Play. Et maintenant on se fait frapper avec voler loin. Et après deux secondes, nous pouvons revenir en arrière et tout fonctionne parfaitement bien. On prend la tête, on voit l'animation. On s'est arrêtés pendant deux secondes. Maintenant, nous devons tout régler parce que nous continuons à courir, mais c'est bon. On le retournera plus tard. Alors voyons tout ici. Et voyons ce qu'on doit expliquer. Donc, la première chose que nous vérifions si nous touchons l'ennemi, et si nous touchons l'ennemi ira dans la tête de jeu. À l'intérieur du coup de jeu, nous ajoutons la vitesse qui est coup coup de pied. Et ce coup de pied est multiplié par l'autre direction à laquelle nous sommes confrontés en utilisant le point d'échelle locale de transformation x. Nous définissons ensuite le déclencheur de frapper. Nous allons définir le est trop vrai, ce qui nous a empêchés d'utiliser toutes les méthodes à l'intérieur de, à l'intérieur de la mise à jour. Nous commençons ensuite une co-routine qui attend deux secondes, puis retourne en arrière est mal à faux. J' espère que la vidéo n'a pas été trop dure. J' espère que ce n'était pas trop déroutant. Si c'est toujours déroutant, allez-y et faites-le encore et encore, et assurez-vous que vous comprenez ce qu'ils appellent le routage,
car c'est très important. Et je te verrai dans la prochaine vidéo.
36. Déposez la BOMB: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et dans celui-ci, comme vous pouvez le voir ici, nous avons une bombe. Et que fait ce lien ? Eh bien, pour l'instant, ça ne fait pas grand-chose, mais ça explose. Donc, si on s'en approche,
ça commence à brûler et ça explose dans une énorme explosion. Mais notre joueur ne se blesse pas encore. Alors ne perdons plus de temps et commençons. la Donclapremière chose que nous allons faire, et la partie la plus importante pour commencer quelque chose de nouveau est que nous allons aller dans les sprites et nous allons créer un dossier. Donc le dossier sera le lien, et c'est là que nous allons mettre des sprites pomp. Allons donc dans les ressources et obtenons toutes les bombes que je t'ai fournies. Et maintenant, nous pouvons voir que nous sommes nés boom, bosse et bombarder. Donc maintenant, ce que nous allons faire est de créer un objet qui sera un lien. Alors allons de l'avant et créons-le. appellera ça la bombe, et on réinitialisera sa transformation. Et maintenant, nous pouvons trouver ça juste ici. Ok, bien. Ensuite, nous allons faire, en fait, allons de l'avant et le mettre ici avec notre joueur ici, afin que nous puissions les mettre à côté de l'autre et expérimenter comme nous le voulons. La prochaine chose que nous allons faire est d'ajouter un moteur de rendu. Donc renderer, alors que le rendu, et nous aurons besoin d'ajouter un sprite par défaut. Et pour ce faire, allons-y et commençons à découper nos sprites. Alors choisissons plusieurs ici, même si ce n'est qu'un seul sprite, appliquez qui vont dans ces orgueil et nous allons le couper, le découper. C' est 52 sur 56, et c'est ce que nous voulons que notre sprite soit. Donc je le fais très vite parce que vous êtes déjà familier avec les étapes. Allez dans la bombe, sur, faites la même chose, appliquez tout, découpez-le, 52 par 56, appliquez, qui est venu. Et enfin, nous avons le Boom. Boom devrait être aussi 30. Je pense qu'on agrandira ça plus tard pour avoir une plus grande explosion. Mais le tranchage sera le même. Alors appliquez tout et maintenant nous sommes prêts. Allons-y et ajoutons le sprite de la bombe. Donc c'est tout simplement bombardé et on ne peut pas le voir. Pourquoi c'est ça ? Bien sûr, vous savez déjà que c'est parce que nous n'avons pas une bonne couche de tri. Allons-y et ajoutons une couche de tri qu'on appellera bombe. Et nous allons le rendre et devant le derrière le joueur, ou même juste derrière le premier plan. Alors, sauvegardez ça. Et maintenant nous retournons à la bombe et choisissons la bombe, et maintenant nous avons une bombe. Oh, ok, correct. La prochaine chose que nous allons faire est de créer des animations. Alors allons-y et faisons-le. Tout d'abord, nous allons créer un dossier. Une telle vidéo étonnante pour les dossiers. Donc, créez un dossier appelé Bombe, et à l'intérieur de celui-ci, nous allons créer, bien sûr, contrôleur
animateur couvrira également bombe contrôleur
animateur et simplement le glisser dans la bombe. Et maintenant, si vous cliquez sur l'objet bombe, vous pouvez voir que nous avons un animateur prêt à utiliser des animations dessus. Alors revenons à Sprite, choisissez les sprites de bombe et allez-y et créez une animation. On appellera ça la gravure de l'animation. Allons-y et dépose-le dans les animations de bosse. Et allons de l'avant et créons l'animation osseuse. Et nous appellerons cette animation aussi. Boum. Ok, ajoutez combien d'O u1, faites-le glisser dans la bombe. Et maintenant, allons dans l'animateur de la bombe. Que devrions-nous faire maintenant ? Eh bien, la première chose que nous allons faire, bien
sûr, c'est d'ajouter la brûlure. Et ce fardeau ira directement de l'entrée. Puis après la combustion va aller dans le boom, mais pas, pas comme ça. Avant de faire ça, nous avons besoin d'un état inactif parce que comme vous le savez, la bombe ne se déclenche pas immédiatement. Nous voulons que cela se déclenche à un certain moment que nous discuterons plus tard. Donc la première chose dont nous aurons besoin est de créer une animation à partir de ce seul sprite. Alors faisons ça. Ça nous permet de faire ça et on appellera cette idole Bob au ralenti. Et ce sera une animation d'un sprite. On va le traîner dans la bosse. Et ce sera la première une animation qui sera le premier état si vous voulez, qui sera défini à partir de l'entrée. La prochaine chose que nous ferons est d'ajouter la brûlure. Et cette gravure sera déclenchée par une sorte de déclencheur qui va ajouter. Donc, si on ajoute un déclencheur ici, on appellera cette brûlure de déclenchement. Et enfin, nous ajouterons le boom. Et cette bombe sera déclenchée ou ira dans
la transition en utilisant quelque chose appelé le temps de sortie. Nous avons déjà parlé de temps supplémentaire, mais nous en parlerons plus maintenant. Alors allons de l'avant et créons la transition de la bosse d'idole à brûler et brûler à boo. Donc, de la bombe inactive à la combustion, si nous regardons ici, nous n'avons pas besoin de durée de transition et nous n'avons pas besoin de temps de sortie. Tout ce dont nous avons besoin, c'est une condition, et cette condition serait notre déclencheur. Ensuite, nous devrons faire la transition entre la combustion et T Boone. Et cette durée de transition serait 0, mais l'heure de sortie en ce moment sera un. Nous voulions donc passer automatiquement de la combustion à l'explosion, qui est l'animation du boom. Et par heure de sortie, si vous survolez, vous pouvez voir cette heure de sortie en temps normalisé à partir de l'état actuel. Alors qu'est-ce que ça veut dire ? Si vous regardez la chronologie ici, façon dont cette animation fonctionnera
au fur et à mesure que nous traversons la gravure. Et enfin, une fois la combustion terminée, nous passerons à l'animation de boom. Donc, cela se produira automatiquement sans notre aide. Ainsi, si, par exemple, ce temps de sortie n'est pas exprimé en secondes, il ne mesure que le temps nécessaire à l'animation d'explosion. Je veux dire l'animation brûlante pour finir. Donc, disons qu'on ajoute un deux ici. Vous pouvez voir que cela prendra le temps de deux animations de gravure pour terminer, puis il fera le livre. On en fera un. Et ce que nous allons faire, c'est que nous allons y aller, nous allons rendre l'animation brûlante un peu plus longtemps. Alors cliquez sur la bombe, allez dans l'animation, et cliquez sur la bombe dans notre hiérarchie, allez dans l'animation et cliquez sur graver. Cliquez sur cette petite flèche juste ici, et nous pouvons voir que nous avons ces sprites brûlant. Alors allons de l'avant et copiez-les et choisissez le cadre que nous voulons coller et basé sur cela, puis encore, collé dans un autre temps. Donc maintenant notre animation comme un peu plus longtemps, si nous cliquons sur le jeu, nous pouvons voir que notre mère est en train de brûler et prêt à exploser. Donc tout est réglé. Tout fonctionne bien. Je pense que c'est sauver ça. Et ce qu'on devrait parler ensuite, c'est de la mécanique des bombes que nous allons avoir. Alors, quels sont nos mécaniciens liés ? Donc, la première chose quand un joueur se rapproche de la liaison, le lien commencera à brûler. Ensuite, la liaison aura un rayon de souffle. Et si le joueur à l'intérieur de ce rayon sanguin, si le joueur est à l'intérieur du rayon d'explosion, il est jeté et se fait frapper, donc il devra se blesser. Et enfin, les bombes devraient disparaître quand l'explosion sera terminée. J' ai essayé de faire cette vidéo en une seule cassette, mais il s'avère que c'est trop long et je ne veux pas que tu te lasses. Donc ce qu'on va faire, c'est quand la couverture de celle-ci dans cette vidéo, quand le joueur se rapproche de la bombe et commencera à brûler, et ensuite on couvrira la disparition de la bombe. Donc va exploser la bombe va le détruire. Et dans la prochaine vidéo, nous ferons ces deux points. Et c'est l'heure de votre défi. Et votre défi sera de continuer la mécanique de la pompe. Donc, la première chose que vous devez faire est que vous devez déclencher la gravure lorsque le joueur se rapproche et vous faites cela en utilisant quelque chose que nous appelons un déclencheur ONE entrée. Donc, la première chose que vous devrez faire est d'ajouter un collisionneur de boîte ou n'importe quelle couleur que vous voyez correspondre à notre objet de bombe. Et vous devez utiliser quelque chose appelé On Trigger entré dans D. Bien
sûr, j'ai fourni le lien et les ressources et c'est, c'est un peu similaire à la sortie 2D de l'entrepreneur que nous avons utilisé précédemment. Allez-y et lisez tout à ce sujet dans les documentations de l'unité et utilisez-le. Et ensuite, la bombe disparaît lorsque l'animation d'explosion se termine. Alors je vais te donner un coup de main pour ça. En outre, vous devez détruire un objet en utilisant détruire chaque fois que l'animation d'explosion de bombe se termine. Et ce sera un peu délicat parce que nous allons introduire quelque chose de nouveau. Mais disons, je vais vous donner un autre indice, c'est-à-dire les événements. Donc, ajouter des événements et des animations. Ok, alors arrêtez la vidéo tout de suite. Va faire des recherches. Va faire de ton mieux, et ne t'inquiète pas de faire des erreurs. Je te verrai dans un peu. Oh, ok, bienvenue. Alors, que devrions-nous faire en premier ? La première chose qu'on va faire est d'aller dans des bombes. Étaient, nous sommes déjà là et nous allons ajouter un collisionneur de boîte. Pourquoi un collisionneur de boîte ? Eh bien, ça n'a pas d'importance. Vous pouvez ajouter n'importe quel collisionneur que vous aimez. Mais pour l'instant, nous allons ajouter un collisionneur à boîte. Et je pense qu'on va le rendre un peu plus grand. Donc, comme ça, nous couvrons. Donc, quand le joueur entrera dans ce rayon, il commencera à brûler et nous allons le rendre un peu plus petit ici, quittez le mode d'édition et enregistrez ça. Ensuite, nous allons créer un script de bombe pour notre bombe parce que nous allons modifier son comportement. Donc créer, bombarder, Nouveau script, et créer et ajouter. Et maintenant, nous allons entrer dans nos actifs et mettre ce script et l'affaissement de scripts. J' aime le faire avant de sauter Visual Studio. Et j'aime le faire avant même de cliquer sur le lien parce que cela posera un problème si nous ne le faisons pas d'abord. Mais de toute façon, allons-y et commençons notre script de bombes. Donc, la première chose que nous allons faire est de créer un déclencheur de bras entrée dans la méthode. Et si nous allons dans les ressources, nous pouvons voir ici qu'il est envoyé quand un autre objet entre dans le collisionneur de déclenchement. Donc, quand un objet entre dans le collisionneur de notre bombe, il déclenchera cette méthode, qui est entrepreneurs entrer dans le, qui est différent des sorties Onsager, qui,
qui se déclenche chaque fois que nous sortons du collisionneur et avant d'oublier, nous ne faisons
donc pas l'erreur que nous avons faite auparavant. Nous devons nous assurer que le collisionneur de boîte est un déclencheur. Alors enregistrez cela et revenez dans Visual Studio. Que devrions-nous faire ici ? Eh bien, comme nous l'avons dit, quand le joueur entre dans l'entrepreneur, je veux dire, quand le joueur entre à proximité de notre bombe ou entre dans le collisionneur sur la bombe. Il devrait commencer l'animation. Donc, la première chose que nous ferons, c'est d'avoir une référence à notre animateur. Alors animateur, et on appellera ça mon animateur. Et nous allons obtenir le composant dès le début, qui sera obtenir l'animateur du composant. Et nous sommes prêts. La prochaine chose que nous ferons, c'est que nous déclencherons la brûlure. Alors c'est prêt, Trevor, ouvre ça. Et parce qu'il est dit la vraie référence de la bague, on y retourne toujours et on l'obtient. Copiez cela, collez-le, fermez cela, enregistrez cela. Et voyons si ça a fonctionné. Alors attendez l'unité. Cliquez sur jouer. Et maintenant, si on touche la bombe, explose, va le taux. Mais refaisons-le parce que je veux te montrer quelque chose. Si nous approchons, vous pouvez voir que ceci, ces particules ici sont toujours présentes. Ce que nous devons faire, c'est nous devons nous débarrasser d'eux. Ok. Et avant de faire ça, je veux agrandir l'explosion. Alors, nous allons cliquer sur lien, et allons à l'animation, le boom. Et choisissons celui-là. Et je veux le rendre plus grand. Alors cliquez sur cette fierté et allons de l'avant et en faire 15. Voyez comment ça va, c'est assez bon. Faisons dix. Oui. Une explosion géante. Oui, c'est exactement ce dont nous avons besoin. Ok, super. Sauve ça. Et maintenant comment allons-nous détruire en utilisant la méthode de destruction ? Et si vous allez dans les ressources et la documentation Unity, nous pouvons voir qu'il existe une méthode qui nous permet de le faire. Et ce qu'il fait, c'est qu'il supprime un objet ou un composant ou S. Donc, il va enlever complètement l'objet de la bombe de notre scène. Donc on va faire ça. Et la façon dont nous allons le faire est que nous allons créer une fonction ici ou une méthode. On va le rendre vide et on l'appellera détruit la bombe. Et nous ne ferons qu'une chose et une sorte de détruire la bombe et détruire. Nous ouvrons les parenthèses et nous enverrons l'objet du jeu. Et cet objet de jeu représente l'objet de jeu, qui est notre lien qui a ce script maman attaché à lui. C' est donc une référence très simple et facile pour notre bombe. Sauve ça. Et maintenant, la dernière étape est où allons-nous appeler cette fonction ou cette méthode ? Et là où on va l'appeler, c'est du livre. Et comme je vous l'ai dit, il s'agit d'événements. Donc si on bouge ici et nos cadres, la dernière image est là où on veut éliminer la bombe. Et si vous regardez de près ici, vous pouvez voir que nous avons ce bouton qui ne nous dit rien, mais c'est un événement. Et si nous cliquons dessus, vous pouvez voir qu'il ajoute une petite capsule ici, c'est un événement. Et ce que cet événement d'animation nous permet de faire, il nous permet de choisir une fonction du script qui est attachée au lien. Donc, si nous cliquons dessus, nous pouvons voir que nous avons soit l'entrepreneur entrer en 2D, soit la destruction bombardée. Nous choisirons la bombe détruite, et c'est très simple. C' est très rapide. On va sauver ça. On va collectionner en jeu. Et maintenant, si nous entrons dans le voisinage de la bombe explose, et comme vous pouvez le voir, elle est détruite. Donc on ne le voit plus dans notre scène. Et aussi, nous ne le voyons plus ici dans notre hiérarchie sur le côté gauche. Alors quittez le mode de jeu et allons de l'avant et préférons notre bombe. Alors préfabriquez le lien. Nous l'avons dans notre préfabriqué, sauf que tout est bon. Et la prochaine vidéo, nous allons blesser notre joueur et nous l'enverrons s'envoler. Alors je te verrai dans la prochaine.
37. Exploiter notre Conqueror: Bienvenue à mes développeurs de jeux préférés à une toute nouvelle vidéo. Et dans celui-ci, on va faire nos obligations de véritables bombes. Parce que non seulement il explose en ce moment, mais un libre est trop proche de la bombe. Il nous jette et nous ne pouvons pas bouger pendant deux secondes jusqu'à ce que nous puissions bouger à nouveau. Et on peut y aller. Alors essayons à nouveau. Oh, le Balmer disparaît aussi. Alors ne perdons plus de temps et commençons. Ok, donc maintenant on doit blesser notre conquérant chaque fois qu'il explose la bombe, la prochaine fois. La première chose que nous ferons est de mettre à jour les activités ici. Et nous allons créer une méthode pour le faire. Et cette méthode va être vide, vide, exploser, bombe. Ok. Et que devrions-nous faire à l'intérieur de la bosse explorée ? On va devoir vérifier si notre pièce est à proximité de la bombe quand elle explose. Et la façon dont nous allons le faire est d'utiliser quelque chose dans Physics 2D appelé cercle de chevauchement. Comme vous pouvez le voir, il contient plusieurs paramètres, mais nous utiliserons principalement le point, le rayon et le masque de calque. Et nous allons aussi, comme vous pouvez le voir ici, il a un type de retour de Collider 2D, ce qui est utile à savoir. Et dans la description que vous pouvez, vous pouvez voir qu'il vérifie si un collisionneur tombe dans une zone circulaire sera également visualiser la zone circulaire. Mais la première chose que nous devons faire est que nous devons utiliser la fonction. Donc, c'est la physique 2D point chevauchement sur tour cercle. Alors qu'est-ce que c'est ? Où est-il ? Donc chevauche cercle. Et comme vous l'avez vu avant, il faut le point qui est le centre, va être notre position transform.py. Il faut aussi un rayon. Donc, parce que le rayon pourrait être variable, continuons et créons une variable pour cela. Donc c'est un champ sérialisé, qui sera un flotteur, et nous appellerons ce rayon. Et maintenant, le rayon sera, je pense que trois, f est suffisant. Alors allons de l'avant et ajoutons un rayon. Et enfin, nous devrons ajouter un masque de calque. Pourquoi ajouter un masque de calque ? Parce que nous voulons que la bombe interagisse uniquement avec le joueur, nous ne voulons pas qu'elle explose, autre chose. Alors, allons de l'avant et ajouter un masque de calque. Nous savons déjà comment le faire. C' est assez similaire à la couche étonnante, et il nécessite une référence de chaîne ou allons-y pour obtenir cela du joueur. Cliquez sur les calques, ajoutez
des calques et copiez simplement le calque sur lequel réside le lecteur. Sauvegardez ça, et tout devrait bien fonctionner. La prochaine chose que nous allons faire, c'est que nous allons le visualiser. Et la façon dont nous allons visualiser est d'utiliser les gadgets. Comme vous vous en souvenez. Rappelez-vous, les gadgets ont été utilisés ici dans l'unité quand nous voulions rendre notre icône de caméra un peu plus petite. C' est ici sur le dessus. Comme vous pouvez le voir, c'est des gadgets et nous pouvons affecter beaucoup de choses. Alors, qu'est-ce que des gadgets ? Gizmos sont utilisés pour visualiser les aides au débogage et à la configuration. Et de la façon dont il fait ça, il dessine sur la scène. Et ce sont l'une de ses méthodes statiques. Et celui que nous allons utiliser est le champ des fils de tirage. Alors faisons ça. Et une autre chose que nous aurons besoin est ce point de comportement mono onDraw gizmo sélectionné, que nous allons utiliser pour un ordre d'utiliser la vitesse du fil de paille gadget. Alors voyons comment ça se passe. Je sais que ça peut être déroutant, mais c'est très important et ce n'est pas si chaud. Donc vide privé et sur tirage au sort gizmo sélectionné, c'est tout. La prochaine chose dont nous aurons besoin, c'est les fils de tirage. Donc, nous allons écrire des gadgets dot draw fils peur. Et comme vous pouvez le voir ici, les paramètres sont le Centre, qui sera bien sûr la position du point de transformation. Et bien sûr qu'il aurait besoin du rayon. Donc, nous allons simplement lui donner le rayon que nous avons créé. Et c'est extrêmement blessant parce que maintenant si nous allons dans notre scène et que nous cliquons sur le lien, vous pouvez voir que cela nous donne un, ce qu'ils appellent ça un fil, un fil sphérique autour de notre bombe. Et maintenant nous savons combien nous avons besoin de grands ou petits pour faire le rayon. Donc, quelques gouttes ici et le script bombes, vous pouvez voir que vous pouvez augmenter le rayon et le rendre plus petit et plus grand. Et c'est très utile parce qu'il nous dira à quel point nous voulons faire l'explosion. Ou du moins le rayon de souffle de l'explosion. Ow, Kay, alors maintenant on devrait commencer à ajouter des comportements différents au joueur. Avant de faire ça, je voudrais juste vérifier si tout fonctionne. Alors allons de l'avant et créons une condition if. Et que devrions-nous mettre à l'intérieur de la condition si ? On devrait vérifier si on a un joueur dans le rayon. Ainsi, comme vous pouvez le voir, le cercle de chevauchement renvoie un collisionneur 2D. Alors allons-y et mettons-le à l'intérieur d'une variable. On appellera ce joueur collisionneur. Ça va être égal à ce cercle. Donc si joueur Collider, ça veut dire que si on trouve un, un collisionneur de joueur, on va imprimer à l'écran,
eh, coach vous en cours d'exécution. Ok, alors sauvegardez ça. Et maintenant, si nous retournons dans Unity, nous devrions voir quelque chose imprimé sur la console. Donc si on s'approche de la bosse, ça explose, mais on ne voit rien. Alors pourquoi c'est ça ? Eh bien, parce que nous n'avons pas encore appelé The Explode Bound. Où allons-nous appeler la bombe explosante ? Et nous allons l'appeler à partir d'un événement en utilisant l'événement d'animation dont nous avons parlé dans la vidéo précédente. Et je vais vous donner un mini défi. Donc, je veux utiliser les événements d'animation afin d'appeler la bombe explorée quand elle explose. Alors prenez ce mini défi dès maintenant, mettez la vidéo en pause et essayez de le faire. Oh, Came mini challenge. Le temps est écoulé. Alors maintenant, allons dans le haut. Non, ça a arrêté ça en arrière, aller à l'animation. Cliquez sur bombe et choisissez l'animation de boom. Voyons donc sur quel cadre devrions-nous l'ajouter ? Je pense que ça devrait être sur ce cadre. Ok, alors cliquez sur Ajouter un événement, et maintenant nous pouvons choisir une fonction, va choisir la bombe explosée. Donc nous avons détruit la bombe, qui détruit la bombe et exploser la bombe, qui explose la bombe. Et essayons encore ça. Alors maintenant notre joueur s'approche, il explose. Et dans notre console de code, nous pouvons voir que nous avons, hey, CO2 en marche. Essayons à nouveau, mais ne pas être à proximité de la bombe, donc on déclenche, on s'enfuit et rien n'imprime à l'écran. Excellent. Donc maintenant, nous ne voulons rien imprimer. Au lieu de cela, nous voulons jeter le joueur en l'air. La façon dont nous allons le faire est également d'utiliser quelque chose appelé point de corps rigide ajouter de la force. Ok, donc cette vidéo, il y a beaucoup de nouvelles choses, mais j'ai tout laissé dans les ressources et vous pouvez aller les voir, lire autant que vous voulez à leur sujet. Ce sont des choses très basiques. Pas besoin de s'en soucier. Donc ajouter de la force, fonction très utile à ajouter qui ajoute une force au corps rigide. Et comme vous pouvez le voir, il faut un vecteur, trois quarts et un mode. Je ne pense pas qu'on utilisera le mode maintenant, peut-être plus tard. Ainsi, une force est appliquée en continu le long de la direction. Et c'est ce dont nous allons avoir besoin. Et comme vous pouvez le voir, il est appliqué sur un corps rigide. Nous avons donc supprimé l'empreinte. Alors maintenant, nous allons ajouter une force au joueur. Et la façon dont nous allons le faire est d'abord de type et ici ils sont point de collision. Donc maintenant, nous devons obtenir le corps rigide des joueurs en utilisant ce collisionneur. Et pour ce faire, nous allons simplement utiliser le composant get, ce qui est super utile. Donc, le joueur de collision va enlever le composant de corps rigide de lui. Donc Rigide Body 2D qui est présent sur ce collisionneur. Et nous allons ajouter une force à ce corps rigide. Et maintenant, comme vous pouvez le voir, nous avons besoin d'un vecteur deux 4, et allons de l'avant et créons ça. Donc, comme le rayon, cette force est également variable et peut également être utilisée par l'inspecteur
appellera cela un facteur deux et nous allons le nommer la force d'explosion. Oh, ok, excellent. Ce sera un nouveau vecteur 2. Et que devrions-nous lui donner une force de, il devrait être 200. Oups, 200 par Devrions-nous ajouter dans la direction y ? Oui, sur pourquoi pas ? Nous allons donc ajouter 100 F dans la direction y. Sauve ça. Et maintenant, allons-y et mettons-le à l'intérieur de la force d'explosion. Fermé là, sauvegardez tout ça. Et que devrions-nous faire d'autre ? Nous devrions tester cela et voir si ça marche. Maintenant, nous sommes à côté de la bombe. Il brûle et bouge à peine. Il a bougé, je pense qu'un demi-pouce ou même un demi-pouce. Alors allons dans bombardé et augmenter cela à et faisons 2 mille juste pour voir si cela fonctionne. Donc maintenant la bombe brûle, explose et déplace notre joueur un peu plus, mais toujours pas assez. Nous en ferons sept mille sept mille. Enregistrez ce clic sur le jeu. Allez, explosion de bombe, jette-nous en l'air. Ok. Ce n'est pas mal. Southern 1000, c'est bon. Ok, je pense que nous ne devrions pas en ajouter dans la direction y, et ajoutons un et un autre 0. Donc c'est 10 000 sauvés que je pense que cela devrait suffire. Ok, je pense que ça suffit. Et maintenant, c'est l'heure de votre défi. Et votre défi sera de frapper notre joueur. Donc nous devons blesser le conquérant si son intérieur dans le rayon souffle. Et je vais vous donner quelques indices. Tout d'abord, vous devez vous assurer que le joueur frappé est public parce que nous allons
utiliser le collisionneur que nous avons trouvé pour obtenir le script du joueur et accéder au joueur, frapper et frapper notre joueur. Alors arrêtez la vidéo dès maintenant, ce défi n'est pas trop difficile. Tu es, je pense que tu as toutes les compétences nécessaires pour le compléter. Et je te verrai dans juste un oh, ok, bienvenue. Donc, ce que nous devrions faire maintenant, c'est que nous devons appeler le joueur à succès, ce qui déclenchera l'animation et fera mal à notre joueur. Et comme je vous l'ai dit, j'ai remarqué que c'était un privé, alors rendons-le public. Nous pouvons donc l'utiliser à partir de différents scripts. Sauve le joueur, retourne à la bombe. Et maintenant, nous devrions écrire ici, joueur point de collision get composant. On accède au, non, pas à l'avion, on accède au joueur. Maintenant, nous avons accès au script. Et ce que nous pouvons faire ici, c'est agir comme le joueur frappe, sauf ça. Et supprimons cette ligne ici parce que ça ne nuit pas à notre organisation. Et allons dans Unity et voyons si ça marche. Qu' est-ce qui est censé se passer ici ? Que lorsque nous entrons dans cette bosse et que ça explose,
nous devrions nous éloigner à quelques mètres de là. Et puis nous ne devrions pas être en mesure de bouger pendant deux secondes et nous devrions voir l'animation. Alors essayons ça. Acte explose, whoa, et on ne peut pas bouger. Et nous avons vu l'animation. Pourquoi est-ce si bon ? Ok, désolé. Tu as vu à quel point cette explosion règne ? Essayons encore une fois. C' était inattendu, ça explose, on s'envolait et on peut bouger pendant deux secondes. Encore une fois. Essayons. Aux explosions. On s'envolera, on ne peut pas bouger. Et après deux secondes, on peut. Excellent travail. Je ne sais pas pourquoi. Alors. Maintenant, notre joueur s'envolera. Nous devrions configurer l'EBIT d'explosion plus. Je te vois dans la prochaine vidéo.
38. Ajouter la capacité d'attaque (Comment utiliser des rayons): Bienvenue, mes développeurs de jeux préférés. Dans cette vidéo, nous allons ajouter la capacité de R joueur de se défendre contre les ennemis. Donc si on clique sur le jeu et qu'on descend vers notre ennemi pendant qu'il nous attaque, on peut le frapper avec le marteau. Bien sûr que rien ne se passe. Mais ici on peut dire, haha, j'ai frappé l'ennemi, alors on le frappe encore. Bien sûr, ça nous emmène toujours, mais on peut le frapper tout de suite. Et dans la prochaine vidéo, nous allons tuer l'ennemi. Alors, accrochez-vous à vos sièges et commençons. Oh, d'accord. Donc la première chose que nous allons faire est d'importer les sprites d'attaque. Alors allons dans conquérant et allons de l'avant et obtenons
les attaques sprites à partir des ressources que je vous ai laissées. Et allons de l'avant et disséquer. Ou je veux dire, tranche fait 30, faire ça multiple. Vous êtes assez familier avec la procédure en ce moment. Alors allons de l'avant et faisons la dissection manuelle. Et combien cela devrait-il être ? Allons le découper et voir ce qui se passe. Alors, la configuration en tranches, quel est le problème ? Pourquoi ne veut pas qu'on le découpe, s'il te plaît ? Oh, cas ou passons ça à 58. Maintenant, on peut le trancher ? Ok, donc c'est trop petit, faisons-le plus grand. Donc je pense que oui gros, qui est 78 par 5878 par 58, découpez-le. Et maintenant, nous avons un deck sprites tranchés. Appliquez ça. Et allons de l'avant et créons une animation pour l'animation, nous appellerons cette terrasse. Super. Allons le mettre à l'intérieur de l'animation et de l'animation, nous allons le mettre à l'intérieur du joueur. Donc maintenant dans l'animateur, l'animateur de notre joueur, nous devons ajouter l'attaque, l'animation attaquante. Alors faites glisser ça dans l'animateur. Et comment allons-nous faire les transitions pour l'animateur ? Je veux dire, pour avoir attaqué. Ainsi, l'attaque peut être accessible à partir du ralenti et de l'exécution. Donc, vous pouvez attaquer pendant que vous courez et pendant que vous êtes immobile. Et bien sûr, nous aurons un retour à ces deux états pour que vous puissiez courir et tuer tous les ennemis sur votre chemin. Cela signifie que nous allons faire un booléen. Et nous appellerons cette attaque booléenne juste pour rester cohérent avec les choses au-dessus avec les autres déclencheurs. Ainsi, la transition du ralenti à l'attaque devrait
bien sûr avoir une durée de transition de 0 et ne devrait pas avoir de temps de sortie. Et la condition sur elle sera à l'attaque devrait être vraie. va de même pour la course avec une durée de transition de 0 sans temps de sortie et avec les conditions d'attaque pour être vraies. Maintenant, les transitions de retour devraient toutes avoir une durée de transition de 0. Et en fait, vous savez quoi, attaquer ne devrait pas être un booléen et ça devrait être, oui, supprimer ça. Ça devrait être un déclencheur et on appellera ça. Je vais te dire pourquoi dans une seconde. Alors revenons en arrière. La condition est toujours vraie ici, et la condition fonctionne bien. Super. Quelle est l'utilité de l'unité ? Donc maintenant, quand nous allons dans l'animation attaquante et que nous voulons revenir en arrière, nous allons faire un temps de sortie et ce temps sera un. Donc, lorsque l'animation d'attaque se termine, nous retournons au ralenti ou nous pouvons revenir à la course si nous sommes déjà en cours d'exécution avec une durée de transition de 0. Donc, sauvegardez cela, assurez-vous de transformer l'attaque en un déclencheur, pas un booléen. Et allons de l'avant et faisons un défi. Donc votre défi est de faire attaquer notre joueur. Nous voulons que nos joueurs attaquent quand nous appuyons sur un certain bouton. Donc je vais vous donner quelques événements. Vous devez utiliser le bouton get down car il est assez similaire à sauter. Nous voulons que l'attaque se produise immédiatement. Nous allons déclencher une animation d'attaque. Et enfin, nous allons utiliser la physique pour le similaire à l' utilisé et
le lien pour obtenir tout et se concentrer sur le mot tous les ennemis dans la portée d'attaque. Donc, nous allons devoir utiliser pas cercle de chevauchement mais chevauchement cercle o. donc le défi, les deux premières choses ne sont pas si chaud. On les a déjà fait, je pense que plusieurs fois. Mais le plus dur sera la physique à D parce qu'il a une augmentation en elle. Donc, si vous sentez que vous pouvez gérer cela, allez-y et mettez la vidéo en pause et faites le défi. Ok, bienvenue de retour. Voyons donc si notre animation d'attaque fonctionne réellement. Donc, nous cliquons sur le joueur, choisissez l'attaque. Et voyons si ça marche. Zoomons sur notre joueur et cliquez sur jouer. Ok, donc l'animation d'attaque fonctionne parfaitement bien. Alors fermons ça. Sauvegardez tout cela, et allons dans notre script de lecteur et voyons ce que nous devons faire ici. Donc, nous devons d'abord créer une méthode d'attaque. Alors faisons ça. Alors quelle étiquette ici ? Et allons de l'avant et générons cette méthode. Donc pour le générer, ce n'est pas le cas. Ok, pas de soucis. Et allons de l'avant et créons le nôtre. Donc vide privé parce qu'il n'a pas de valeur de retour chez Tech. Excellent, donc maintenant la ligne rouge squiggly devrait disparaître et c'est le cas. Alors, que devrions-nous faire une attaque ? La première chose que nous allons faire est que nous allons obtenir une contribution du joueur. Donc, si cross-platform, cross-platform, input manager dot get button down, bien sûr. Et que devrions-nous écrire à l'intérieur d'ici ? Eh bien, nous devrions regarder les entrées dans nos paramètres de projet ou y aller dans Unity. Et vous voir dans le gestionnaire d'entrée, ce que nous avons pour nous aider, et l'une des choses qui pourrait nous aider est le feu, qui utilise le contrôle gauche ou le bouton de la souris 0. Alors copions, tirez un 0 de plus, je crois que c'est le bouton le plus à gauche. Alors copions ça. Revenons en arrière et mettons-le ici entre les deux citations. Et ouvrons notre condition if et que devrions-nous écrire à l'intérieur de f condition ? La première chose que je pense qu'on devrait couvrir est de déclencher l'animation. Donc mon animateur se déclenche et on devrait déclencher l'attaque de la publicité. Rendons ça plus petit. Ça va dans un animateur. Copiez ce fichier dans Visual Studio. Cliquez dessus, enregistrez ça. Voyons si ça marche. Alors cliquez sur jouer. Et notre joueur attaque maintenant chaque fois que nous appuyons sur le bouton de la souris et s'arrête, retourne au ralenti ou à courir. Donc si on explose ton livre, Cool. Maintenant, nous pouvons courir tout en frappant et nous pouvons continuer à courir. Et si nous restons inactifs, nous pouvons aussi frapper et revenir à l'un ou l'autre. Excellent. La prochaine chose que nous devrons faire est de créer une boîte de blessures pour notre joueur. Et cette boîte de blessures nous aidera à déterminer le, eh bien, utiliser le cercle de chevauchement sur la boîte de troupeau afin de frapper les ennemis. Alors faisons ça. La première chose que nous allons faire est de créer un objet de boîte blessée. Et vous verrez pourquoi dans un instant. Alors allons de l'avant et créons la boîte du troupeau. C' est là. Et réinitialisons le 0 maintenant, je veux dire l'axe z. Maintenant, nous l'avons dans notre avion. Et voyons voir, on appellera cette boîte de blessures. Et ce que nous allons faire avec cette boîte blessée, c'est que nous allons vraiment enfant à notre joueur. Et tu sauras pourquoi. En fait, je vais vous dire pourquoi maintenant, comme nous avons appris sur les enfants et les relations parentales, les enfants vont avec les parents et nous voulons que les insectes blessés soient toujours attachés à notre joueur. Donc, comme vous pouvez le voir maintenant, si notre joueur se déplace vers la droite, notre boîte de troupeau se déplace avec le joueur et reste dans la même position que nous pouvons prédéterminer. Et nous réparerons la position de la hotbox plus tard. Mais maintenant, ce dont nous avons besoin, c'est une référence à cette boîte et à notre grondement. Et la façon dont nous faisons cela est de créer un champ sérialisé qui est créé ici. Donc, créons un champ sérialisé. Et ce champ sera, est de type transformation. Donc, ce sera une boîte blessée de type transformée et nous allons simplement l'appeler boîte blessée. Garde ça si on retourne dans Unity maintenant. Ok, retourne à Unity. Et si nous ouvrons le script sur joueur, nous pouvons voir que nous avons un endroit pour ajouter notre boîte de troupeau. Alors faisons simplement glisser ça là-dedans et mettez-le à l'intérieur. Essayons d'appliquer tout ça. Et maintenant, la boîte du troupeau fera partie du préfabriqué du joueur. Donc, si nous regardons dans le préfabriqué, nous pouvons voir que la boîte blessée fera partie du pré-fab, ce qui est très utile. Ok, alors quoi ensuite ? Ensuite, nous aurons besoin d'ajouter un rayon, comme nous l'avons fait pour la liaison. Donc, nous allons devoir créer un rayon pour la boîte blessée. Et allons-y et faisons la première chose dont nous avons besoin pour sérialiser le champ à nouveau. Alors maintenant, allons de l'avant et créons un flotteur et nous
appellerons ce rayon d'attaque et ce rayon d'attaque pour l'instant, faisons-le trois et nous verrons comment nous pourrons réparer ça plus tard. Et une autre chose que nous ferons est de visualiser le rayon d'attaque. Et ce sera un mini défi où je veux aller chercher le gadget OnDraw et l'utiliser pour le rayon d'attaque. Alors mettez la vidéo en pause et faites le Menu Challenge. O K Min, le temps de défi est écoulé. On va dans les bombes. Copions simplement ceci et mettons-le dans le bas de notre script de joueur parce que nous ne l'utiliserons pas beaucoup. Et une chose que nous devrons changer comme le rayon juste ici. Appelons ça le rayon d'attaque. Et bien sûr, ce ne sera pas la position du point de transformation, mais à la place ce sera sur le plomb de la liste qu'il sera sur la position point de la boîte blessée. Donc la transformation de notre boîte de troupeau et pas le joueur. Alors maintenant, nous retournons dans l'unité. Et si nous cliquons sur le joueur, nous pouvons voir que maintenant nous avons la boîte du troupeau et si nous le déplacons, couches
VIP, boîte blessée, ou le rayon se déplace avec la boîte du troupeau. Que devrions-nous faire d'autre ? Je pense qu'on devrait réduire le rayon d'attaque parce qu'il est trop grand. Et quoi, comment va réellement calibrer cela est va aller dans les animations du joueur. On va cliquer sur l'attaque. Et au fait, vous pouvez le faire comme vous le souhaitez. Mais par exemple, je voulais, je veux que le rayon soit exactement aussi grand que ce marteau, peut-être un peu plus grand. Mettons-le ici et rendons le rayon plus petit. Ok, donc comme ça. Et, et je pense que c'est suffisant. Ouais, je pense que c'est assez bon. Ou peut-être qu'on peut juste le pousser un peu vers la droite. Pas de soucis à ce sujet. Il ne sera pas perceptible. Et en fait, pour être encore mieux parce que nous allons frapper l'ennemi
à distance tout en ressentant que nous l'avons frappé de la bonne façon. Vous pouvez calibrer, calibrer cela pendant le gameplay. Pas de soucis à ce sujet, tant que cela fonctionne correctement en ce moment. Ok, que devrions-nous faire d'autre ? Maintenant, nous devons vérifier les ennemis, les
ennemis à l'intérieur de cette boîte à tête. Et la façon dont nous allons le faire est d'utiliser le cercle de chevauchement. Alors allons-y et essayons de le faire et d'attaquer. Lorsque nous cliquons sur le bouton feu, nous, nous déclenchons l'animation attaquante. Mais ce qui va faire d'autre, c'est que nous allons utiliser, vérifierons n'importe quel ennemi qui se trouve dans les environs. Donc la physique 2D, point se chevauchent sur le tour tout. Alors qu'il entoure tout. Et ouvrons et voyons ce dont il a besoin. Donc, tout d'abord, il aurait besoin du point qui sera, bien sûr, la position de point de la boîte blessée. Ensuite, il aura besoin du rayon, qui sera le rayon du DAC. Et enfin, il aura besoin d'un masque de couche. Alors allons de l'avant et ajoutons le masque de couche de l'ennemi. Et nous allons, même si nous savons comment écrire ennemi et c'est super facile, mais comme toujours, nous allons chercher la référence de chaîne que j'ai citée, je pense presque 1000 fois maintenant. Donc j'espère que c'est vraiment ancré dans votre esprit et je continue de le dire parce que j'ai passé des heures et des heures à essayer de comprendre ce qui ne va pas avec mon code. Et c'était parce que j'ai écrit la référence de chaîne de la mauvaise façon. Donc juste en disant, de toute façon, pour l'instant, voyons ce que nous devons faire, c'est que si nous survolons ce cercle de chevauchement, tout ce que nous pouvons voir qu'il renvoie un collisionneur 2D. Mais il ne retourne pas seulement un collisionneur 2D. Il retourne un tableau de Collider 2D. Vous savez, c'est un tableau à cause des petits crochets qui sont présents deux juste ici à côté du collisionneur de la. Alors allons de l'avant et parlons d'une augmentation. Qu' est-ce qu'une course ? Eh bien, j'ai soulevé, vous permettre de stocker plusieurs objets du même type dans une seule variable. Comment ça marche ? Eh bien, nous les déclarons comme nous le faisons avec des variables où nous avons un type, nous avons un nom, et nous avons la valeur que nous donnons à ces tableaux. Et la seule différence entre une course et variable
normale est ces deux crochets juste ici. Donc, c'est fondamentalement un tableau. C' est une collection d'objets du même type. Donc, comme vous pouvez le voir ici, nous avons entier et c'est un tableau, il a un nom, c'est le nombre d'ennemis, et la valeur est 461171. Et une autre note que vous devez garder à l'esprit est que le, ces valeurs sont comptées à partir de 0. Donc c'est le 0, c'est l'un, les deux et les trois. Donc ça commence à partir de 0. C' est très important de se souvenir et de garder à l'esprit. Et je pense que c'est très associé aux tableaux. Et quelque chose que nous allons utiliser en ce moment sont des boucles. Et nous allons utiliser pour chaque boucle. Et il y a différents types de boucles, mais nous allons parler de la boucle for et je pense que dans quelques vidéos plus tard, mais pour l'instant nous allons utiliser le foreach. Nous allons vous expliquer ça pour chacun. La boucle for-each vous permet de passer par chaque chose dans une collection de choses du même type dans un tableau. Donc, par exemple, ce n'est pas un exemple, c'est la structure. Donc c'est comme ça que nous l'écrivons. C' est un foreach. Nous avons le genre, nous avons la chose qui devrait être de type, quel genre ? Et c'est à l'intérieur dans les choses qui est un tableau qui a des objets de type, ce type ici. Et ce que cela fait, c'est qu'il nous aide à passer par chaque chose dans les choses et à y faire quelque chose pour que nous puissions appliquer une méthode, sorte de méthode à cette chose. Ou nous pouvons utiliser cette chose dans une méthode ou nous pouvons exécuter d'autres choses en dehors du domaine des méthodes qu'ils ont ou quoi que ce soit. Alors allons de l'avant et faisons un exemple et voyons comment cela sera utile dans notre code. Donc, nous retournons dans notre code visuel et allons de l'avant et créons un tableau ici, qui serait de type appelé 2D. Ce sera un tableau utilisant ces parenthèses et nous appellerons ces ennemis à aller, pour frapper égal à celui-ci. Maintenant, nous avons un ensemble d'ennemis à frapper. Ce que nous devons faire maintenant, c'est que nous devons parcourir chacun de ces ennemis et imprimer quelque chose. Et au fait, une question qu'on me pose toujours, pourquoi utilisons-nous le cercle de chevauchement ? Oh, eh bien, nous allons utiliser overdubs cercle tout parce que peut-être plus tard, vous voulez ajouter plusieurs ennemis qui vous attaquent en même temps. Donc, nous voulons les frapper tous et pas seulement un seul et aimer l'autre, nous
attaquer parce que ce ne serait pas très illogique. Comme vous pouvez le voir, notre conquérant ici a un géant Thor ish, un marteau qui écrasera n'importe quel gros qui essaie de l'attaquer. C' est pourquoi nous utilisons des chevauchements, encerclons tous pour mettre tous les ennemis devant nous. Et revenons ici. Alors allons-y et créons un pour-chaque boucles pour chacun. La première chose que nous allons devoir faire est d'écrire un type qui sera hors collision à D. Donc la chose que nous pouvons nommer ce que nous voulons avec le nom d'ennemi. Donc, de sorte que chaque ennemi dans les ennemis à frapper sera simplement pour l'instant imprimer Haha, attendre, pas de haha capitalisé. Je t'ai frappé. J' ai frappé l'ennemi avec deux autres points d'exclamation juste pour ajouter le drame. Alors, sauvegardez ça, et allons voir si quelque chose fonctionne. Alors cliquez sur jouer ici. Et nous allons descendre, trouver l'ennemi. Attendez, attendez. Et si on frappe l'ennemi et qu'on va dans la console, on peut voir ce haha, j'ai frappé l'ennemi. Allons-y et essayons encore une fois. Quand l'ennemi vient à notre chemin, nous l'avons frappé et nous l'avons frappé à nouveau. Pour que nous puissions voir supprimer l'effondrement. On peut voir qu'on l'a frappé quatre fois. Pas de soucis à ce sujet. Encore une fois, si nous venons nous les frappons avec le marteau de, bien sûr, rien ne lui arrive, mais nous pouvons quand même voir que tout fonctionne parfaitement bien. Et c'est une partie très excitante de notre parcours de développement de jeux parce que nous avons enfin les moyens de défendre notre conquérant. Et je te verrai dans la prochaine vidéo.
39. Découper nos ennemis: Soutenez mes collègues développeurs de jeux et cette vidéo, nous avons ajouté la capacité de tuer notre ennemi. Donc maintenant, on ne frappe pas juste de l'air vide. Et maintenant, quand notre ennemi aminé essaie de nous tuer,
nous le tuons d'abord. Et comme vous pouvez le voir, ses squiggles sur le sol juste un peu, puis disparaît. Ok, super. J'espère que vous êtes excité pour cette vidéo parce que c'est incroyable. Nous sommes enfin en train de tuer des choses qui sont dans notre écran. On a la capacité de détruire tout le monde. Alors ne perdons pas de temps. Commençons. Ok, donc la première chose que nous ferons est d'importer ces prix et sprites et de les découper et de faire l'habitude de créer une animation temporelle. Donc vous êtes déjà familier avec ça. Alors je vais le faire vite. Alors cliquez sur la dette et les ressources vont et faites-le glisser dans les sprites. Et les sprites, mettez-le à l'intérieur de l'ennemi. Et on va couper le sprite. Quelle était la taille de la course ? C' était 22. Intéressant. Je ne me souviens pas avoir fait ça. Donc 22 multiple applique l'éditeur sprite. Combien devrions-nous épisser ça ? Donc 64 par 64, non, pas assez bon. Mais voir 28 tranchés. Peut-être plus. Voir 32s monte jusqu'à mendier. Quelle est la plus grande ? 30, peut-être non, plus grand, plus grand, juste un peu plus grand. Qu' est-ce que ça veut dire ? Oh non, attendez, c'est 1230 sortes pour donc je pense que ça devrait être nous allons voir. Non, 36, allez. D' accord. Calculatrice, voyons, 152 divisé par quatre, c'est 38. Donc 38, si près 38 satellites que jusqu'à, appliquer tout et maintenant aller de l'avant et créer l'animation. Donc l'animation va mourir et nous allons la mettre à l'intérieur du dossier ennemi et de l'animation. Et nous choisirons l'ennemi. Et allons de l'avant et ajoutons les mourants. Et cette mort peut provenir de n'importe quel état. Alors nous allons zoomer un peu pour voir ce que nous faisons. Cette mort pourrait provenir de n'importe quel état, donc nous ferons la transition. Et bien sûr, nous allons ajouter un paramètre qui sera un déclencheur. Donc, ce sera dy, tout simplement Dai De Yi. Et la prochaine chose que nous allons faire, c'est aller dans l'endroit où est ça ? Allons zoomer sur notre ennemi. Donc, notre ennemi a maintenant le mourant et va changer la durée de transition à 0 heure de sortie. n'y a pas d'heure de sortie et la condition sera de mourir. Donc, vous êtes conditionnés à mourir est aujourd'hui. Et l'animation, si nous cliquons sur notre ennemi et cliquez sur plongée, jouez cette animation. Ok, cool. Donc notre ennemi meurt et il regarde. Parfaitement bien. Excellent. Et si on faisait ça une seconde ? Donc, si on meurt, il continue à se battre sur le terrain. Nous n'essayons pas d'être sadiques ou quoi que ce soit. Nous voulons juste rendre l'animation plus longue pour notre plaisir. Ça me semble encore statistique. Alors contrôlez v. Et contrôlez à nouveau V. Et maintenant notre animation devrait ressembler à ceci. Donc on meurt et il continue à se tortiller sur le sol. Super. Alors, sauvegardez ça. Tout fonctionne parfaitement bien. Je suppose que nous avons ajouté le déclencheur et maintenant il est temps de créer une méthode pour que notre ennemi meurt. Alors, allons dans Visual Studio. Et Visual Studio, nous allons entrer dans le script ennemi. Et ici, dans la mise à jour, nous allons ajouter les mourants. Mais avant de le faire, faisons un peu d'organisation pour garder la mise à jour fraîche. Et nous allons extraire cette méthode et l'appeler ennemi. Mouvement ennemi. Gay et sous le mouvement ennemi va créer les mourants. Et comment cela mourant devrait-il fonctionner ? Alors créons ça. Il devrait donc être public parce que nous allons y accéder, y
accéder de l'extérieur. Et ce sera un vide. Et nous appellerons simplement. Allons-y et ouvrons. Et excusez-moi. Nous n'en avons pas besoin et mise à jour. Juste une force d'habitude. Donc mourant, un grand de quoi avons-nous besoin à l'intérieur de mourir ? Eh bien, pour l'instant, nous allons simplement déclencher l'animation. Alors avons-nous une référence à notre animateur ? Non, nous ne le faisons pas. Allons-y et prenons-le. Donc ça va être un Animateur. Animateur, et on l'appellera mon animateur. Juste pour rendre les choses simples, nous allons obtenir le composant comme toujours obtenir composant l'animateur. Et maintenant, nous avons une référence. Supprimez cela. Maintenant, nous avons une référence, n'est-ce pas ? Oui, nous le faisons. Donc mon animateur va définir le déclencheur et quel déclencheur va être ? Il va être dy et allons de l'avant et être sauvage à ce sujet et
n'ira pas copier la préférence de chaîne parce que c'est un mot à trois lettres Ku. La prochaine chose que nous devrons faire avant de le démonter, nous devons le vérifier joueur. Et au lieu d'imprimer quelque chose, nous aurons besoin d'accéder aux mourants. Donc la façon dont nous allons le faire, c'est parce que nous traversons chaque ennemi. Comme nous l'avons fait avec la bombe. Nous allons écrire l'ennemi. Donc ennemi, qui est l'ennemi juste ici, point va obtenir le composant. Alors, obtenez le composant. Et ce sera le script ennemi. Et à partir de là, nous allons utiliser la méthode de la mort. Alors sauvegardez cela et voyons si cela fonctionne. Donc ça appellera les mourants. Les mourants mettront la gâchette pour mourir et notre ennemi achètera. Alors. Où notre joueur, mettons-les là-bas parce que nous ne voulons pas sauter à chaque fois. Devine. Mettons-le ici et nous allons cliquer sur jouer et voir ce qui se passe. Alors cliquez sur jouer. Attendons que notre ennemi vive et nous partageons. Ok, donc comme vous l'avez vu avant qu'on aille voler. Oh, whoa, OK. Prends ça facile. Donc, comme vous pouvez le voir, notre ennemi est mort, mais il peut encore nous blesser et il est toujours en mouvement. Alors, que devrions-nous faire à ce sujet ? Écoute, oh, il nous fait encore du mal. Alors, que devrions-nous faire à ce sujet ? Eh bien, le problème est que tous ses composants fonctionnent encore et que vous allez dans l'ennemi. On peut voir que son collisionneur capturé fonctionne toujours, ce qui nous a fait du mal. Son corps rigide est toujours allumé, ce qui lui donne la capacité de bouger. Il a encore le collisionneur de boîte, qui lui donne, lui
donne la possibilité de retourner sprite et aller dans l'autre direction. Donc ce qu'on doit faire, c'est qu'on va devoir éteindre tout ça. Et les types de corps rigides devraient être fixés sur statique afin de l'éteindre. Alors allons-y et faisons-le. Donc, nous allons revenir dans le code. Et à côté de mourir après le jeu de déclenchement obtiendra le composant pour le collisionneur de capsule et n'aura pas besoin de créer une référence là-haut parce que nous ne l'utiliserons qu'une seule fois, donc c'est correct de l'obtenir. Alors le collisionneur de capsules, que devrions-nous faire pour les éteindre ? Nous allons définir l'activé sur false. Et ce que cela fait, c'est que si nous allons dans l'Unité, de
retour dans l'ennemi ici, vous pouvez voir que chacun de ces composants a une case à cocher à côté de lui. Donc, quand on écrit point incapable est faux, cela signifie
que nous avons éteint ce collisionneur de capsule. Allons le retourner et le garder appliqué à tout pour que vous ayez l'idée. Maintenant, nous aurons également besoin d'éteindre le collisionneur de boîte et nous aurons besoin définir le type de corps de corps rigides sur statique. Si vous voulez faire un mini défi dès maintenant, allez-y et continuez. Donc, vous devez éteindre le collisionneur de boîte et a dit le type de corps à statique. D' accord. Avez-vous essayé de les faire dans un défi ? J'espère que vous avez essayé. C' est juste le couple de code, quelques lignes de code. Alors maintenant, allons de l'avant et accédez au collisionneur de boîte. Et cette boîte appelée briquets et activée sera transformée en faux. Et enfin, le corps rigide, dont nous avons une référence pour ce qu'il est. C' est le poids corporel rigide de l'ennemi. Pourquoi ai-je nommé mon animateur et un corps rigide ? C' est donc le moment idéal pour apprendre une nouvelle astuce. Mettez donc en surbrillance celui-ci en cliquant, double-cliquez. Et si vous maintenez le contrôle et appuyez sur R, R2 fois, vous pouvez le modifier partout où il est présent. Regardez tous les cas où nous avons appelé mon animateur. Regarde ce qui se passe maintenant si on supprime mon ennemi droit et mon ennemi droit. Ça change tous les endroits où nous avons utilisé ce nom. Et c'est tellement cool et extrêmement, extrêmement utile. Ok assez de ça, allons dans mon point de corps rigide ennemi. Et allons de l'avant et tapez type de corps. Et cela nous permet de changer le type de corps. Et Visual Studio nous aide immédiatement en nous disant que nous avons besoin de taper corps rigide type deux D. Cliquez sur l'onglet. Maintenant, nous l'avons. Et nous pouvons choisir entre la cinématique dynamique. Et bien sûr, nous choisissons statique. Sauve ça. Et voyons si ça marche. Donc, nous cliquons sur le jeu. Notre ennemi va dans l'autre sens, nous le frappons et maintenant il bouge juste un peu sur le sol et il a fait des taux de filles maintenant nous avons le pouvoir et nous ne pouvons plus le frapper. Il peut il ne peut plus nous blesser et ne bouge pas. Excellent. Une autre chose que nous devons faire est de supprimer ou je veux dire, détruire notre ennemi de la scène. On a besoin qu'il disparaisse au bout de deux secondes. Et cela fera partie de votre défi. Et ce défi est de détruire l'ennemi. Alors attendez deux secondes, puis détruisez l'ennemi. Vous le ferez. Après je vous donne un indice, qui est utiliser des revêtements que nous avons appris dans les leçons précédentes. C' est donc un bon moment pour appliquer les connaissances de votre équipe de coraux, ce qui sera une compétence très utile à l'avenir. Alors arrêtez la vidéo dès maintenant et allez faire le défi. Kay, bienvenue. Allons-y et complétons le défi. La première chose que nous allons faire est d'aller dans les mourants. Et ici, nous allons créer un énumérateur oculaire. Donc je suis en numérateur. Numérateur, on appellera ça, en fait. Appelons ça mourir ou non, non. On appellera ça détruire, détruire l'ennemi. Ok, alors maintenant nous allons détruire l'ennemi et ce sera une co-routine. Cela signifie que nous devrons guérir le retour et la nouvelle attente quatre secondes. Et combien de secondes devrions-nous attendre ? Je pense que deux, c'est assez bon. Et après deux secondes, nous allons simplement détruire l'objet du jeu. Donc, comme je l'ai dit, l'objet de jeu, cet objet de jeu est une référence à l'objet de jeu, qui a le script ennemi attaché à lui. Sauvegardez ça, revenons à Unity. Et cela devrait, en théorie fonctionner parfaitement bien. Et on a la tête, essayons encore ça. Donc, l'ennemi attaque et nous le frappons en face à quelques secondes. Et il est toujours là. Pourquoi est-il encore là ? Allez. Va-t'en. Voyons ce qu'on a fait de mal. Oh, on n'a pas appelé la co-routine, alors allons-y et commençons le coltan. J' espère que tu n'as pas fait la même erreur que moi. Et votre défi pendant que vous faisiez le défi, si vous faites le défi, pas seulement regarder et attendre pour moi. Alors, commencez Coroutine, détruisez l'ennemi. Et maintenant, nous cliquons sur le jeu. Et nous frappons et non, nous courons après lui et nous frappons et deux secondes plus tard, il l'a fait. Oh, ok, super. J' espère que vous avez apprécié la vidéo. J' espère que c'était amusant et je te verrai dans la prochaine vidéo.
40. Section 6 : Contrôler notre jeu - Ajouter des niveaux: Bienvenue à tout le monde dans une toute nouvelle vidéo et une toute nouvelle section. Donc, comme vous pouvez le voir ici, les choses se sont rapidement dépassées. Nous avons en quelque sorte trois niveaux. On a ce tout petit niveau juste ici. Ensuite, nous avons ce niveau 1 que nous avons utilisé jusqu'à présent, mais j'ai utilisé jusqu'à présent, nous ne savons pas ce que vous avez créé. Et enfin, nous avons ce dernier niveau qui est encore plus bizarre et encore plus grand que le précédent. Donc, je suis tellement excité d'ajouter un nouveau jeu de magasin de niveau et de parler de conception de niveau. Alors, nous allons entrer et nous sommes pointillés. Ok, donc la première chose qu'on va faire est d'aller dans nos scènes, ce qu'on n'a pas été trop tôt ces derniers temps. Et allons de l'avant et renommons ce niveau 0 en niveau un. Et il nous demandera de recharger, suffit de cliquer sur oui, dupliquer cela, et de répliquer cela une fois de plus. Maintenant, nous avons un niveau un, un niveau deux et un niveau trois. Allons de l'avant et renommons le menu principal du niveau 32. Et maintenant, je vais vous apprendre une technique très cool pour qu' on puisse charger tous nos niveaux et la même scène en même temps. La façon dont nous le faisons est en fait très simple, mais vous devez être très prudent quand vous le faites. Donc, la première chose que vous faites est simplement de cliquer sur le niveau 2 et de le faire glisser. Et maintenant, vous avez deux niveaux et vous pouvez également aller de l'avant et faire glisser le menu principal. Donc maintenant, vous avez trois niveaux dans la même scène dans qui sont en ce moment sur l'autre. Alors, comment les démonter ? Pour ce faire, vous devez tout sélectionner et je veux dire tout et vous devez vous assurer que tout dans votre hiérarchie est sélectionné pour cela, par exemple, pour le menu principal, il suffit de cliquer sur cette flèche. Si vous ne le voyez pas, cliquez sur le w ou cliquez ici et faites-le glisser vers la gauche ou vers la droite. Cela dépend de la façon dont vous voulez le faire. Mais pour moi, par exemple, je veux que le menu principal soit sur la gauche. Et puis allez-y et faites la même chose pour le niveau 2. Donc je maintiens la touche Maj enfoncée et j'appuie sur le dernier ici et fais glisser tout vers la droite. Ok, donc maintenant comme vous pouvez le voir, nous avons ces trois niveaux Simon simultanément présents dans une scène. Maintenant, pourquoi est-ce utile ? Alors que, disons par exemple, vous voulez faire une série de niveaux. Nous pouvons les mettre l'un à côté de l'autre et voir comment ils coulent et comment ils regardent de l'extérieur. Ce E1 est plus grand, un plus sombre, un plus lumineux, un plus gradé, peu importe ce qu'il est. Et un autre bon avantage pour cela. Peut-être que vous voulez créer un grand niveau géant. Et ce grand niveau géant est une série de petits niveaux. Ainsi, vous pouvez aller de l'avant et zoomer et créer tous ces niveaux voir chacun d'eux et les connecter comme vous voulez les connecter. Alors la prochaine chose que nous ferons, c'est que nous verrons comment chacun d'entre eux fonctionne. Parce que maintenant, si nous cliquons sur jouer. Ok, alors attendez que ça se charge. On ne sait même pas dans quelle scène on joue. Et si on y retourne, on peut voir qu'on a joué dans les trois scènes. Ok, alors sortons du moule. Donc ce que vous pouvez faire, vous pouvez vraiment y aller, sauvegardons tout ça. Donc, vous pouvez réellement aller, Par exemple, au niveau deux, droite, le clic dessus et vous pouvez décharger la scène. Et de cette façon, il n'est plus chargé. Par exemple, vous pouvez décharger la scène de niveau un. Et maintenant, lorsque vous cliquez sur jouer, vous ne jouerez que dans le mode menu principal. Je veux dire, niveau du menu principal. Que pouvons-nous faire d'autre ? Et ici, je pense qu'il est temps de faire le niveau manuel principal. Donc dans le menu principal, on n'aura pas de liens, on n'aura pas d'ennemi. Et les caméras dirigées par l'État seront simplement éteintes. Pourquoi c'est ça ? Eh bien, maintenant vous le découvrirez parce que nous allons prendre notre joueur, le
mettre ici, et le menu principal n'aura rien dessus. Donc je vais supprimer tout ça. Et le menu principal n'aura que ces rideaux ici et cette petite colonne. Et ce sera un niveau d'expérimentation pour le joueur juste courir autour et sauter dedans. Et c'est tout. Alors faites un niveau, je suis d'accord. Je vais créer un niveau dans environ 30 secondes en utilisant, bien
sûr, la magie de l'édition. Alors, on se voit dans un peu. Oh, K. Alors bienvenue. Donc, comme vous pouvez le voir, j'ai construit ce niveau très rapidement. J' ai fait quelques erreurs et il n'y a rien de fantaisie à ce sujet. Ou le joueur se déplace juste et saute autour et rien de très excitant, mais c'est le niveau du menu principal. Donc maintenant, ce que nous allons faire, c'est que je vais vous lancer un défi. Et ce défi est de faire trois niveaux. Vous devrez donc créer, tout d'
abord, un menu principal. Tu peux faire la même chose que moi. Vous pouvez le rendre différent. Vous pouvez enlever les rideaux, peut-être juste pour que notre joueur apprenne à marcher, sauter et courir. Et l'autre est de créer un niveau que vous avez déjà. Vous pouvez le modifier, vous pouvez le rendre différent. Et enfin, vous devez créer un niveau deux. Et ce niveau final sera de votre propre conception. Je ne vous montrerai pas ce que je fais parce que je veux que la chaussure en crée une. Je ne vous montrerai que le produit final. Et ensuite, vous devez garder à l'esprit que vous devez rendre la progression logique entre les niveaux. Donc, vous ne voulez pas rendre le niveau trop facile que niveau un parce que cela ne se sentira pas très progression. Le joueur qui joue à votre jeu ne ressentira pas la progression. Ne sentira pas le sens de l'accomplissement qu'il est sur un deuxième niveau et plus difficile. Alors assurez-vous d'ajouter plus de variété dans votre deuxième niveau et ainsi de suite, ainsi de suite et ainsi de suite. Et enfin, vous devez déterminer où le point final de chaque niveau devrait être. Donc, vous ne voulez pas que votre joueur marche sans but dans le monde. Vous devez savoir quel est le point qu'il a besoin d'atteindre pour compléter le niveau ? Alors arrêtez la vidéo dès maintenant et allez de l'avant et créez deux niveaux de plus. Alors bienvenue. Comment avez-vous créé vos niveaux ? J' espère que tu as eu autant de plaisir que moi. Donc c'est notre menu principal, donc nous sélectionnons pour King, ne faites jamais ça. Nous sélectionnons tous les composants dessus. Et faisons-le glisser ici. Et comme vous pouvez le voir, notre monde est encore confiné. Donc, nous pouvons éditer cela et le rendre plus petit. On peut même l'effacer, mais ça n'a même pas d'importance. Alors faisons-le comme ça, rendons-le plus petit. Et laissez-moi vous montrer mes deuxième niveaux. Donc, comme vous pouvez le voir, j'ai créé mon niveau aussi. Je n'ai pas encore ajouté d'ennemis ou de bombes, donc je les ajouterai plus tard. Mais laissez-moi vous montrer ce que j'ai créé. Et voici, voici mes joueurs pour que je puisse le suivre. Donc il commence le niveau juste ici. Il saute vers le bas. Il peut être que j'aurai un ennemi ici avec un peu, peut-être une bosse et une bombe juste ici. Donc le joueur a besoin de sauter. Il y a une bombe ici, il y a un ennemi juste ici, donc il doit sauter rapidement sur cette plate-forme. Et puis il marche, marche, marche, et puis il saute ici. Peut-être qu'il a besoin de tuer un ennemi. Puis il saute ici, il y a un lien, il y aura une bombe juste ici. Il saute, il saisit les rideaux et commence à grimper pour sa vie. Alors que mon joueur, d'
accord, il commence à grimper, à grimper et à grimper. Voici une sorte de diamant et peut-être trois diamants ici protégés par un pic NME qui l'attend. Alors on continue à grimper, les Wikis continuent à grimper. Et enfin, nous arrivons à cette plate-forme juste ici. Et il y aura la destination que le joueur doit atteindre. Et c'est mon niveau. N' oubliez pas si vous avez créé votre deuxième niveau. N' oubliez pas de rendre la salle d'opération seulement le monde confiné là. Comme vous pouvez le voir, ce n'est pas parfait par tous les moyens, mais ça marche. Je l'ai essayé et ça fonctionne parfaitement bien. J' espère donc que vous apprécierez la création de votre deuxième niveau et menu principal. Et que devrions-nous faire d'autre ? Eh bien, nous devrions enfin parler de quelque chose de très important, qui est la conception de niveau. Et il est très, très crucial que vous compreniez le flux. Donc, par exemple, ici, il n'y a rien de trop fantaisie. Eh bien, cette semaine, nous allons réfléchir beaucoup au niveau 1, mais comme vous pouvez le voir ici, peut-être que nous aurions dû supprimer toute la capacité d'escalade et peut-être ne pas ajouter de bombes, par exemple. Et puis dans le deuxième niveau, nous ajoutons des bombes et peut-être dans le troisième niveau, nous ajoutons des bombes et des ennemis. Et peut-être que vous pourriez obtenir, je veux dire, que chaque niveau ait son propre style. Alors peut-être que plus tard, vous pouvez faire des plates-formes qui sont invisibles. Peut-être que vous pouvez faire des niveaux sombres et cetera, et cetera. Mais pour l'instant, nous finissons la vidéo. J' espère que ça vous a plu. J' espère que vous avez beaucoup réfléchi à votre niveau parce que c'est la partie la plus amusante de la création de jeux. C' est l'essence de la plate-forme 2D, donc je vous verrai dans la prochaine vidéo.
41. Porte de sortie: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et dans celui-ci, nous mettons
notre jeu à rassembler parce que maintenant non seulement nous tuons des ennemis, non seulement nous explosons, mais nous avons aussi un idiot. Eh bien, ce n'est pas seulement l'amour, il s'ouvre en fait. Et si nous approchons et nous cliquons sur le w, il se ferme et nous passons au niveau suivant, comme vous pouvez le voir ici, nous avons un niveau deux. Et dans notre scène, si nous zoomons, nous sommes en fait allés au deuxième niveau, ce qui est très excitant et très cool et donne vraiment de l'authenticité au travail. Alors ne perdons plus de temps et emmenons notre conquérant dans une aventure en huit. Ok, donc la première chose dont nous aurons besoin, c'est que nous allons entrer dans ce niveau 2 et positionner notre joueur ici comme position de départ. Et la prochaine chose que nous allons faire, nous allons au niveau 1, voir à quel point c'est utile et nous allons fixer sa position, je pense ici. Et ça devrait être bien. Alors, sauvegardez tout ça. Et maintenant, allons de l'avant et déchargeons les scènes. On déchargera donc le niveau 2 et on le retirera. Ensuite, nous allons décharger le menu principal et supprimer la scène. Sauvegardez ça. Et la prochaine chose que nous allons faire est de visualiser notre sortie de niveau. Et la façon dont nous allons le faire est d'ajouter des sprites. Et avant de le faire, nous allons créer un dossier. Tellement amusant. Alors allez-y et nommez cette porte. Maintenant, allez dans les ressources et allez chercher tous ces sprites que je vous ai aimés là-bas. Alors allez-y et mettez-les à l'intérieur de la porte. Et maintenant on va découper ces bébés. Nous allons faire ce 32 et nous allons le rendre multiple, et nous allons l'appliquer et aller dans l'éditeur de sprite, trancher ça. C' est parfait comme ça. Donc c'est 46 par 56. Appliquez ça. Allez à l'ouverture. Nous avons en fait des sprites d'ouverture et des sprites de fermeture. Donc, faites ce 32 multiple appliquer, annulant cela très vite parce que je crois que vous savez déjà comment faire tout cela. Donc grille par taille de cellule, le combien c'était que c'était 48 par 56. Non, il n'est pas utilisé une calculatrice. Notre calculatrice fidèle trie à 30 divisé par 12345 et nous obtenons 46 ou 4646 par 56 mensonges que jusqu'à. Ensuite, allons de l'avant et découpons notre tout en fermant. Alors allons de l'avant et faire ce 30 pour faire ce multiple appliquer tout qui a obtenu le rendu sprite et le couper, Appliquer. Et maintenant, nous avons une fermeture et une ouverture. Et qu'allons-nous faire maintenant ? Eh bien, nous allons créer un objet, et cet objet va être réinitialisé. Et ça va s'appeler la porte de sortie, qui est le nom de notre vidéo. Cool, n'est-ce pas ? Ensuite, nous allons ajouter un moteur de rendu sprite et nous l'ajouterons. Un sprite par défaut, qui, je pense, sera la porte au ralenti. Et comme vous pouvez le voir, nous ne pouvons pas le voir à l'extérieur du royaume de notre monde. Donc, pour résoudre ce problème, nous devons créer des calques et vous allez de l'avant, mettre en pause la vidéo et créer ces calques. Non. Ok, alors allons de l'avant et ajoutons des couches. abord, nous allons ajouter un calque, pas un calque de tri, car nous l'utiliserons plus tard. Et on s'appelle la tueuse en troisième double ou juste interactible. D'accord. Est-ce que j'ai écrit interactible correctement ? Donc, nous allons copier cela et nous allons ajouter un rendu de calque de tri B devant le premier plan. Et je pense devant la bombe ou pas devant la bombe. Bref, ça n'a pas d'importance. Faisons-le devant le premier plan. Et nous sauverons ça. Revenons et à la porte de sortie, faites-en un interactible et c'est la couche de tri sera également l'interactible. Et maintenant, nous avons une porte Ku. La prochaine fois que nous allons faire, c'est créer l'animation. Alors allons dans l'animation et faisons la meilleure partie de tout. Et maintenant, nous retournons dans la porte et nous allons créer l'animation de clôture. Donc, créez une animation de fermeture et créera aussi l'inactivité. Donc c'est une animation d'un sprite. Inactif, pas besoin d'appeler au ralenti. Nous savons déjà ce que c'est. Et enfin l'ouverture. Et allons de l'avant et créons l'ouverture. Oh, ok, super. Alors allons de l'avant et cliquez sur tous ces et faites-les glisser dans l'animation. Et nous les reprendrons. Et on va les traîner dans la porte. Ensuite, nous allons créer l'animateur. Donc contrôleur de l'animateur, on appellera cette porte de sortie. Et en dehors de notre animateur, première chose va faire glisser l'animateur et à la porte de sortie. Et maintenant, si nous cliquons sur la porte de sortie, nous avons un composant Animator qui a été ajouté automatiquement avec la porte de sortie dessus. Alors, que devrions-nous faire dans notre animateur ? Tout d'abord, fermons notre calculatrice pratique et allons dans animateur, calculatrice
animateur, tout dans R. Alors maintenant nous allons ajouter inactif. Donc la porte sera inactive quand nous commencerons à gagner. Ensuite, nous allons ajouter l'ouverture de la porte et la porte se refermera parce que je
n'ai jamais vu une porte qui se ferme avant qu'elle ne soit ouverte. C'est une mauvaise blague. Et maintenant, nous devons créer les transitions. Donc, nous allons faire une transition de l'idole et à l'ouverture, puis de l'ouverture et de la fermeture. Et maintenant, nous allons ajouter des paramètres pour les garder en échec. Alors allons de l'avant et ajoutons un paramètre qui sera un déclencheur, qui ouvrira la porte. Et nous allons ajouter un paramètre, je veux dire un déclencheur ou un paramètre de déclenchement qui va fermer la porte. Et continuons et supprimons la durée de transition, supprimera le temps de sortie et nous allons ajouter une condition qui est ouverte qui va de l'inactivité à l'ouverture. Ensuite, dans la transition de l'ouverture à la fermeture, nous supprimerons également la durée de transition, supprimerons l'heure de sortie et le déclencheur de fermeture. Sauvegardez tout ça. Et maintenant, nous allons devoir trouver un moyen de changer ces déclencheurs ou athlète, ou ce que je veux dire c'est déclencher ces déclencheurs. Et ça veut dire changer le comportement et ça veut dire coder le calicot. Et maintenant, allons ajouter un composant. On appellera cette porte de sortie. Allez-y et créez un nouveau script et créez et à, et nous attendrons que l'unité comprenne ce qu'on. Attendez ça. Ok, super. Maintenant, l'unité est prête pour notre codage. Alors allons de l'avant et ajoutons la porte de sortie aux scripts. Et à partir des scripts, si nous double-cliquez sur qui nous accèderons à la porte de sortie. Et maintenant Visual Studio s'ouvre. Alors, que devrions-nous faire maintenant ? Eh bien, quel est le point de notre porte ? C' est la porte de sortie, comme ça le suggère. Ce que nous voulons, c'est que chaque fois que nous approchons de la porte, nous voulons que cette porte s'ouvre. Et si nous cliquons sur un certain bouton, nous voulons que la porte se ferme et nous voulons passer au niveau suivant après environ deux secondes. Alors comment allons-nous faire ça ? Commençons tout d'abord par créer un moyen pour nous d'ouvrir la porte. Et la façon dont nous allons le faire est d'utiliser l'entrée On Trigger. Donc, la première chose que nous ferons est
d'ajouter un collisionneur à notre porte et allons voir si ce collisionneur de boîte. Oui, je pense que c'est très bien. Et parce que nous utilisons l'entrée entrepreneur en fera un déclencheur. Sauvegardez ça. Et avant de partir, je veux m'assurer que quelque chose est que nous voulons seulement que cette porte interagisse avec le joueur. Donc, le gestionnaire d'entrée va aller de l'avant et aller dans la physique. Et ici, nous avons les bulles d'interaction et notre matrice de collision de couche. Alors allons de l'avant et éteignons tout sauf pour l'interactible entre le joueur. Oh, ok, super. Et maintenant, allons à notre code et commençons à coder, ce qui est ma partie préférée après la création de dossiers. Donc, nous sommes dans Visual Studio. Nous n'avons pas besoin du démarrage et de la mise à jour pour l'instant. Si nous en avons besoin, nous les créerons. Ce dont nous avons besoin est d'un Entrée sur Trigger à d. Et pour l'instant simplement sur sucre entrer 2D, nous allons définir l'animation de l'ouverture. Donc n'aura pas besoin d'une référence à notre animateur parce que ce n'est pas le cas, nous ne l'utiliserons pas autant. Donc va simplement aller de l'avant et obtenir le composant, va obtenir l'animateur, et va simplement définir le déclencheur, définir. Le déclencheur, et ce déclencheur sera ouvert et c'est une référence de chaîne. Donc nous allons copier ça, le mettre à l'intérieur d'ici, et nous le sauverons. Et allons-y et démo. Voyez ce travail. Donc notre joueur bouge. Ok, à peine il frappe et maintenant la porte s'ouvre, mais ok, donc un petit problème, nous devons rendre la porte derrière le joueur. Alors revenons aux couches de l'inspecteur. Aller à ajouter calque, va vérifier les couches de tri et nous allons faire, tandis que l'interactible fera rendre derrière le lecteur. Sauvegardez ça à nouveau. Et voyons voir. Cliquez sur jouer. Et maintenant, nous courons à la porte, elle s'ouvre et elle reste ouverte. Et d'accord. Je pensais que quelque chose ne allait pas, mais parce qu'on touche l'escalade. D' accord. Pas de soucis. Donc la porte s'ouvre maintenant, nous avons besoin d'un moyen de fermer la porte. Et la façon dont nous allons le faire est de créer une autre méthode. Et cette méthode s'appellera Évitez l'amin public, je veux dire, désolé, public. Pourquoi public ? Nous le découvrirons dans une minute. Commencez la journalisation au niveau suivant. Et pourquoi avons-nous créé cette fonction avant nous, faisons cela un peu et connectez-vous au niveau suivant. Ok, super. Donc maintenant, ce que nous voulons, c'est que nous voulons créer une fonction ou une méthode qui va d'abord fermer la porte. Et deuxièmement, nous voulions nous amener au niveau supérieur. Donc, nous aurons besoin d'utiliser quelque chose appelé vu Manager. Et vous apprendrez à voir Manchu dès maintenant et aurez besoin de construire nos scènes. Selon les niveaux. Et que devrions-nous faire d'autre ? Eh bien, nous devrons trouver dans quel senior chez, et nous devrons passer à la prochaine. Donc, la première chose qu'on va faire est de régler le déclencheur de la fermeture. Alors animateur, et nous allons aller de l'avant et régler la gâchette pour fermer. Ok, ne fais jamais ça. Allons-y et copions-le. D'accord. Fermer. C'est assez facile, donc c'est proche. Alors maintenant, la porte se ferme. Et la prochaine chose que nous voulons, comme je l'ai dit, nous voulons passer au niveau suivant, mais pas immédiatement. On veut aller après, je pense que peut-être deux secondes. Donc ça veut dire qu'on va créer une co-routine. Alors commencez à enduire. Et quel devrait être le nom de la méthode B ? Et allons de l'avant et créons ça. Ça va être un énumérateur oculaire. Je suis assez marrant. Je suis sûr que vous êtes familier avec nos recenseurs et coroutines, et nous appellerons cette charge niveau suivant. Et bien sûr, nous allons produire des rendements. Nouveau, attendez quatre secondes. Et au lieu d'écrire simplement deux ici va créer une variable que nous pouvons éditer fera en fait un champ sérialisé. Et on appellera ce chargement sûr. Et nous appellerons cette seconde trop basse. Et on en fera deux. Et c'est un bien meilleur moyen que
d'ajouter simplement un nombre aléatoire ici parce que cela nous donne la possibilité de contrôler ce que nous faisons. Et enfin, on va faire quoi ? Tout d'abord, allons de l'avant et ajouter le niveau de charge suivant ici pour éviter toute erreur. Et maintenant, que devrions-nous faire ? Eh bien, tout d'abord, laissez-moi vous apprendre à construire les niveaux l'un après l'autre. Alors retournez dans Unity, allez dans Fichier et cliquez sur Paramètres de construction. Et maintenant, les paramètres de décantation intégrés, comme vous pouvez le voir, nous avons ces scènes en construction. Et en fait, c'est là que vous construisez votre jeu et vous pouvez changer la plate-forme que vous allez utiliser. C' est pourquoi nous utilisions multi-plateforme en fait, parce que maintenant vous pouvez construire pour une PS4, vous pouvez la construire pour une Xbox, ou Android ou iOS, tout ce que votre cœur désire. Et pour l'instant, gardons-le sur celui-ci. Et voici où nous ajoutons ces scènes. Et comme vous pouvez le voir, nous n'avons qu'une seule scène en ce moment dans notre jeu. Et ajouter des scènes est assez simple. Nous allons dans notre dossier de scènes et nous faisons simplement glisser les scènes que nous voulons. Et vous les ajouterez en fonction de la façon dont vous voulez que votre jeu coule. Donc, vous ne mettrez pas le niveau deux au-dessus du niveau un parce qu'ils vont, comme vous pouvez le voir ici, ils sont dans un tableau ou ils ont des index qui iront de 012. Ok, donc maintenant nous avons mis nos scènes dans un index de construction et nous pouvons simplement quitter cela. Et maintenant, revenons dans Visual Studio et apprenons un couple de gestion du péché. La première chose dont nous aurons besoin, comme nous l'avons déjà dit, comme je l'ai fait avant, nous avons utilisé quand nous voulions utiliser la plate-forme transversale avec dit que nous utilisons les actifs standard Stan, Unity, le gestionnaire multiplateforme, et fera de même quand nous voulons lui dire que nous voulons utiliser la gestion vu. Alors allons de l'avant et ajoutons ça. Et ceux-ci sont appelés espaces de noms. Je ne sais pas si je vous l'ai déjà dit. Donc, c'est Unity moteur point vu gestion. Donc maintenant, nous pouvons réellement grandir, passer d'une scène à l'autre. Et la façon dont nous allons le faire c'est d'abord, nous aurons notre monnaie. Alors, où sommes-nous actuellement ? Donc, ce sera une variable, et quand vous n'êtes pas sûr de quel genre de variable il va être, vous pouvez simplement écrire. Var. Et ce sera, eh bien, informatique changera en fonction de la variable qu'il est donné. Donc var, nous allons appeler cet index vu courant. Et ça va être égal à la haute direction. Ok, point devient actif vu. Donc, cela va nous obtenir la scène active actuelle. Et pas seulement cela, mais nous devrons aussi aller chercher l'index de construction. Alors, qu'est-ce qu'on fait ici ? Laisse-moi te le dire encore une fois. Nous avons créé une variable et nous l'appelons var parce que nous ne sommes pas sûrs de ce que nous allons obtenir. Nous allons obtenir un entier, mais peut-être que nous ne sommes pas sûrs, donc nous pouvons l'appeler vd. Ensuite, nous avons le nom qui est la monnaie dans l'indice. Et nous pouvons obtenir l'index des scènes actuelles en utilisant le Gestionnaire de scènes, auquel nous pouvons maintenant accéder parce que nous avons ajouté l'espace de noms de l'utilisation du moteur d'unité,
en utilisant gestionnaire de scènes du moteur Unity. Ensuite, nous allons chercher la scène active et nous obtenons son index de construction. Donc maintenant, à cause de cette variable, nous savons sur quelle scène nous vivons. La prochaine chose que nous allons faire juste après, c'est que nous allons charger la scène suivante. Et la façon dont on fait ça, c'est qu'on utilise le gestionnaire de scène. Nous écrivons simplement scène Lope. Et à l'intérieur d'ici, vous pouvez voir que cela nous donne l'index construit de la scène. Donc, il nous demande quelle scène voulez-vous aller à la prochaine ? Et la prochaine chose que nous voulons aller, c'est la scène actuelle. Donc, c'est l'index de scène actuel plus un. Et cela nous mènera au niveau suivant. Donc tout devrait bien fonctionner. On l'essaiera plus tard. Mais ce que vous devez faire maintenant, c'est que vous devez relever le défi. Et votre défi sera d'accéder au début de chargement niveau suivant, qui est une porte de sortie des scripts du joueur. Donc, nous utilisons généralement le script de joueur pour accéder à la méthode de niveau de chargement en utilisant une certaine touche ou le bouton get down ou vous pouvez faire ce que vous voulez. Donc, un petit indice, vous devez vous assurer que nous y accédons seulement lorsque nous touchons l'interactible. Donc vous devez vous assurer qu'on touche la porte avant de la chercher. Et vous devrez utiliser des objets de recherche de type, ce qui est quelque chose de nouveau. On ne l'a jamais couvert. Et je suis sûr que vous pouvez aller chercher. Il y a beaucoup de documentations à ce sujet, et c'est assez facile. Ce n'est pas si compliqué. Alors arrêtez la vidéo dès maintenant et allez-y et essayez de relever le défi. Comment as-tu réussi avec ça ? Et j'espère que ce n'était pas trop dur et j'espère que vous avez fait de votre mieux comme toujours. Alors allons dans nos joueurs corrompus et ici qui vont dans la mise à jour. Et allons de l'avant et créons un niveau de sortie. Et ce sera une nouvelle méthode que nous allons extraire. Alors allons de l'avant et générons ça. Nous, je ne pense pas que nous aurons besoin de le mettre ici, mais pour l'instant, gardons ça ici. Donc la première chose que nous devons nous assurer, c'est que nous devons nous assurer qu'il touche
réellement l'interactible avant de faire quoi que ce soit. Donc si et si notre Box Collider 2D, attendez, non. Pourquoi est-ce que je fais cette erreur ? My Box Collider 2D point touche les couches. Et quelles couches sont ceux-là ? Eh bien, ils sont les interactifs. Copions ce back-end vers Unity et fondons ça. Et oh, nous devons ajouter un masque de calque à ça. Donc, cliquez sur l'espace ou Masque de calque, point get Mask. Et maintenant, à l'intérieur de ces crochets, nous pouvons réellement coller ça. Oh, d'accord. Et nous fermerons ça, mais pas, pas, pas pour l'instant. abord, nous allons devoir annuler toute la déclaration. Donc, si nous ne touchons pas l'interactible, nous allons effectivement accéder à cette condition si et nous reviendrons, qui sortira simplement de cette méthode et ne fera rien. Qu' est-ce qu'il nous dit que quelque chose ne va pas ? Ça nous dit que nous l'avons fait, d'accord, donc j'ai besoin d'une autre parenthèse et tout va bien. La prochaine chose que nous devrons faire est que nous aurons besoin d'utiliser l'entrée multi-plateforme. Donc, si le gestionnaire d'entrée multi-plateforme point obtenir le bouton vers le bas, maintenant vous pouvez utiliser quelque chose de différent que d'être boutonné vers le bas. Peut-être que vous voulez utiliser les axes, mais je ne le recommande pas. Donc, nous allons utiliser le bouton « get down » pour l'instant. Et que devrions-nous ajouter à ce nom de chaîne ? Eh bien, je pense que j'ai l'impression que j'aimerais utiliser les entrées de la verticale. Donc, quand nous ouvrons la porte, nous pouvons réellement appuyer sur w ou nous pour sortir du niveau. Et je pense que c'est un bon moyen. Alors allons de l'avant et choisissez la verticale.
42. Menu principal et niveau de succès: Bienvenue, mes développeurs de jeux préférés. Dans cette vidéo, nous allons créer un menu principal et nous allons créer un niveau de réussite. Alors, qu'est-ce que c'est ? Donc, le niveau de succès, comme vous pouvez le voir, est un niveau bizarre. Si nous y allons, nous pouvons voir que nous avons un message de félicitations
gagnant, gagnant, et nous pouvons sauter ici. Et nous avons ce bouton de menu principal qui met en évidence chaque fois que vous passez dessus. Et si nous cliquons dessus,
il nous emmène au menu principal en bas nous a dit, et maintenant nous pouvons aussi avoir, nous avons aussi ce bouton Démarrer le jeu, qui si nous cliquons va nous emmener à notre premier niveau et la porte nous amène au niveau deux et ainsi de suite et ainsi de suite. Je suis donc très excité pour cette vidéo. J' espère, j'espère que vous l'êtes aussi, et je vous verrai dans un o, kay, alors la première chose que nous ferons est d'aller dans le menu principal et allons de l'avant et de cliquer sur notre joueur. Donc, comme vous pouvez le voir maintenant, notre appareil photo, qui est juste ici, si vous double-cliquez dessus, c'est juste ici. Notre toile est juste ici, et c'est le résultat de nous et de le déplacer dans la vidéo précédente. Alors, cliquez sur notre carte du joueur et de la tuile et cliquez sur w et déplacez cela dans notre vue juste ici. Donc, voyons à nouveau aller à la caméra, et rendons ça un peu plus grand. Donc, nous allons augmenter la taille de quatre à environ oui gros, ce qui est assez bon. Rendons-le juste un peu plus grand. Et d'accord, donc je pense que c'est parfait. Cou, remontons un peu ça. Ok, sauve ça. Et maintenant, allons de l'avant et créons un bouton. Alors, comment créer un bouton ? Bien que ce soit assez simple, nous faisons simplement un clic droit sur ici. Dans notre hiérarchie, allez à U i, et choisissez le bouton qui est juste ici. Donc, comme vous pouvez le voir en ce moment, quelque chose de très énorme a été créé juste à côté de nous. Et si on double-clique sur le bouton, on peut voir que c'est un énorme bouton géant et qu'il fait partie de la toile encore plus grande. Si vous avez remarqué que quelque chose appelé Canvas vient d'être créé, qui abrite le bouton et qui a un texte dessus, et un système d'événements. Alors que sont toutes ces choses ? Donc, la toile est en fait ce qui contient, tout ce que nous voulons imprimer sur notre écran. Ainsi, le Canvas contient le bouton, le texte et toute autre interface utilisateur que vous avez sur votre écran. Et le système d'événements est utilisé afin de vérifier n'importe quel clic sur le bouton. Alors allons de l'avant et déplacons le bouton juste ici. Et nous pouvons regarder dans notre vue de jeu, et nous pouvons voir que le bouton est juste ici. Alors faisons quelque chose de cool et mettez-les côte à côte. Donc maintenant, nous pouvons voir où les boutons. Mais comme vous le remarquez, chaque fois que nous déplacons l'écran, rendre plus grand ou plus petit, le bouton se déplace réellement. Et ce n'est pas un effet souhaitable. Donc, la façon dont nous allons changer cela,
lorsque nous allons dans le Canvas, cliquez sur Canvas et allez dans le scaler de canevas. Et au lieu de la taille constante des pixels, faites-la évoluer avec la taille de l'écran. Donc maintenant, peu importe que nous bougeons notre scène, le bouton reste à sa place. Mais comme vous pouvez le voir, c'est un mouvement un peu bizarre. Et pourquoi c'est ça ? Eh bien, si vous cliquez sur le bouton, vous pouvez voir ici qu'il ya beaucoup d'options et la plus importante pour l'instant pour la position sage, C'est l'ancre. Ainsi, l'ancre, comme vous pouvez le voir pour le bouton en ce moment, est au milieu de l'écran. Et ce que nous voulions, c'est être au milieu de l'écran. Donc maintenant, ce sera plus naturel et en fonction du mouvement du bouton. Alors personnalisons notre bouton et je vais vous montrer comment le personnaliser. Alors cliquez sur le bouton et comme vous pouvez le voir, nous avons ce rectangle ici qui nous permettra de rendre le bouton plus grand ou plus petit. Alors cliquez sur ce cercle bleu ici, maintenez Alt, et vous pouvez faire le bouton aussi grand et aussi petit que vous le souhaitez. Ensuite, nous allons changer ce bouton, ce texte de bouton. Donc si on va dans le bouton, on va la tête. Et comment devrions-nous appeler ça ? Commencez le jeu parce que c'est sur le menu principal. Et allons de l'avant et appelons aussi ce bouton Démarrer le jeu. Ok, et on appellera cette toile le OK, la toile du menu principal Cu. Et revenons dans le texte et nous pouvons changer la police du texte pour le rendre plus grand. Nous pouvons changer le style de police et nous pouvons la rendre audacieuse. Et nous pouvons aller de l'avant et changer la police entière si vous voulez y ajouter une sorte de police. Nous pouvons également changer la façon dont le texte est rendu sur le bouton. Et nous pouvons changer la couleur du texte pour le rendre vert, par
exemple, mais nous ne le ferons pas en vert. Et nous pouvons également changer l'apparence du bouton. Commençons donc à personnaliser nos boutons. Donc, la première chose que nous avons la couleur normale. Changons ça et nous pouvons choisir une couleur de notre scène. Donc, nous allons choisir cette couleur rouge ou quelque chose comme ça. Je ne suis pas sûr. Vous pouvez modifier les couleurs en surbrillance. Donc, lorsque notre souris se déplace sur ce bouton, il sera mis en surbrillance. Donc nous allons changer ça pour être jaune. Allez-y et choisissez un peu de coloration ici. Donc, ce jaune, et il est très agréable de faire toutes vos couleurs sur le fond comme les couleurs de la scène, lui donne un look plus authentique. Ensuite, nous avons la couleur pressée, qui fera, voyons ce que devrions-nous faire ? Nous pouvons faire le, oui, c'est une bonne couleur. Et qu'avons-nous d'autre ? Nous pouvons je suppose que c'est fondamentalement qui va changer la couleur du texte. Et allons changer la couleur parce que je n'aime pas le savant alloué. Choisissez une couleur peut être, ce sera la couleur des carreaux, par
exemple, pas le bon. Changeons. Encore une fois. Nous choisirons une sorte de bouton jaune. Ok, je suppose que c'est assez bon. Ça n'a pas besoin d'être parfait. Pour l'instant, il doit fonctionner. Alors maintenant, vous savez comment ajouter un bouton qui est réinitialiser cela et choisir le puissant et vous pouvez changer la position de ce bouton. Je vais le mettre en haut, au milieu. Donc, si nous allons en mode jeu et attendre qu'il le comprenne. Mais maintenant, comme vous pouvez le voir, nous pouvons cliquer sur le bouton là-haut pendant que nous nous déplacons dans notre scène. En fait, nous allons rendre cette vue de jeu plus grande et la réduire afin que vous puissiez tout voir. Donc maintenant, nous avons un bouton sur lequel nous pouvons survoler. Et je pense que nous devons changer la couleur du jeu de départ et nous pouvons cliquer sur COOH. Maintenant, nous devons commencer à ajouter des fonctionnalités. Ok, donc on ne veut pas juste un bouton qui ne fait rien. On avait besoin de faire des trucs. Et la façon dont nous allons y ajouter des choses est, eh bien, vous l'avez deviné que nous allons y ajouter un script. Donc, si nous faisons défiler vers le bas, nous pouvons réellement ajouter des composants au bas. Alors continuons et ajoutons le composant, et nous appellerons ce menu, et nous allons créer un nouveau script de menu. Donc, créez et ajoutez et attendra. Et on va l'attendre. D' accord ? Maintenant, nous allons dans les actifs. Nous mettons le menu à l'intérieur des scripts. Et à partir des scripts, nous allons de l'avant et aller au menu. Bon, maintenant on a un script de menu. Supprimons tout ici parce que nous n'aurons pas besoin ni de ceci ni de la mise à jour. Ce que nous aurons besoin car nous aurons besoin de ce bouton, comme vous l'avez déjà deviné, nous avons besoin, chaque fois que nous cliquons sur le bouton, nous voulons commencer le jeu. Cela signifie que nous allons passer au niveau un. Et cela signifie que nous aurons besoin de charger des scènes, et cela signifie que nous aurons besoin de nos directeurs de scènes. Alors allons de l'avant et ajouter en utilisant Unity Engine dot sin management. Maintenant, nous pouvons utiliser des scènes. Alors allons de l'avant et créons notre première méthode. Et ce sera une méthode très simple qui va être nulle. Et cette méthode va charger le premier niveau. Ok, rien de fantaisie. Et qu'est-ce qui va juste à l'intérieur de lui ? Nous allons simplement essayer de charger le niveau 1, quel que soit ce niveau. Donc, nous allons avoir besoin de voir la scène habillée par un point de directeur. Et nous allons simplement écrire ici l'index de la première scène, qui est une. Ok, parce que nous sommes actuellement sur le menu principal, nous sommes à voir 0. La prochaine chose. Pour ajouter cette fonctionnalité à notre bas, nous devons retourner dans Unity et nous devons cliquer sur notre bouton. Et ici, vous pouvez voir que nous avons quelque chose appelé On Click, et actuellement la liste est vide. Alors, cliquez sur le plus. Et cela donnera un, comment devrais-je l'appeler une, une mission pour le bouton quand jamais la semaine ? Donc, comme vous pouvez le voir ici, nous devons y ajouter un objet. Et cet objet fera simplement glisser le bouton et ce sera le jeu de départ. Et actuellement, nous n'avons aucune fonction. Donc, si je clique dessus et aller dans le menu, nous pouvons voir ici que nous devrions avoir. Où est-il ? Je me demande où c'est. Ok, ok, ok, donc on doit s'assurer que c'est une méthode publique. Alors, sauvegardez ça. Et maintenant, si nous retournons dans notre bouton, nous devrions voir ici sur le menu que nous avons la charge premier niveau. Alors, sauvegardez ça. Et allons dans le gameplay. Et deux sont venus en mode. Et maintenant, nous pouvons courir, nous pouvons frapper et si nous cliquons sur le jeu de départ, nous entrons immédiatement dans notre niveau un. Et si on passe la porte quelques secondes plus tard, on est au niveau 20, Kay Caret. Donc, maintenant, ce que vous devez faire, c'est que vous devez relever le défi. Et votre défi sera de créer votre niveau de réussite. Utilisez donc la même formule que nous avons utilisée pour le menu principal pour créer l'écran de succès. Donc, vous devrez ajouter un bouton et peut-être une sorte de texte au-dessus. Et je vais vous donner un indice. Les seules modifications que vous devez apporter sont à la charge de point du gestionnaire de scène C. Donc, faites la même chose pour le niveau de succès avec son propre bouton. Mais les seuls changements vont être deux scripts. Et vous pouvez même utiliser le menu pour charger le menu principal. Seulement changer nous devons être à la charge de point gestionnaire de scène C. Donc, pause la vidéo tout de suite et aller faire le défi. Kay, bienvenue. Alors allons de l'avant et créons notre succès Green. La première chose va aller dans vu prendra le menu principal et nous allons le dupliquer. Donc maintenant, nous avons le menu principal et le menu principal, un qui a changé son nom en niveau de succès. Maintenant, nous avons un niveau de réussite. Double-cliquez sur le niveau de succès, et c'est assez similaire à notre menu principal, et c'est le point. Donc, nous allons tout d'abord changer le canevas à succès, niveau canevas. Et le bouton Démarrer le jeu sera maintenant le bouton Menu principal. Parce qu'une fois que nous avons terminé le jeu et que
nous allons au niveau de succès, nous voulons alors avoir un bouton pour nous ramener au menu principal. Et maintenant, allons de l'avant et textons, et changeons le texte en Menu principal. Oh, ok, super. Je ne pense pas que nous aurons besoin de changer la couleur du bouton et tout ce qui le gardera la même chose. Mais ce que nous allons faire, c'est que nous allons ajouter du texte. Ce qui dira à notre couche qu'il en a une. Donc, comme vous pouvez le voir ici, nous avons ce texte et il est petit et ici. Et au fait, pourquoi ils font le campus si grand ? Eh bien, je ne suis pas sûr à 100%, je vis les ressources dans la description de la toile. Mais je crois que c'est un moyen pour l'unité de garder les choses organisées. Parce que si vous, par exemple, voulez changer les choses dans notre scène ici, il peut être un peu encombrant de déplacer des boutons autour d'eux, mettre du texte dans des endroits, dans des endroits bizarres. Et c'est aussi un moyen pour l'humanité d'utiliser des mesures ou quelque chose comme ça, mais ce n'est pas si mal, donc pas besoin de s'en soucier. Allez-y et changez le texte ici et nous appellerons ce gagnant. Gagnant avec deux points d'exclamation. Et nous allons rendre cela un peu plus grand et nous allons aligner le texte d'une manière différente, augmentera la taille de la police. Ok, c'est trop gros. Et nous rendrons la couleur du texte jaune. C' est comme un trophée qu'ils veulent. Et maintenant, nous allons le rendre audacieux. Et nous allons centrer. Tu sais quoi, je vais rendre ça encore plus grand et augmenter la taille de la police. Oh, ok, cool. Maintenant, nous avons un gagnant, gagnant. Chaque fois qu'un dîner de poulet, si vous jouez Bob G. Alors maintenant le texte sera quand sont taxés ? Non, supprimons la majuscule quand notre texte. Et que devrions-nous faire d'autre ? Oh, oui, maintenant nous devons faire en sorte que ce bouton du menu principal prenne vraiment oh, et encore une chose, excusez-moi. Alors va ancrer ce
gagnant, vainqueur au sommet ? Correct. Ok, où étais-je ? Ok, nous devons ajouter une fonctionnalité différente au menu principal. Donc, au lieu de nous prendre pour charger le premier niveau, nous devons maintenant le faire prendre au principal. Et comme je vous l'ai dit, le seul changement et c'est la charge de scène de 2pi. Donc vu niveau de charge. Alors revenons en arrière et continuons et créons une nouvelle méthode ici. Nous allons le rendre public, annuler et charger le menu principal. Et la seule chose qui va changer, ce sera la même chose. Donc vu gestionnaire de charge point vu à l'heure actuelle au lieu d'un, va simplement charger le 0 et enregistrer cela. Et une autre chose que nous devons nous assurer est que nous devons au niveau de succès à notre intégré. Donc, comme vous pouvez le voir, nous avons le menu principal, non nul niveau un sur un, niveau deux sur deux, et maintenant réussi à enregistrer cela. Et I. Une autre chose que nous devons revenir au bouton Menu principal et assurez-vous qu'au lieu de la fonction qui charge précédemment chargé premier niveau,
ok, d'abord est écrit de manière incorrecte. Donc, d'abord, J'espère que personne n'a remarqué que, sauf cela, revenir en arrière et il devrait se réparer. Non. C' est au fait, nous devrons le changer. Donc, au lieu du premier niveau de charge, nous devons aller à Menu et nous devrons charger Menu principal et enregistrer cela. Revenons dans le menu principal et assurez-vous que tout est correct. Donc, le bouton Démarrer sur le menu clic. La fonction est charger de premier niveau, enregistrez cela, revenez au niveau de succès, et jouons et voyons ce qui se passe. Donc, notre joueur se déplace autour, il frappe, il saute, et le menu principal, si nous cliquons sur le bouton, il devrait nous conduire au menu principal. Et si nous commençons la partie, nous commençons au niveau 1. Excellent. Une autre chose que nous devons faire, modifions le niveau de succès juste un peu pour nous assurer que le joueur comprend que nous sommes dans un endroit différent. Alors retirons simplement les feuilles ici. Et allons au premier plan. C' est les enlever. Et ajoutons quelque chose de cool. Supprimons l'arrière-plan ici. Et nous allons cliquer sur celui-ci en arrière-plan. Et dessinons quelque chose comme ça. Donc juste un peu d'arrière-plan. Et revenons au premier plan. Et nous allons simplement ajouter celui-ci ici et celui-ci juste ici. Et cela devrait donner le sentiment d'être un niveau infini. Donc maintenant, si nous gardons ça, si nous passons en mode jeu, nous pouvons voir ça, ok, c'est comme si le jeu était infini et si nous sautons ici, nous pouvons partir, ce qui est très cool. Et si vous voulez jouer avec des choses, vous pouvez réellement faire, ajouter un collisionneur de boîte à ce bouton et le joueur peut se tenir sur le bouton,
puis cliquez sur Menu principal, puis démarrer le jeu et puis jouer au jeu. J' espère que vous avez apprécié la vidéo. Ce n'était pas une vidéo très dure, c'est facile, c'est juste à propos de l'interface utilisateur. Vous pouvez aller de l'avant et expérimenter et ajouter ce que vous voulez. Amuse-toi bien, et je te verrai dans la prochaine vidéo.
43. Session de jeu: Revenez mes développeurs de jeux préférés à une toute nouvelle vidéo. Et dans celui-ci, nous avons ajouté de la pression. Qu' est-ce que je veux dire par pression ? On a été touché plusieurs fois et on n'est pas morts. Mais maintenant, comme vous pouvez le voir, on se fait frapper une fois. Si nous essayons de recommencer, nous serons frappés deux fois. Si nous essayons de le faire à nouveau, la troisième fois, nous sommes de retour au menu principal, donc nous n'avons plus de vies infinies. Et cela met le joueur, celui qui joue à votre jeu sous pression. Alors entrons et commençons. Ok, donc nous voulons commencer à gérer nos vies de conquérants. Ce que nous allons faire, c'est que notre conquérant a un certain nombre de vies. Et quand il est touché, il perd vivant. Et finalement, quand il n'a plus de vies, nous allons redémarrer le jeu à partir du menu principal. Donc, actuellement, si nous sommes frappés 100 fois, nous allons continuer à jouer, ce qui n'est pas très bon parce qu'il
n'y a pas de conséquences à l'obtenir et supprime toute pression du joueur, ce qui est en fait mauvais, croyez-le ou non. Donc, vous vous demandez peut-être, pourquoi ne pas simplement utiliser le joueur et pourquoi avons-nous besoin de quelque chose appelé une session de jeu ? Eh bien, quand on va de scène en scène, notre joueur est rétabli et tout le reste avec lui. Cela signifie que tous les progrès sur le joueur et d'autres objets ont disparu. Le problème que nous avons est que chaque fois que nous allons d'une scène à l'autre, par
exemple, du niveau un au niveau deux, tous les objets du jeu sont rétablis. Donc, s'il vit, sont stockés sur le joueur ou le score, ce qui est beaucoup plus important, stocké sur le joueur ou tout autre objet de jeu. Ce joueur est réinstancié et toute la progression sur ce joueur est réinitialisée. Ainsi, par exemple, si notre joueur a 400 score ou a trois vies et perd deux d'entre eux quand il va dans la scène suivante, ou le niveau de sa vie sont réinitialisés à trois, ce qui n'est pas bon, et son score est de retour à 0, ce qui est également très mauvais parce que nous voulons qu'il ajoute des niveaux. Je veux dire, ajouter le score d'un niveau à l'autre. Notre objectif est donc de garder les vies de couches et les scores d'une scène à la scène suivante cohérents. Et nous le faisons en utilisant quelque chose appelé l' objet de session de
jeu qui conservera toutes les données persistantes, telles que Vies et score, que nous ajouterons plus tard, et cetera. Alors allons de l'avant et créons une session de jeu. Et c'est en fait extrêmement simple. Nous allons simplement créer un objet de jeu. Nous allons le réinitialiser, sa position, et nous allons appeler ça la session de gain. Ok, la prochaine chose que nous ferons est d'ajouter un script qui sera gagné session, et ça s'appellera session de jeu. Alors allez-y et créez et ajoutez cela. Super. Donc maintenant, nous avons la session de jeu juste ici dans nos atouts. Faites-le glisser et placez-le dans des scripts. Et allons-y et ouvrons-le dans Visual Studio. Double-cliquez sur la session de jeu, et maintenant nous avons le script de session de jeu. Que va-t-on faire en premier avec notre script de session de jeu ? Eh bien, la première chose que nous ferons est supprimer le début et la mise à jour parce que nous n'en aurons pas besoin. Et nous allons en fait ajouter une méthode que nous ne connaissons pas très bien parce que nous ne l'avons pas déjà fait ou avant, qui s'appelle Awake. Et ce qui est éveillé, c'est une méthode qui commence avant même que la méthode start commence. Donc, comme je vous l'ai appris dans les vidéos précédentes et les intros et un notre cube de jeu magique, la méthode de démarrage est la première méthode qui est exécutée. Mais l'éveillé, quelque chose qui commence bien avant le début. C' est donc la première chose qui s'exécute, ou le premier code qui est exécuté dans l'ensemble du script est à l'intérieur de la méthode awake. Et pourquoi avons-nous besoin de se réveiller ? Eh bien, parce que nous allons créer un modèle singleton. Cela signifie que s'il existe déjà une session de jeu, chaque fois qu'une nouvelle est instanciée, elle se détruit. De cette façon, il ne sera pas instancié et restera persistant à tous les niveaux. Ce que je veux dire par là, c'est que chaque fois que nous allons dans un autre niveau, ce script de session de jeu va chercher toutes les autres sessions de jeux à l'intérieur de la scène suivante. S' il trouve une session de jeu, il la détruira et restera persistante. Et allons de l'avant et créons ce modèle singleton et vous verrez ce que je veux dire. Donc la première chose que nous devons faire est trouver toutes les sessions de jeu dans cette scène chaque fois que nous nous réveillons. Nous allons donc créer un entier, qui sera le nombre de sessions de jeu. Et ce seront les objets de recherche. Ok, donc les objets de type gagnent session. Et parce que c'est un entier, ce sera la longueur. Donc, ce sont de bons objets de jeu de type que vous êtes assez familier avec. Pour l'instant. Nous l'avons fait dans les vidéos précédentes. Il recherche des objets de type session de jeu, et il vérifie la longueur parce que nous recherchons des objets. Maintenant, nous avons la longueur. La prochaine chose que nous ferons est que nous devrons vérifier si ce nombre de sessions de jeux, nombre de sessions de jeu est supérieur à celui. Cela signifie que si nous avons plus d'une session de jeu, ce qui n'est pas celle que nous utilisons actuellement, nous allons nous détruire. Donc, cela signifie détruire l'objet du jeu. Sinon. Si nous n'avons pas de nouvelles sessions de jeux, nous utiliserons quelque chose appelé Ne pas détruire au chargement et l'objet du jeu. Ok, alors quoi, ça s'appelle le modèle singleton, et c'est assez facile. Donc, la première chose que nous avons vérifié pour les objets. Si nous avons des objets de type session
de jeu, bien sûr, alors si nous avons plus d'un. Nous allons le détruire, sinon, nous ne le détruirons pas et nous garderons la session de jeu persistante. Et nous, et si elle a des scores ou des vies, ils passeront d'un niveau ou d'une scène à l'autre. Ok, super. Donc ce que nous devons créer à l'intérieur de la session de jeu, car nous aurons besoin de créer des vies de joueur. Je veux dire, on va traiter la mort des joueurs. Allons-y et faisons-le en utilisant un public. Et parce qu'il va être utilisé à partir de différents scripts, public, vide, processus, joueur, mort. Et la prochaine chose que nous ferons est d'ajouter une variable qui sera un champ sérialisé. Ce sera un entier et ce sera des vies de couche de joueur, et il sera égal à trois. Alors, que pensez-vous que nous devrons faire à l'intérieur des acteurs du processus ? La mort ? On va devoir faire deux choses. abord, nous devrons vérifier si notre joueur vit plus d'un. Et si elle est supérieure à un, nous allons prendre la vie. Ou prendre la vie ou la vie. Donc on va prendre une vie. Sinon. Si nous n'avons plus de vies de joueur de prière, cela signifie
que nous les avons perdus tous les trois. On a été touché trois fois. Nous allons réinitialiser le jeu. D' accord ? Donc si on se fait frapper plus de trois fois, ça veut dire qu'on perd tout ça. Nous allons réinitialiser le jeu et si nous avons encore une vie, donc si nous avons trois vies, nous avons été touchés une fois. Cela signifie que la vie des joueurs sera deux, ce qui signifie que nous sommes encore plus grands qu'un et nous allons prendre une vie. Allons de l'avant et créons ces deux méthodes. Donc, la première chose que nous ferons est de générer le jeu de réinitialisation et de générer la méthode. Et que devrions-nous faire à l'intérieur du jeu de réinitialisation ? Bien que nous ayons besoin d'amener le joueur au menu principal, cela signifie
que nous devrons utiliser le gestionnaire de gestion de la scène, gestionnaire. Donc, en utilisant Unity moteur point vu gestion. Et nous sommes assez familiers avec ce que nous allons faire. Donc ça va être la scène de chargement de points du gestionnaire de scène. Et parce que c'est le menu principal, ce sera 0. Et une autre chose que nous allons faire est de
détruire l' objet du jeu actuel. Pourquoi c'est ça ? Nous allons détruire la session de jeu que nous utilisons actuellement. Parce que, comme vous le savez, si nous perdons le jeu, nos vies seraient réinitialisées, bien sûr, et notre score sera également réinitialisé. Donc cette session de jeu en cours sera détruite et nous allons créer un nouveau coup d'Etat. Et la prochaine chose que nous allons avoir à prendre des vies, ce qui est votre défi. Et votre défi est de finir la méthode des vies de bande. Donc, vous devez réduire la vie des joueurs d'un. Et puis vous devrez appeler la mort du joueur de processus à partir du script du joueur chaque fois que notre joueur est touché. Alors mettez la vidéo en pause et allez-y et faites le Challenger. Oh, OK, bienvenue. Alors, comment allons-nous faire ça ? Tout d'abord, nous allons générer les vies et la méthode de prise de vies. Et c'est assez simple parce que tout ce que nous allons faire est que nous allons simplement taper ici, joueur vit et sera juste à côté de lui
moins, moins, et ce que cela fait. Et chaque fois que la méthode de prise de vie est appelée, les vies du joueur seront réduites d'un. Donc, chaque fois que nous écrivons moins à côté d'une variable, il le réduira d'un si c'est un entier et si nous écrivons plus à côté de lui, donc plus, plus cela augmentera la vie du joueur d'un. Nous allons l'utiliser plus tard pour l'instant, nous avons besoin du moins, moins. Enfin, chaque fois que notre joueur est touché devra
appeler les sessions de jeu, traiter la mort du joueur. Et la façon dont nous allons le faire est que nous allons entrer dans le joueur, va chercher le joueur touché. Et après avoir déclenché l'animation et s'être blessé. Ou vous pouvez le mettre où vous voulez. Ça n'a pas d'importance. Trouve des objets de jeu, gain objet parce que nous aurons un objet qui est session de jeu et arsine. Et nous allons utiliser la mort du joueur de processus. Et cela va vérifier pour la session de jeu. Il trouvera la session de jeu. Il accèdera à la mort du joueur de processus. Et dans le processus joueur fait. Nous vérifierons si les vies du joueur sont plus grandes. Alors un, si c'est le cas, nous prendrons une vie. Si ce n'est pas le cas, nous réinitialiserons le jeu et notre joueur reviendra au menu principal. Donc ça, nous avons sauvé tout ça. Revenons dans notre gain d'unité. Sauvez tout ça. Dans la session de jeu, nous avons des vies de joueurs, alors nous allons cliquer sur le jeu et voir ce qui se passe. Donc notre Cochon est en cours d'exécution, allons-y et on se fait frapper une fois. Donc, le joueur vit est encore plus grand qu'un. On se fait frapper deux fois. Notre joueur vit est une et dernière fois que nous sommes touchés. Et serons-nous dans la scène du menu principal. Excellent, donc tout fonctionne bien. J' espère que vous avez apprécié la vidéo. J' espère que vous n'avez pas trouvé ça trop compliqué, surtout si vous êtes nouveau dans le modèle Singleton. Quoi qu'il en soit, j'espère que tu l'apprécieras encore et je te verrai ensuite. Une autre chose que nous devons faire pour prouver que notre session de gains est persistante d'une scène à l'autre, c'est que nous aurons besoin de voir si nos vies de mensonge de joueur changent réellement. Si on passe à un autre niveau. Pour ce faire, nous devrons ajouter une session de jeu au niveau 2. Et comme nous le savons, la façon la plus simple de le faire est de le préparer. Il suffit donc de le faire glisser dans le dossier Prefabs juste ici. Et nous allons aussi faire glisser la porte de sortie parce que nous sommes déjà dans les préfabriqués. Alors sauvegardez cela, puis allez dans les scènes et vérifiez le niveau 2. Double-cliquez sur le joueur juste le voir et revenir dans les réverbérations et mettre une session de jeu juste ici et le niveau pour enregistrer cela. Alors maintenant testons et voyons si cela a fonctionné. Revenez donc au niveau un, double-cliquez sur la carte de tuiles car elles sont dans des positions différentes. Donc, nous allons cliquer sur jouer et voyons se faire frapper une fois. Et comme vous pouvez le voir ici, la session de jeu est sous ne pas détruire en charge. Il comprend donc qu'il ne doit pas être détruit. Donc maintenant, nous avons des vies de joueur à, passons par la porte dans le deuxième niveau. Et au niveau 2, nous avons la session ne pas détruire onload est venu. Et comme vous pouvez le voir, nos vies de joueurs sont toujours aussi et ils n'ont pas été réinitialisés, ce qui est extrêmement utile. Et vous verrez pourquoi quand nous créons aussi la partition.
44. Choisissez des coins et des diamants: Bienvenue dans une autre vidéo et celle-ci, comme vous pouvez le voir, nous avons des diamants et nous avons des cœurs. Donc, si nous cliquons sur le jeu, nous pouvons toujours marcher, nous pouvons frapper, mais si nous choisissons les diamants et les coeurs, nous pouvons les ramasser et les diamants brillent en fait. Alors ne perdons plus de temps et commençons. Ok, donc la première chose que nous ferons est d'aller dans le dossier des sprites et de créer un dossier ici, qui s'appellera les ramassages. Ok, cool. Maintenant, allons dans les ressources et chercher les gros diamants et grosses huttes que je vous ai fournies et rangez-les à l'intérieur des micros. La prochaine chose que nous allons faire est de couper les diamants parce que nous avons une animation cool sur eux. Alors faisons ce 28 parce qu'ils sont très petits, rends-le multiple. Appliquez cela, passez en mode sprite et découpez-les. Nous allons utiliser la grille par taille de cellule et ils devraient être, je pense que 18 par 1418 par 14, Oui, c'est 18 pixels par 40 pixels. Appliquer qu'ils étaient parfaitement. Maintenant, allons dans les animations et aussi créer un dossier qui est des sauvegardes. Donc les micros. Et revenons dans les sprites dans le, où sont les micros ? Et allons de l'avant et créons ces animations. Et cette animation est en fait un diamant brillant. Shining sera le nom des animations. Glissez-le dans les micros. Et à partir d'ici va créer un animateur. Donc, le contrôleur de l'animateur sera diamant. Et à l'intérieur de ce contrôleur animateur va mettre en place l'état brillant. Correct ? Et encore une chose, nous devrons nous assurer qu'il est en boucle. Sauve ça. Maintenant, la prochaine chose que nous ferons, restez le joueur loin d'ici, mettez-le sur ce rebord. Ensuite, nous allons créer un objet de jeu. Donc l'objet de jeu vide va réinitialiser et le mettre ici, et nous appellerons ça le diamant. Diamant. J' espère que c'est correct. La prochaine chose que nous ferons est d'ajouter un moteur de rendu sprite. Donc vous êtes assez familier avec les étapes, j'espère. Et à l'intérieur des micros sprites, le diamant, mettons simplement le premier et toujours nous ne le voyons pas. Pourquoi c'est ça ? C' est à cause de ces calques de tri. Et sont les diamants et les coeurs seront interagir bulles. Maintenant, nous pouvons les voir. Et aussi la couche sera l'interactible. Ainsi, le tri de la couche et la couche physique de la couche seront interactifs. La prochaine chose que nous ferons et ferons cela dès maintenant pour nous économiser beaucoup de temps, nous allons simplement préfabriqué le oh, avant de faire cela, nous devons ajouter. La, Attendu que l'animateur à notre diamant. Et maintenant on peut aller dans le dossier préfabriqué et faire glisser le diamant ici. Et nous pourrons ajouter à trois diamants. Combien nous, combien notre cœur désire. Ajoutez donc autant de diamants que vous voulez à la scène. Sauve ça. La prochaine chose que nous ferons est d'ajouter un comportement à notre diamant. Comme vous le savez, quand les jeux, chaque fois que nous touchons un diamant, nous le ramassons et il disparaît. Donc, c'est un script de ramassage de diamants. Donc, le script de ramassage de diamant crée un nouveau script, il s'appelle le ramassage de diamant. Et créons une annonce. Oh, ok, donc c'est prêt. Allons dans les actifs et mettons le pick-up de diamant à l'intérieur des scripts, s'ouvre. On n'en a pas besoin. Et allons-y. Attendu qu'il ramassage Diamond double-cliquez et nous avons commencer et mettre à jour. Nous n'avons donc pas besoin de ces démarrer et de mettre à jour en ce moment. Si nous en avons besoin, nous pourrons toujours les créer plus tard. Sauvegardez ça et c'est l'heure de votre défi. Et votre défi est de détruire le diamant. Donc, quand notre joueur touche le diamant, il est détruit et détruit immédiatement. Donc ça devrait être détruit. Donc le diamant est détruit immédiatement dès que notre joueur le touche. J' ai donc quelques astuces, mais si vous êtes assez confiant, je veux que vous mettiez la vidéo en pause et que vous partiez pour relever le défi. Si ce n'est pas le cas, si vous sentez toujours que vous avez besoin d'un peu d'événements, je vous le donnerai. Ajoutez donc un collisionneur, assurez-vous qu'il s'agit d'un déclencheur et utilisez le déclencheur. Entrez, bien sûr, entrez 2D pour détruire le diamant. Alors pause la vidéo maintenant vous avez toutes les mains et c'est très facile. Allez-y et faites le défi. O Kay, bienvenue. Donc, avant de commencer à jouer dans le script, nous devons aller dans Unity et nous aurons besoin d'aller dans le diamant. Et nous devrons ajouter un composant qui va être un collisionneur de boîte à D. Et c'est un peu plus grand que ce dont nous avons besoin. Alors allons de l'avant et éditons le collisionneur de boîte et faisons-le, oui, grand, espoir. Retournez en arrière, choisissez Collider. Et faisons-le comme ça. Peut-être un oui, un peu plus grand pour remplir le sprite de diamant entier. Alors pourquoi avons-nous préféré bien, parce que pour l'instant ce diamant n'a pas de collisionneur de boîte, donc nous allons tout appliquer. Et maintenant ces diamants, tous ont une boîte appelée lidars. Une autre chose pour organiser notre hiérarchie ici et pour ne pas la rendre beaucoup encombrée, va créer un objet de jeu vide et nous allons le réinitialiser et nous l'appellerons les micros. Alors ramasse. Et nous mettrons tout notre diamant. Et les cœurs plus tard à l'intérieur des micros, Qu. Donc maintenant nous avons nos diamants avec la boîte de collisionneur est o à une autre chose, nous devons en faire un déclencheur. Alors faites-en un déclencheur et surmonté par tous, sauvegardez ça. Revenez maintenant dans Visual Studio. Et comme je vous l'ai dit, va utiliser quelque chose appelé sur quoi ? Non. Qu' est-ce que c'est ? Désolé pour ce Visual Studio sur le sucre, entrez dans D. Et c'est très, très, très simple. Nous avons simplement besoin de détruire l'objet du jeu. Alors conservez ça dans Unity. Bonne chance peut jouer. Et maintenant, si on saute sur un de ces diamants, ça ne disparaît pas. Pourquoi c'est ça ? Voyons donc quel est le problème. Et ici, nous détruisons quand nous ne sommes pas du sucre, entrez dans D, c'est des ramassages à la demande. Qu' est-ce qui se passe ? Oh, attends, oh mon dieu. On n'a même pas ajouté le script. Alors allons de l'avant et ajoutons le script d'ici, deux diamants. Et maintenant, j'espère que si nous appliquons tout
cela, cela devrait s'appliquer à tous nos diamants. Oh, celui-là en a trois. Nous aurions dû l'appliquer à partir d'ici. Pas de soucis, il suffit de l'enlever. Et maintenant, si nous sauvegardons cela et nous cliquons sur le jeu, j'espère qu'ils disparaîtront. Et comme vous pouvez le voir, il n'y a plus de diamants sauf ici. Allons-y. Encore un diamant. On y va et les micros sont maintenant vides. Cooh, maintenant la prochaine chose que nous allons faire, c'est le cœur et c'est ton défi. C' est un défi supplémentaire effronté, c'est de faire exactement les mêmes quatre coeurs. Donc, vous avez tout dans vos compétences que vous avez besoin pour relever le défi. Alors allez-y et faites-le. Suspendre la vidéo. Oh, ok, donc juste comme on a fait les diamants, on est, on va faire les cœurs. Voyons où nous avons les sprites pour les micros. Les cœurs. Ça va être 28, ça va être multiple. On va appliquer tout ça. Nous allons utiliser ce moteur de rendu de sprite. Je crois qu'il sera aussi 18 par 14, j'espère. Oui. C' est un mensonge que j'espère que vous avez fait de votre mieux et que vous défiez parce que c'est assez facile et nous le faisons depuis. Dieu sait combien lentement, combien de temps. Donc animation. Et le cœur est, comment devrions-nous appeler ça rebondissant. Donc, rebondissant dans les micros, foo, dans les micros, et à l'intérieur des micros, créons un autre contrôleur d'animateur appelé hots. Capitalisez ça, hots. Même si c'est un peu chaud. Si brillant, non, ne brille pas, rebondissant à l'intérieur des cœurs. Nous avons l'état rebondissant. La prochaine chose que nous allons faire est de créer un vide,
non, nous allons simplement dupliquer ce diamant. Et nous appellerons ça cœur ou cœur. Et nous avons le même collisionneur de boîte. Mais maintenant, mettons-le ici. Le moteur de rendu de sprite sera un cœur. Alors on va lui donner un coeur. Et ça va avoir, quoi d'autre devrions-nous avoir ? L' animateur devrait être différent. Alors allons dans les micros de l'animation et donnons-lui le cœur. Animateur. Que devrions-nous faire d'autre ? Le collisionneur de boîte, je pense qu'il est parfait. Et il supprimera le composant de pick-up de diamant et nous ajouterons un autre composant qui va être le cœur. micros. Ramassez, récupérez, créez un nouveau script et créez une application. Maintenant, assurez-vous de ne pas appliquer ça parce que nous aurons besoin de faire un préfabriqué. Alors, allons dans nos préfabriqués et ajoutons le cœur. suffit d'obtenir le cœur et de le faire glisser et il vous demandera de, si vous voulez créer un préfabriqué original ou une variante de ce préfabriqué, il suffit de cliquer sur préfabriqué original, et maintenant nous avons des coeurs. Allons donc dans les actifs et ajoutons les scripts de ramassage du cœur. Voyons ce qu'on devrait faire d'autre ? Je pense que tout est génial. Quoi d'autre ? Ok, on a le collisionneur. Nous avons le collisionneur comme déclencheur, retour aux scripts dans le cœur. Alors que le pick-up chaud, et tout comme nous l'avons fait exactement la même chose sur le sucre entrer pour l'instant, va simplement détruire l'objet du jeu. Cool. Revenons donc dans notre unité. Allons dans les préfabriqués. Nous n'avons pas besoin de dupliquer, il suffit de retourner dans les préfabriques à ce cœur juste ici. Et on va ajouter un cœur, non ? Ou, ok, pas de soucis. Mettez des coeurs sur les micros. Maintenant, nous avons deux cœurs à nouveau. Troisième cœur. Pourquoi ne change-t-il pas les noms ? Je ne pense pas que ça compte. Sauve ça. Cliquez sur jouer et nous devrions maintenant avoir les coeurs disparaissant et D diamants disparaissant. Donc pour l'instant, rien ne se passe. Plus tard, nous allons créer une partition et nous allons créer une vie. Et chaque fois que nous prenons les diamants sont score augmente et chaque fois que nous prenons le cœur, nos vies augmentent. J' espère que vous avez apprécié la vidéo. J' espère que vous avez fait de votre mieux pour relever les défis et je vous verrai dans le prochain.
45. Ajouter des effets du son (SFX): Bienvenue, mes développeurs de jeux préférés. Dans cette vidéo, nous allons ajouter des sons à notre jeu. Donc non seulement nous ramassons les coeurs et les diamants, mais aussi nous avons un son. Et si on ramasse le diamant, on a un autre son. Je suis donc très excité pour cette vidéo. C' est une vidéo très cool, saveur des
annonces à notre jeu et le rend tellement plus authentique. Alors commençons. Nous allons donc ajouter des effets sonores, ce qui est très cool. Mais le problème avant de commencer, c'est que
j'ai remarqué un petit problème, c'est que nos cœurs ne rebondissent pas quand nous cliquons sur le jeu. Seul le diamant brille ou les coeurs, au moins les deux rebondissent. Et c'est un problème très simple à résoudre. Vous avez juste besoin d'aller dans l'animation, rebondir et vous assurer qu'ils sont en boucle. Donc ils sont en boucle, donc nous cliquons sur le jeu et maintenant nos limites dures et sont les diamants brillent. Mais en ce moment, si nous les ramassons, ils disparaissent tout simplement et nous devons ajouter des effets sonores pour les rendre beaucoup plus cool. La façon dont nous allons le faire est de jouer un clip sonore chaque fois que nous ramassons les coeurs sur les diamants. Mais nous avons un petit problème. Et le problème est que si nous allons dans nos diapositives ici, notre problème est que l'effet sonore jouant sur l'objet diamant sera détruit, qui signifie qu'il cessera de jouer quand cette fois et aura la paille. Donc, comme vous vous en souvenez, nous avons mis à l'intérieur de notre propre déclencheur entrer 2D que l'objet sera détruit. Et chaque effet sonore qui joue pendant cette destruction sera également détruit et s'arrêtera de sorte
que, c'est un énorme problème. Alors, quelle est notre solution ? Eh bien, nous allons utiliser quelque chose appelé clip public usagé au point. Et je vous ai laissé la documentation dans les ressources et nous allons vérifier tout de suite. Donc, fondamentalement ce que cela fait, c'est qu'il crée une instance audio de notre effet sonore indépendante de l'objet du jeu d'où il vient, ce qui est parfait pour dans notre cas. Allons donc dans la documentation Unity et voyons ce qu'est le clip de lecture au point. C' est donc une méthode de vide statique publique qui prend trois variables. Je suis trois paramètres. Et nous allons nous concentrer sur le clip, qui est notre clip audio. Et on va se concentrer sur la position. Le volume n'est pas un gros problème. Donc, si vous lisez la description ici, vous pouvez voir qu'il joue un, un clip audio à une position donnée dans l'espace du monde. Donc, cette fonction crée une source audio, mais en dispose automatiquement,
veut couper a terminé la lecture. Et c'est parfait pour nous. Comme vous pouvez le voir ici. Est-ce ainsi que vous créez une variable qui est un clip audio. Vous lui donnez un clip, puis vous utilisez cette source audio. Clip, jouer clic au clip, au point, et vous lui donnez le clip et une position à jouer. Alors allons de l'avant et essayons de faire les effets sonores. La première chose que nous allons faire est d'ajouter un clip audio. Donc si nous allons ici et deux coeurs, micros de
diamants, faisons d'abord les diamants. Allons de l'avant et stérilisons un champ. Et ce champ va être un clip audio. Donc clip audio, et on l'appellera Diamond. Ramassez comme fx, ce qui signifie effet sonore. Sauvegardez ça. Alors maintenant, nous retournons dans l'unité. Nous retournons à Unity, et nous allons dans les diamants. Et maintenant, nous pouvons voir que nous avons un endroit pour mettre notre clip audio. Mais quels sont nos clips audio ? Allons donc dans les actifs et faisons la meilleure partie de la création de projets. Et il est droit ici. Pourquoi a-t-il créé des droits ? Retournez aux actifs. Et ici c'est aller de l'avant et créer un dossier qui appellera f x, qui sont nos effets sonores. Et dans les ressources que je vous ai fournies avec deux clips audio, qui sont le capteur de diamant et le capteur cardiaque. Cliquez donc sur ceux-ci et faites-les glisser dans l'effet sonore. Donc, si vous cliquez sur l'effet sonore et cliquez sur l'un d'eux, vous pouvez voir que c'est un clip audio et il a beaucoup de variables différentes et de choses à modifier. On peut les écouter. Donc c'est le pick-up de diamant. Je ne sais pas si vous avez entendu ça à cause du microphone, mais c'est un son assez soigné que j'ai trouvé sur Internet. Vous avez la liberté de choisir n'importe quel son que vous trouvez. Quoi qu'il en soit, allons dans le diamant, et faisons simplement glisser ce diamant comme effets dans l'audio. Et nous allons cliquer sur Appliquer tout. Et maintenant tous les diamants ont un effet sonore de pick-up sur eux. Super. La prochaine chose que nous allons faire est que nous allons réellement écrire le code pour jouer ça. Alors, allons-y. Et quand, avant de détruire l'objet, nous allons de l'avant et utilisons la même formule que celle qu'ils nous ont donnée dans la description dans les documents, les documentations de l'unité. Donc c'est une source audio. Source audio. Et puis si nous cliquons sur point, nous avons clip sur point, clip à point. Et il nous demande le clip qui est l'effet sonore du pick-up de diamant. Ensuite, il a besoin d'une position profonde. Alors, où devrait la position b ? Eh bien, si nous retournons dans Unity ici, vous pouvez voir que nous avons beaucoup d'endroits différents pour le mettre. Nous pouvons mettre soit sur les diamants déjà présents, soit nous pouvons le mettre, par
exemple, sur le joueur. Mais je vais le mettre sur la caméra et je vais te dire pourquoi. Vous avez ce petit bouton ici, qui est 2D. Si vous cliquez dessus, nous allons dans la 3D. Moule. Alors rendons cela plus grand pour que vous puissiez voir clairement ce qui se passe. Donc, comme vous pouvez le voir maintenant, c'est notre appareil photo juste ici. Et comme vous pouvez le voir, c'est un peu éloigné de notre terrain de jeu ou de notre plateforme. En fait, c'est très cool comme vous pouvez le voir, c'est notre jeu entier, mais en 3D, mais il est rendu sur un plan TD 2D. Et comme vous pouvez le voir, les diamants sont un peu loin de la caméra, tandis que notre appareil se déplace avec le joueur. Mais par exemple, disons que nous prenons le diamant et nous nous enfuyons, le son ne serait pas rendu correctement. Donc ce que je veux faire, c'est que je veux jouer le clip exactement à la position de la caméra. Et c'est vraiment très facile. La façon dont nous le faisons est de lui donner la position de notre caméra principale. Donc, il est simplement la caméra point principal, point transform, transformer la session de dotplot. Donc maintenant, nous avons un son de pick-up de diamant, le fait que joue à la position de notre caméra principale. Essayons donc de voir si ça a fonctionné. Alors cliquez sur jouer. Et maintenant vous prenez les coeurs, il n'y a pas d'effet sonore, mais si nous prenons le diamant, avez-vous entendu ça ? Alors maintenant, prenons le deuxième Diamant et nous avons des effets sonores en jouant. Donc notre jeu est beaucoup plus cool en ce moment, n'est-ce pas ? Alors je veux te montrer une autre chose. Et cette chose est la volonté d'essayer de le chronométrer correctement. Donc si on prend un diamant, accord, et qu'on met le jeu en pause, vous pouvez voir ici dans la hiérarchie que nous avons quelque chose appelé audio one-shot. Et que tout ce qu'il crée une source audio et son clip audio est le pick-up diamant, tout comme la documentation nous l'a dit. Et comme vous pouvez le voir ici, si nous cliquons sur le 2D et nous cliquons sur le seul coup, c'est sur la caméra. Donc, nous avons continué à nouveau, nous prenons un autre diamant et notre jeu comme fonction à 100% correctement. Alors la prochaine chose que nous allons faire est d'ajouter un effet sonore à notre cœur. Et c'est votre défi. Et votre défi est de jouer l'effet sonore du capteur cardiaque. Donc, quand nous toucherons notre cœur, nous voulons que le son joue et nous utiliserons la même formule que celle utilisée dans les délais d'attente. Donc je t'ai montré comment c'était fait. C' est très, très facile. Mettez la vidéo en pause dès maintenant et allez-y et faites le défi. Bienvenue de retour. Alors, comment t'es passé avec ça ? C' est assez facile. Nous allons dans les cœurs, nous faisons la même chose. Nous allons donc créer un champ sérialisé. On va en faire un clip audio. Et ce clip audio s'appellera des effets de ramassage cardiaque. D'accord ? Et à l'intérieur d'ici, nous allons créer une source audio. Et on va utiliser le jeu. Au point Clip. On va lui donner l'effet sonore du capteur cardiaque. Et sa position sera à la caméra. Le point principal transforme la position du point. Utilisez le point-virgule pour fermer tout cela, sauvegarder, retourner dans Unity. Et maintenant dans le cœur, choisissez n'importe quel cœur que vous voulez et donnez-lui les effets sonores du cœur que je vous ai fournis dans les ressources. Tout. Et maintenant, si nous gardons cela dans l'unité, cliquez sur jouer. Et maintenant, nous prenons le cœur, nous devrions entendre les faits solides. Et nous le faisons. Faisons-le encore. Et encore une fois, nous entendons le son et si nous pouvons prendre celui-ci. Maintenant, nous avons ajouté des effets sonores à notre jeu. Donc, nous avons beaucoup d'autres effets sonores que nous pouvons ajouter, ce qui est très cool et va les faire plus tard dans une autre section. J' espère que vous avez apprécié la vidéo. Cette vidéo est très cool et très agréable et elle ajoute beaucoup de saveur à notre gain. J' espère que ça vous a plu et je vous verrai dans la prochaine.
46. Vivre et Score Persistent: Bienvenue à tout le monde dans une toute nouvelle vidéo. Comme vous pouvez le voir en ce moment, nous avons un score ou 99 sur le score, et nous avons 99 sur les vies ou l'inverse. Donc, si nous cliquons sur le jeu maintenant, nous pouvons voir que nous avons trois vies et 0 comme un score pour ramasser un des cœurs. Maintenant, nous avons quatre vies, et maintenant nous avons six vies. Si on ramasse les diamants, on a 300 comme score. Et quoi d'autre ? Si on se fait frapper par un cochon ? Maintenant, nos vies sont cinq. Si nous passons au niveau suivant, nous avons des vies persistantes et un score persistant. Oh, ok, tarif fille. Donc, c'est une très belle vidéo. J' espère que ça vous plaira et je vous verrai dans un peu. Ok, donc la première chose que nous allons faire est de créer une toile juste ici qui aura un texte solide. Le clic droit va dans le u, i, et va chercher du texte. Super, donc maintenant nous avons ajouté quelques types de textes. Mettons le jeu juste à côté de notre vue juste ici pour que nous puissions tout manipuler. Double-cliquez sur les contextes, où est-il ? Et c'est très loin de chez moi. Mettons-le ici, et ancrons-le dans le coin supérieur gauche. Ce sera notre texte de vie. Et allons de l'avant et en faire 99 juste pour représenter combien de vies nous pouvons réellement avoir. Et une chose que nous devrons nous assurer que lorsque nous allons à la toile, le détartreur de
toile et assurez-vous que vous mettez à l'échelle moule est dans l'échelle avec la taille de l'écran. Oh, ok, super. Double-cliquez dessus. Retrouvons notre texte. Et on va le rendre plus grand et plus grand. Et allons-y et rendons ça audacieux. Et nous allons le rendre blanc pour le voir correctement. Ok, rendons ça un peu plus gros. Donc on va faire ça peut-être que 4545 est assez bon. Maintenant, nous avons notre mode de vie. Dupliquons cela et allons de l'avant et ancre vers la droite. Et je pense que vous avez deviné ce qu'on appellera ça. Ce ne sera pas des livestocks. Un. Ça va être notre texte de partition. Alors allons de l'avant et mets-le à droite. Et ce sera, voyons, combien. Donc je pense que ce sera par milliers, par milliers. Et je pense qu'une fois de plus suffit. Ce sera notre score. Ce seront nos amours. Super. Alors allons de l'avant et changer cette toile et faisons de cela la partition et vit Canvas. Ok, Ku, la prochaine chose que nous allons faire est d'accéder à ces deux textes de notre code. Et nous allons le faire, bien
sûr, dans toutes les sessions de jeux. Alors, allons dans la session de jeu. Et ici, nous pouvons trouver cette séance de jeux de ramassage. Donc, la façon dont nous allons ajouter ces deux textes, textes dans notre code est bien sûr en utilisant ces champs sérialisés. Et nous allons utiliser quelque chose qu'on appelle du texte. Et comme vous pouvez le voir, il fait partie du point u i du moteur Unity. Alors vérifiez ce qui va se passer ici. Supprimez simplement cela à nouveau. Ici, nous avons le moteur Unity, gestion des scènes du moteur
Unity. Et si nous écrivons du texte et que nous cliquons sur Tab, il ajoutera automatiquement cet espace de noms ou cette bibliothèque juste ici afin que nous puissions utiliser les textes. Cool. Alors allons de l'avant et ajoutons le texte de la partition. Et une petite astuce que je vais vous montrer. Si vous avez deux variables du même type, vous pouvez les mettre sur la même ligne. Alors allons de l'avant et ajoutons le texte lives. Et allons de l'avant et créons un entier qui va être le score, et nous allons le définir à 0 au début. Ok, alors sauvegardez ça. Et maintenant, ce que nous devons faire, c'est que nous devons assigner chaque texte à une certaine variable. Et la façon dont nous allons le faire, c'est que nous allons les assigner dans un début. Alors allons de l'avant et créons une méthode de départ. Il suffit d'écrire le début et de cliquer sur l'onglet et nous avons le début. Et que devrions-nous faire ici ? Eh bien, nous voulons dire le code auquel le texte de partition est affecté,
ou je veux dire que le score est attribué sur le texte de partition et que le texte de vie a la vie du joueur. Et c'est très, très simple. Donc, si nous sauvegardons cela tout d'abord, et maintenant si nous cliquons sur vies, texte de point de texte est égal à la vie des joueurs. Mais nous ne pouvons pas. Si nous fermons ceci, vous pouvez voir qu'il y a une flèche qui nous dit que nous ne pouvons pas convertir
implicitement le type int ou entier en chaîne. Donc, nous devons convertir celui-ci en une chaîne. Et nous le faisons en utilisant une méthode très simple
que Visual Studio nous dit déjà que nous devrions utiliser, qui est de chaîne. Et cette chaîne convertit simplement tout ce que nous donnons au texte en une chaîne. Et nous ferons de même pour notre partition Texte, Chanson, Score. Le texte du point de texte est égal au point de score à rétrécir. Et maintenant, si nous allons dans l'unité, a aller à l'unité. Si nous cliquons sur jouer. Mais ce jeu ici, si nous cliquons sur le jeu, nous devrions avoir ici 0 et ici le score, je veux dire le score, les vies seront trois et le score sera 0. Mais quelque chose que nous n'avons pas pris en compte, c'est qu'en session de jeu, nous ne les avons toujours pas assignés. Vit donc dans le score de livestocks et dans ces cortex. Alors cliquez sur jouer. Et on en a 30. Mais en ce moment, rien ne se passe. Et si nous sommes touchés, rien ne
se passe parce que nous n'avons toujours pas mis à jour le discours et la vie chaque fois que nous mourons. Si nous passons au niveau suivant. Rien ne se passe ici, et nous réparerons ça aussi. Revenons donc dans notre code et voyons ce que nous devons faire. Nous devons donc mettre à jour le score et les vies taxées chaque fois que nous obtenons des diamants ou nous sommes frappés au visage par les petits cochons. Alors allons-y et faisons-le. En prendre la vie, ici, nous diminuons les vies déclarées, mais nous devons également mettre à jour le texte. Il suffit de copier ceci ici. Les vies textes, textes à la chaîne copier que et le mettre juste sous les vies de joueur. Sauve ça. Et nous devrons faire la même chose avec le score d'ajout. Mais le problème est que nous n'ajoutons toujours pas de score. Nous devons donc créer une fonction ou une méthode pour cela. Allons de l'avant et le faire, rendra public parce qu'il sera accessible à partir du pick-up diamant. Donc disons le vide public. Nous appellerons ceci ajouter au score. Et nous allons lui passer un paramètre. Et ce paramètre va simplement être appelé la valeur. Et pourquoi avons-nous besoin de ça ? Parce que vous voulez peut-être que certains diamants aient une certaine valeur plus grande, ou peut-être que vous voulez avoir de petits diamants et de gros diamants. Cela nous donne donc un peu de flexibilité à notre code. Donc simplement, nous allons faire le score plus égal à la valeur. Donc ce que ce plus est égal signifie, c'est un peu comme ce score de tri, score plus valeur. Et ce que cela fait, ça augmente le score. Donc, par exemple, disons que nous avons 0, nous y ajoutons la valeur et nous la mettons à l'intérieur de score. Donc, la prochaine fois que nous prendrons le deuxième diamant, ce score sera ajouté au score déjà existant. Et parce que Unity je suis dans Visual Studio est très utile, nous pouvons simplement écrire plus égal, ce qui est exactement le même. Et avant de partir, nous devons également mettre à jour le texte de la partition. Sauve ça. Et maintenant, nous devons utiliser ce score supplémentaire dans notre ramassage de diamants. Donc ici, nous allons avant de détruire et après avoir joué un clip sur point. En fait, peu importe que nous le mettions sous destruction ou sur destruction. C' est pareil. Ce que nous devons faire, c'est que nous devons trouver l'objet de type. Et cet objet va être une session de jeu. Et dans la session de jeux, nous allons ajouter au score et nous devons passer une valeur. Alors allons de l'avant et stérilisons un champ. Parce que cela nous donne la possibilité de changer où,
quand nous le voulons, ce sera un entier et ce sera la valeur du diamant. Et pour l'instant, on va en faire 100. Et c'est tout parce que c'est un entier et nous le transmettrons dans le paramètre de score d'annonce Qu. Donc maintenant, nous avons tout mis en place. Nous avons le score, nous avons la valeur du texte. Et maintenant ce que nous allons faire, c'est nous allons tester ça et voir si ça marche. Alors, sauvegardez ça. Et maintenant, si on prend un coeur, notre score n'a pas augmenté. Je veux dire que nos vies augmentent. Si nous prenons un diamant, notre score augmente. Alors voyons ça encore. Les diamants augmentent en score. Si on meurt, on a ces deux là. Essayons encore ça. Si on se fait frapper une autre fois, on a une vie. Et si on se fait frapper une troisième fois, on recommence. Voyons pourquoi nos vies n'ont pas augmenté. Et je pense que c'est évident parce que nous n'avons pas créé de rhume qui nous donne la capacité d'augmenter nos vies chaque fois
que nous prenons un cœur, que ce sera votre défi. Votre défi est de faire la même chose pour les vies du joueur. Alors passez par les mêmes étapes pour mettre à jour nos
vies de joueurs comme nous l'avons fait pour le score et les rendre nécessaires. Petits ajustements. C' est assez facile. Il a une solution très simple. C' est exactement la même chose que de plus en plus marquer, mais comme je vous l'ai dit ici avec de petits ajustements. Alors arrêtez la vidéo dès maintenant et allez faire le défi. Kay, bienvenue. Donc c'est exactement la même chose. Ici, dans le pick-up du coeur vont trouver des objets de type. Ça va être la séance de jeu. Et nous allons ajouter ne pas marquer, mais parce que je pense que c'est toujours une école privée ici. Et on verra ce qu'on a maintenant. Nous n'avons que la vie à prendre. Nous allons créer une fonction qui est ajouter des vies. Alors créons un vide public à deux vies. Et tout simplement, nous allons ajouter le joueur plus, ce qui augmentera les vies Thayer à un. Et nous allons copier ceci et le coller juste en dessous pour mettre à jour le texte. Retourne ici, et allons de l'avant et ajoutons deux vies. Et nous n'avons pas besoin de passer un paramètre parce qu'il n'ajoutera qu'une seule vie. Alors revenons ici. Cliquez sur jouer. Et maintenant, si nous prenons un cœur, il augmente à quatre. Et si nous ramassons un diamant et augmente 100, mais nous avons un léger problème. Si on saute sur le dessus d'un cœur. Il est actuellement quatre, ça devrait être cinq, mais ça devient six. Alors, qu'est-ce qui se passe avec ça ? Nous allons corriger cela dans une autre vidéo à juste besoin d'un peu de peaufinage. Et pour l'instant, une autre chose que nous devons nous occuper, c'est si nous cliquons à nouveau sur le jeu, et par exemple, nous ramassons des diamants et n'importe quoi. Donc, le petit cochon impuissant juste là, nous ramassons une vie et un coup libre, par exemple, maintenant plus de trois fois prend beaucoup plus de temps pour nous de mourir juste pour nous assurer que nos mécaniciens fonctionnent. Comme vous pouvez le voir, nous avons été frappés plus de trois fois maintenant. C' est environ cinq fois et on peut encore vivre. Allons donc au niveau suivant et voyons ce qui se passe avec les partitions et le texte. Gardez la même chose. Non, ils disparaissent. Et c'est un problème. Quel Gibbs ? Eh bien, comme vous pouvez le voir, nos scores et nos vies ne sont pas sous le, ne le détruisez pas. Nous devons les rendre indestructibles. Et la façon dont nous le faisons, c'est que nous les enfants à la session de jeu. Donc maintenant, si nous appliquons, toute notre session de jeu aura comme un enfant, une toile d'interface utilisateur avec des vies et sauver cela. Et maintenant, si on clique sur le jeu et qu'on ramasse quelques coeurs et quelques diamants. Nous passons au niveau suivant, et le niveau suivant nous avons 6300, ce qui est extrêmement utile et super cool. J' espère que vous avez apprécié la vidéo. J' espère que c'était très éducatif parce que nous
contrôlons maintenant notre jeu très efficacement à travers les scores et les vies. Vous devez faire quelques ajustements plus tard, mais c'est correct tant que les mécanismes de base fonctionnent. Je te vois dans la prochaine vidéo.
47. Section bonus : Niveau Entrée: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et comme vous pouvez le voir ici, nous avons une autre porte et notre joueur debout juste derrière eux. Voyons donc ce qui se passe lorsque nous cliquons sur jouer. Donc, lorsque nous cliquons sur le bouton de lecture, sont Joueur ouvre la porte et apparaît par derrière. Et maintenant, si on va à la porte, ça s'ouvre. Et si nous appuyons sur le joueur w R, non seulement va au niveau suivant, mais il passe aussi par la porte et sort de la porte, puis va à la porte voisine et passer par elle et passe au niveau suivant, et il est un gagnant, vainqueur. Donc, c'est une vidéo très excitante. Ne perdons plus de temps et commençons. Ok, alors allons de l'avant et le premier monde va dans nos sprites et les chercher. On a la porte et la porte dehors. Alors faites-les glisser et mettez-les à l'intérieur d'où sont nos sprites ? A l'intérieur des sprites. Allons-y et mettons-les à l'intérieur de notre conquérant, alors que notre conquérant, voilà notre conquérant. Et maintenant tout d'abord, créons, rendons ça un peu plus grand. Nous allons créer la porte n. Donc entrer dans la porte, et comme vous pouvez le voir que nous allons de l'avant et faire 30, rendre multiple, appliquer cela et ouvrir ces Sprite Renderer. Donc, comme vous pouvez le voir, sont humains ou notre conquérant va d'être ici et de disparaître derrière la porte. Alors découpons là-haut. C'est 64 ? C' est 58 par 58. Espérons que, un orbites ouvertes non, il devrait être plus grand. Quelle taille devrait-il être ? Alors voyons. Si nous, quelle taille devrait-il être ? On devrait le faire avec un rembourrage de 20. Donc 20 rembourrage tranchés et tous sont au milieu. Parfait, appliquez tout ça. Et maintenant, nous avons nos sprites découpés et prêts à être une animation. Donc, sélectionnez-les tous, cliquez avec le bouton droit de la souris et créez l'animation, alors qu'il animation. Et nous appellerons cette animation comme peering. Je ne suis pas sûr que ce soit la façon dont on l'écrit qui disparaît. Je ne pense pas que c'est le cas, et ça marchera pour l'instant. Alors mettez-le à l'intérieur du joueur qui a ouvert l'animateur de notre joueur. Et allons de l'avant et ajoutons ce peering à l'animateur. Ok, cool. Nous devons jouer un peu ici parce que je n'aime pas la distribution des états, donc c'est assez facile. Déplaçons la sortie juste ici. Déplacez le NSDate vers le haut, déplacez le get hit. Mettons les disparus. Oui, à propos d'ici. Ok, alors comment allons-nous faire les transitions ? Donc, les transitions vont être de la marche au ralenti parce que nous arrivons à la porte s'ouvre, nous cliquons sur un bouton, donc il va être de la marche au ralenti. Et on va l'ajouter au peering. Et quels paramètres devrions-nous ajouter ? Ce sera une transmission à sens unique parce que chaque fois que nous disparaîtrons derrière la porte, nous n'irons pas dans un autre état ou nous quitterons simplement le niveau. Donc, nous allons mettre cette durée de transition à 0, va supprimer tout temps de sortie que nous avons. Et allons de l'avant et ajoutons un déclencheur. Et ce déclencheur va disparaître, mais le même nom. Et cela nous évitera une certaine confusion et cela déclenchera la disparition. Alors allons dans le code et voyons où
allons-nous déclencher cette animation de disparition. Allons de l'avant dans Visual Studio. Et où pensez-vous qu'on devrait mettre ça ou devrions-nous déclencher cette disparition ? Laissez-le relever un défi. Ok, donc on devrait le mettre au niveau de sortie et juste avant de commencer à charger le niveau. Alors allons de l'avant et obtenir mon déclencheur de point animateur. Ouvrons et allons de l'avant et obtenons la référence. C' est la première fois que je pense même ce peering et d'indiquer comment vous l'écrivez. Ok, on va le coller ici, sauf ça. Et maintenant, si nous allons dans l'unité, cliquez sur jouer. Rendons ça plus petit. Cliquez sur jouer. Et si nous passons par la porte et cliquez sur le W, Il s'en va. Mais comme vous pouvez le voir, il y a quelques problèmes. Rejouons ça. Et nous cliquons sur, si nous cliquons sur le w, Comme vous pouvez le voir, tout d'abord, la porte se ferme avant de partir. Et deuxièmement, si nous continuons à jouer l'animation, quand elle se termine, nous pouvons toujours voir la silhouette de notre joueur juste là. Donc deux problèmes que nous devrons résoudre. Tout d'abord, nous allons résoudre le problème de la silhouette de nos joueurs encore là. C' est donc assez simple. Nous seulement, la seule chose qui devra faire est que nous devrons ajouter une fonction qui désactivera le rendu sprite. Alors allons de l'avant et ajoutons que cela rendra public, ou vous n'avez pas à le rendre public. Donc, mais on va le faire juste au cas où ce n'est pas de soucis. C' est donc un vide public. tour du fournisseur de Renderer sous est que la façon dont vous l'écrivez ? Donc, nous allons aller de l'avant et nous allons
obtenir le composant, obtenir le rendu sprite ou le rendu sprite, alors que c'est sprite renderer. Et Hughes a activé. Et ça va être faux. Où allons-nous appeler cette méthode ? Eh bien, il va être appelé en utilisant une animation d'événement. Alors revenons au joueur et nous allons choisir l'animation, aller dans la disparition. Et juste ici, il devrait disparaître. Donc, continuons et ajoutons dans l'événement, et cet événement appellera la fonction désactiver les moteurs de rendu. Voyons si ça a fonctionné. Cliquez sur jouer. C' est aller juste ici. Cliquez sur w Et il disparaît complètement. Noix. La prochaine chose que nous devrons faire est que nous devons nous assurer que notre garde, reste ouvert jusqu'à ce que notre joueur passe par elle. Assez simple, la façon dont nous le faisons est également d'utiliser un système d'événements. Alors allons dans notre Visual Studio et créons une méthode ici qui va être appelée charge publique vide niveau suivant. Et nous allons simplement copier ceci ici, qui est de trouver l'objet de la porte de sortie de type, pas de copier réellement couper. Donc contrôlez x et Control V. Donc il devrait l'enlever d'ici. Et tu sauras assez vite pourquoi on fait ça. Et une autre chose que nous ferons juste pour économiser un peu d'espace va simplement appeler la fonction désactiver le rendu juste ici. Alors tournez du Renderer. Très bien, dans le niveau de charge suivant. Maintenant tu vas voir pourquoi on a fait ça. Retourne dans Unity. Cliquez sur le calque et cherchez où disparaît-il ? Et juste ici au lieu de cet événement, changeons le moteur de rendu désactiver et à la, Alors qu'il a lobé niveau suivant. Donc, ce qui se passe maintenant, c'est que nous allons commencer l'animation qui disparaît. Donc, il va commencer à disparaître. Ensuite, une fois la disparition terminée, nous allons commencer à charger le niveau suivant et nous allons tourner du rendu. Voyons si ça marche. Collecter sur le jeu. Et maintenant, si nous passons par la porte, il va fermer la porte et ensuite nous irons au niveau suivant, Qu. Alors maintenant, c'est l'heure de votre défi. Et votre défi est de créer une porte, entrer, Ajouter une entrée ou non une porte de sortie avec son propre script à la scène à partir de laquelle vous, notre joueur entre à chaque fois à un niveau, commencer à un joueur apparaissant à l'Animateur et effectuez les transitions appropriées. Et déclencher le joueur apparaissant animation et commencer. Et enfin, vous devez positionner le joueur derrière la porte à chaque niveau. Donc, créez une porte d'entrée. Et cette porte d'entrée devrait être presque la même qu'une porte de sortie, mais elle aura un peu de différence dans l'animateur et une petite différence dans la façon dont le script fonctionne. Et vous devez faire les changements au joueur de sorte que l'animation de l'apparition devrait donc jouer dès que nous commençons un nouveau niveau et le joueur devrait être derrière la porte. Alors mettez la vidéo en pause et allez faire l'un à l'autre. Oh, ok, bienvenue. Comment tu t'es trompé avec ça ? Allons de l'avant et créons l'apparence. Allons donc dans les sprites de notre conquérant. Fermons la porte N, et choisissons la porte. Et maintenant, nous devons les découper. Donc, faites cette 30 minutes multiples appliquer. Nous allons à l'éditeur de sprite et comme vous pouvez le voir, notre joueur passe d'une silhouette et deux apparaissant comme notre conquérant. Alors allons de l'avant et grille par taille de cellule. C' était combien ? Oh, c'était 58 sur 58 et il y avait un rembourrage de 20. Coupez-le. Ils sont tous au milieu. Application parfaite. Maintenant, continuons et créons l'animation, cliquez avec le bouton droit de la souris sur l'animation. Et on appellera ça peering. Alors mettez apparaissant à l'intérieur du joueur et du joueur, allons-y et ajoutez-le à notre maintenant très grand animateur. Donc, le peering sera réglé ici. Alors, comment apparaît-il fonctionnera-t-il ? Eh bien, nous aurons une transition de deux au ralenti apparaissant, qui aura aussi un déclencheur. On appellera ce déclencheur. Apparaissant. Assez assez, assez simple. Nous n'aurons pas d'heure de sortie et aurons une durée de transition de 0. Nous allons ajouter une condition qui apparaîtra. Et maintenant, nous devons ajouter une transition de retour d'apparaissant au ralenti. Maintenant, comment cette transition va-t-elle fonctionner ? Eh bien, il n'aura pas de durée de transition et il aura un temps de sortie d'un. Donc maintenant, nous allons déclencher l'animation d'apparaître dès que le jeu commence, donc il sera installé. Et puis, après la fin de l'animation et l'apparition de notre joueur, nous reviendrons au ralenti. Sauvegardez ça. Voyons si ça, oh, avant de faire ça, on doit se déclencher ici au début. Donc, mon animateur dot set trigger sera d'abord dit L'apparition. De sorte que chaque fois que nous commençons le jeu,
chaque niveau que nous commençons, notre joueur apparaîtra. Donc, avant de créer l'entrée ou allons-y et faire cela 1 d'abord. Alors, rendez ça plus petit. Ils peuvent jouer et notre joueur devrait sortir du mur. Cliquez sur jouer et voyons ce qui se passe. Ok, c'était un peu rapide. Allons dans un autre niveau pour mieux le voir. Ok, donc on passe par la porte, on apparaît au niveau suivant. Et maintenant, cela fonctionne. La prochaine chose que nous devons faire est de créer la tournée des anthères. Allons-y et faisons-le. Nous allons donc cliquer avec le bouton droit de la souris ici et créer un objet de jeu vide, réinitialiser sa position, et le mettre ici. Prenons simplement ce diamant et mettez-le à côté de ces deux diamants. Donc objet de jeu. Rendons ça plus petit. Et ce sera la porte. Entrez. Et allons de l'avant et ajoutons une source de rendu sprite, non ? rendu aura par défaut, ce seront les bulles interactives et la couche sera interactible. En fait, vous savez, nous, nous n'aurons pas besoin d'ajouter de couche. Nous aurons simplement besoin d'une couche de tri. Alors allons-y et allons aux sprites de porte et ajoutons le sprite au ralenti à la porte. Correct. Maintenant, nous avons une porte. De quoi d'autre avons-nous besoin ? On a dû créer un sprite, je veux dire, un script pour ça. Donc ce sera la porte ou restons cohérents. Donc, et le troisième ordre d'entrer dans la porte. Oui, il est entré ou ainsi créer un nouveau script et Theodore et nous attendrons l'unité. Correct. Allons dans les actifs et mettons la porte à l'intérieur des scripts. Alors allons-y et ouvrons ça. Et le Visual Studio jusqu'à la porte, tout comme la porte de sortie mais avec une torsion. Alors, qu'est-ce que la porte de sortie aura ? Eh bien, commencez ça par déclencher l'ouverture. Oh, nous ne l'avons pas fait, nous ne l'avons pas fait à l'animateur. Et d'une manière ou d'une autre, ça s'appelle encore des objets Alors, changeons ça. Et pour entrer dans la porte Qu, Alors qu'est-ce que l'animateur de notre divertir votre P ? Eh bien, c'est un peu une torsion et un peu un choc, mais ce sera la même chose pour la porte de sortie. Donc on va renommer la porte. Je veux dire, la porte de sortie à porte, et on va simplement la traîner et l'ajouter à la porte. Et ce sera exactement la même chose. Mais la seule chose qui va changer est dans le script de porte d'entrée. Donc la première chose que nous allons faire dans l'entrée ou le script est nous allons le faire alors que c'est ainsi et sa porte. Dès que nous commençons, nous allons déclencher l'animation. Donc, nous allons obtenir le composant ou l'animation d'ouverture. Donc nous allons obtenir l'animateur, alors qu'il a enseigné ou, et nous allons régler le déclencheur et il va utiliser l'open. Si ouvert. Et c'est là. Nous avons réglé le déclencheur dès que la scène se réserve. Et maintenant, allons de l'avant et allons au niveau un. Sauvegardez ça. Allons-y et préfab. Où sont nos préfabs ? Sont des préfabriqués. Allons préfabriqué entrer dans la porte, et allons sauver ça aussi. Allons au deuxième niveau. Ou avant d'aller au deuxième niveau, mettons notre joueur derrière la porte ou juste à côté de la porte. Donc juste comme ça, revenons aux niveaux. Où est-il ? Donc, les scènes niveau à, oui, enregistrez cela et double-cliquez sur le lecteur pour les trouver. Allons de l'avant et ajouter le
Attendu la porte où nos préfabriqués portes tant de dossiers à l'heure actuelle. Donc, ajoutez le donc c'est le produit x dollars ici. Et la porte d'entrée sera juste derrière le joueur. Même si c'est au même endroit. Pas de soucis, on peut changer ça. Alors prenons le joueur et la porte et mettez-les ici pour ne pas être confus. Ok, si génial. Sauvegardez ça. Revenons au niveau un et jouons-le et voyons si notre jeu se déroule en douceur. Donc se plaindre publiquement, il est là, cliquez sur jouer, et dès que le jeu commence, la porte s'ouvre, le joueur apparaît. Et s'il passe par la porte au niveau 2, porte s'ouvre, le joueur apparaît, nous bougeons. Je peux aller à la porte voisine, alors faisons-le. Et enfin, nous apparaissons dans le menu principal, qui nous dit que nous sommes un gagnant à chaque fois. Alors revenons aux menus principaux, commencez le jeu et nous faisons tout cela encore et encore et encore. Vidéos cool, donc fonctionne bien que c entrer porte et voir tout et nos animations ensemble si et notre lecteur va d'un endroit à l'autre. J' espère que vous avez apprécié la vidéo. J' espère que vous le trouverez aussi cool que moi parce que c'est vraiment,
vraiment cool et il donne le jeu comme s'il n'y avait pas de changements de scène. Nous marchons simplement de porte en porte et nous entrons dans des niveaux nouveaux et différents. C' est très excitant, c'est très cool et je te verrai dans la prochaine vidéo.
48. Ajouter SFX à tout: Bienvenue à tout le monde dans une toute nouvelle vidéo et la très cool, parce que nous respirons beaucoup de vie et d'arcanes. Comme vous pouvez le voir ici, notre lecteur a maintenant une source audio et beaucoup d'effets sonores. Alors vérifions-les. Dès que nous commençons la partie. Ici, nous avons une porte qui s'ouvre. On peut ramasser les choses. On peut marcher. Si nous frappons notre joueur, il meurt et fait du son. Nous marchons, nous marchons. Allons voir comment ça brûle. Il explose. Et si on va à la porte, on peut le traverser. Alors voyons comment on fait tous ces effets sonores. Oh cas. Parce que notre joueur ne serait pas détruit chaque fois qu'on le ramasse. Contrairement aux diamants et les coeurs, utilisera une autre méthode que le clip de jeu au point. Et c'est la boutique L1. Alors voyons ce que c'est. C' est donc la documentation de l'Unité, comme vous devriez le connaître. Et nous avons la source audio point play one-shot. Donc, si nous lisons la description, il lit un clip audio qui, bien sûr, lui donnera et met
à l'échelle le volume de la source audio. Maintenant, le volume ne fera pas une grande agitation à ce sujet dépend de votre préférence. Si vous le souhaitez, vous pouvez le rendre plus grand ou plus haut ou plus bas. Quoi qu'il en soit, ça joue un seul coup. Et si vous pouvez voir ici, car il nécessite une source audio pour lire cela. Nous devrons donc ajouter quelque chose appelé une source audio. Retournons dans Unity et revenons dans notre couche. Et ajoutons un composant qui s'appelle la source audio. Maintenant, nous avons une source audio sur notre lecteur. Super. La prochaine chose que nous devrons faire est de donner au lecteur des clips audio. Nous avons donc beaucoup de clips audio et certains d'entre eux feront partie de votre défi. J' en ferai deux et je laisserai le reste pour ton défi. Alors allons-y. Comme vous pouvez le voir, nous pouvons ajouter un clip audio juste ici à la source audio, mais nous allons faire une manière différente qui consiste à donner au script juste ici quelques sources audio et il les utilisera pour lire et la source audio. Alors, sauvegardez ça. Allons dans le joueur. Et ici, nous devrons ajouter quelques champs sérialisés. Alors allons de l'avant et créons un champ sérialisé. Et ça va être un clip audio. Et nous allons ajouter le saut comme effets, ajoutera la terrasse comme un fax. Et je pense que c'est assez pour l'instant. Allons les chercher à partir des ressources. Je t'ai laissé beaucoup d'effets sonores et on les utilisera tous. Mais pour l'instant, nous allons juste obtenir le saut et la, Alors qu'il, l'attaque. Peut-être qu'on en fera quelques autres plus tard. Alors mettez-les à l'intérieur des effets sonores. Et maintenant nous avons le cœur, je veux dire l'attaque et le saut. Alors pourquoi n'est-il pas sauvé ? Sauvegardons le script du joueur. Et comme vous pouvez le voir, je les ai mis sur une seule ligne pour économiser de l'espace. Et parce que nous pouvons le faire, nous ne l'avons pas fait ici, mais c'est dans le but d'avoir tout devant nous et de ne pas vous confondre, surtout au début. Donc, de retour à Unity, nous pouvons voir ici, dans l'inspecteur, que nous avons le saut et l'attaque. Alors assignons-les. Alors sautez pour sauter et attaquer à l'attaque et appliquera aussi nous l'appliquons à la préfabriquée. Sauve ça. Maintenant, revenons dans Visual Studio et voyons comment nous allons jouer ça. Donc la première chose dont nous aurons besoin est une référence à notre source audio. Donc on va créer une source audio et on appellera ça ma nouvelle force. Et puis commencez. Allons de l'avant et attribuons la source audio ma pour obtenir composant et la source audio présents sur l'objet de jeu. Les étapes si faciles que vous devriez être familier avec ces. La prochaine chose que nous allons faire est que nous aurons besoin d'ajouter le son de saut chaque fois que nous sauterons réellement. Donc ici, nous pouvons voir que chaque fois que nous ajoutons la vitesse est le moment idéal pour ajouter le saut. Alors ajoutons ça ici. Donc, ma source audio et comme je l'ai dit, utilisera la lecture d'un coup. Alors, jouez un coup. Tout ce dont il a besoin, c'est l'effet sonore de saut. Et allons trouver l'attaque, alors que l'attaque,
ok, donc juste ici, quand on joue l'animation, on a les collisionneurs. On peut le mettre ici. Donc c'est ma source audio, point delay one-shot et l'effet sonore attaquant. Sauve ça. Revenons dans Unity et voyons si ça a fonctionné. Tout devrait être mis en place. Alors cliquez sur jouer. Maintenant, si on fait l'attaque, ok, donc si on attaque, on attaque, on a un son. Si nous sautons, vous pouvez voir que notre joueur a un son et ramasser les diamants nous donne également un son. Donc, n'avons toujours pas l'habitude de tuer des porcs. Ok, donc maintenant on les a tués et on a plusieurs sons. Si nous frappons plusieurs fois qu, prochaine chose, que devrions-nous faire pendant que je vais en utiliser un ? Je vais jouer un son en utilisant un événement juste pour vous montrer et le reste sera tout à vous. Et on va le faire avec la porte. Maintenant, nous avons deux façons de le faire. abord, nous pouvons ajouter une source audio à l'entrée et aux portes de sortie. Ou nous pouvons simplement jouer clip au point. Les deux sont bons. n'y a aucun inconvénient à les annuel. Vous pouvez le faire, vous pouvez le faire de la préférence de votre façon préférée. Je vais le faire en utilisant le clip de lecture au point parce qu'honnêtement, ils n'ont pas besoin d'une source audio. Nous pouvons également ajouter une source audio. Ce n'est pas un problème, mais nous ne le ferons pas. Alors. Allons dans la porte ou la porte de sortie, et allons de l'avant et créons une méthode qui va jouer l'audio. Alors allons de l'avant et créons-le. Donc ça va être un vide. Bien sûr. On appellera cette pièce qui ouvre la porte en tant qu'effets. Et nous allons faire capitaliser l'ouverture parce que c'est comme ça que nous fabriquons les méthodes. Et à l'intérieur d'ici, nous allons lire le clip de retard de point source audio à point, et nous aurons besoin d'un clip et d'une position. Donc sérialisons un champ. Et le champ sérialisé aura un clip audio. Clip audio. Et ce clip audio nous aurons l'ouverture oh,
non, pas majuscule porte d'ouverture comme f x. Et nous devrons faire exactement la même extrémité le Alors que la porte s'ouvre, tandis que la porte ouvre la porte. Donc nous devrons faire la même chose. Allons-y et faisons-le. Donc nous allons copier ceci et ceci. Alors copiez ça, mettez-le ici. Et nous ferons la même chose pour la porte ouverte sérialisée. Donc, pour l'ouverture maintenant, sauvegardons tout cela et revenons dans l'Unité. Et allons de l'avant et, et l'effet sonore pour la porte ouverte. Alors ajoutons-le à l'intérieur de Unity. Et si on y joue, jouons. Donc c'est une porte qui s'ouvre, rien de trop spécial à ce sujet. Porte de sortie. On aurait dû. D'accord. Nous ne l'avons pas encore entré ou oh, je pense que c'est parce que nous avons une erreur ici, donc nous devrons faire quelques ajustements pour que tout fonctionne. Donc, continuons et sauvegardons tout, sauvegardez tous les scripts non enregistrés. Donc entrer la porte devrait avoir maintenant une porte d'ouverture. Et nous allons ajouter le clip audio, appliquer tout. Et puis la porte de sortie ajoutera également le Considérant que c'est correct, il est là. Et nous allons postuler. Maintenant, où devrions-nous jouer ? Comme je vous l'ai dit, on va utiliser un événement pour le jouer. Donc, dans l'entrée ou si nous cliquons dessus, nous voyons que nous avons notre animateur juste ici. Si nous cliquons sur l'animation, nous pouvons voir l'ouverture. Et dès que la porte s'ouvre, nous allons ajouter un événement qui nous donnera la possibilité de choisir une fonction. Et la seule fonction que nous avons est d'ouvrir profondément la porte comme affecte. Cliquez dessus et nous ferons la même chose pour la porte de sortie. Donc ouvert, oh, il y a déjà ? Donc ouvert, y, o, on utilise le même animateur. Ok, c'est très cool et très rapide, très efficace. Donc, si maintenant, quand nous cliquons sur jouer. Non, pas de son. Pas de son du tout. Pourquoi c'est ça ? Oh, OK. Une autre erreur très maladroite. Nous devrons donc ajouter l'ouverture en tant que x à la position du point principal de transformation de point principal de la caméra. Et copions ça parce que c'est une bouchée. Et on va le coller ici. Donc j'aurais dû copier tout ça. Donc ouvrir la porte que les effets et la caméra transformer domaine la position de transformation. Et maintenant, si nous cliquons sur le jeu, j'espère que cela va faire un son d'ouverture de porte. Et donc si nous maintenant, si nous sautons dans la porte, nous devrions entendre un autre son et coo. Et si nous passons par la porte, nous n'entendons pas encore de sons. Parce que ça fait partie de votre défi. Et votre défi sera de compléter tous les autres effets sonores. Je vais vous montrer les effets sonores qu'il faut compléter. Ce sont les effets sonores que nous n'avons pas encore. Donc nous avons le pick-up de diamant, le pick-up de coeur que nous avons déjà fait. On a la porte qui s'ouvre, on l'a déjà fait. Nous avons la mort ennemie, nous avons la mort du joueur, l'attaque du joueur. Nous avons frappé le joueur, ce qui signifie que chaque fois que le joueur est touché, nous n'avons pas fait le saut, nous avons l'explosion A-M-P et la bombe brûlée. Laissez-moi vous donner quelques événements ici. Donc, l'explosion et la combustion devraient être utilisées. Eh bien, vous pouvez les utiliser dans des événements ou vous pouvez les utiliser, les
utiliser dans hors-script. Les deux sont très bons. J' ai essayé les deux. Peut-être qu'on fera les deux. Et par exemple, alors que si la mort ennemie peut être utilisée en utilisant le clip de lecture au point la mort des joueurs peut être utilisée en utilisant le jeu one-shot peut être joué avec l'utilisation de jouer un coup et utiliser votre imagination, faites ce que vous voulez. Essayez les deux méthodes. Les deux sont super et je te verrai dans un peu. Oh, OK. Voyons ce qu'il faut faire. Tout d'abord, allons chercher tous nos clips. Donc on a l'explosion de la bombe VB de maman en feu, la porte de la mort fermée et le moi mourant. Et que devrions-nous obtenir d'autre ? L' obtention et la marche. La marche sera donc un peu plus difficile à ajouter. Alors voyons l'explosion. Coup. Ok, alors que devrions-nous faire maintenant ? Et ajoutons la bombe. Alors, que devrions-nous faire embaumé ? Tout d'abord, appliquons tout. Et je pense que dans la bombe, nous avons, comme je vous l'ai dit de deux façons, soit
on peut ajouter une source audio, soit on n'a pas besoin de le faire. Mais comme nous avons deux clips à lire, allons de l'avant et ajoutons une source audio. Et nous allons entrer dans le script pour le cautionnement. Et nous allons de l'avant et ajoutons deux champs sérialisés, qui seront bien sûr des clips audio. Et nous allons ajouter l'explosion comme effets et la brûlure comme effets. Sauvons ça. Et où devrions-nous Tout d'
abord, obtenons le composant o. devrions-nous d'abord créer les composants. Donc c'est une source
audio, une source audio, et ça va être ma source audio. S' il vous plaît J'ai besoin de ma source audio. Source audio. Nous l'avons appelé ma source audio pour rester cohérent avec mon animateur, allons-y et assignons-la. Ce sont donc des étapes très basiques que j'ai faites plusieurs fois. J' espère que vous avez fait le défi. J' espère que vous avez apprécié le défi et que vous ne me regardez pas tout faire. Pas parce que je n'aime pas ça, mais parce que j'aimerais que tu résolves les problèmes. Ok, alors la prochaine chose, que devrions-nous faire ? Eh bien, à l'intérieur de la bombe explorée, quand jamais on fait exploser la bombe. C' est aller de l'avant et utiliser mon point source audio jeter un coup. Et on va ajouter l'effet sonore qui explose, Cu. Et ici, sur le déclencheur Enter, nous devrions jouer le point source audio L1 shot, et ce sera l'effet sonore brûlant. Donc, sauvegardez cela, besoin de revenir dans Unity et ne jamais oublier d'assigner les effets sonores appropriés. Donc explosion de bombe et explosion de bombe. Une brûlure dans l'effet sonore brûlant. Appliquer tout. Et allons essayer le lien, mais la bosse est là-haut, alors mettons notre couche là-haut. Cou, cliquez sur jouer. Voyons ce qui se passe si on va près de K. Nice, très, très, très gentil. Qu' est-ce qu'on a d'autre ? Voyons le défi. Nous l'avons fait. Donc nous avons fait la mort ennemie. Voyons voir la mort ennemie ressentie. Donc la mort ennemie, alors qu'elle, l'ennemi mourant. Allons entendre la voix. Ok, très cool. C' était mon imitation. Alors, allons dans l'ennemi. Nous n'ajouterons pas de source audio parce que nous
n'avons qu'un seul effet sonore ou je ne pense pas que Paul en avait besoin. Voyons où est l'ennemi. Sérialisons un champ. Champ sérialisé, audio, clip. Et ce sera le moment en tant qu'effets. Et où devrions-nous jouer pendant qu'on devrait le jouer ? Je pense qu'on peut jouer ici. Mais pour l'instant, allons de l'avant et ajoutons un événement juste pour pimenter les choses et s'amuser à elle. Allons donc ici et ajoutons quelque chose juste avant ou souscrivez ici. Donc on va appeler ça le vide, jouer, mourir comme effets. C' est la même chose, mais nous essayons juste des choses différentes pour avoir tout et plus d'armes dans notre arsenal. Alors, jouez le clip à la liaison, ce sera l'effet sonore mourant. Et en passant, je pense que jouer au clip à Point est en fait mieux ici pour le cochon parce que nous détruisons l'objet. Nous avons donc besoin d'un renfort au cas où l'ennemi mourrait par BY. Je veux dire que l'objet du jeu de l'ennemi est détruit. Avant même d'avoir la chance de finir les effets sonores. Donc jouer clip à Point est mieux dans ce cas. Donc, allons de l'avant et la position principale du point de la caméra transform.py. Allons donc ajouter les effets sonores dans l'inspecteur. Donc, nous avons les mourants et nous avons mis l'ennemi en train de mourir. Appliquez tout, enregistrez cela. Et amenons le joueur ici. On bouge beaucoup le joueur. Alors mettez-les ici, cliquez sur jouer. Et maintenant, attendez le plus grand Come and pool. Non, rien. On a oublié ? Oh, on a oublié d'ajouter l'événement. Moi idiot. Alors allons mourir. Et juste ici, qui a joué un peu le clip. Où devrions-nous ajouter le son ? Devrait-il être au début ou
juste ici, tout comme il tombe à terre. Faisons ça. Donc, à une fonction et où devrait-il être superposé ? Joueur neuf, fait plus sonore, CRC que j'ai appelé le joueur mourant effet sonore. Je l'ai fait. Donc l'ennemi mourant effet sonore. Sérieusement, il y a une différence. Alors l'ennemi mourant, sable, fait, cliquez sur jouer. Voyons voir. Le biggie vient à notre chemin et d'accord, c'était moi au fait. Il ne le fait pas deux fois. Ok, super. Qu'avons-nous d'autre ? Voyons voir, couche se faire frapper, ce qui est cool. Faisons ça. Alors revenez au script du joueur. Ainsi, comme vous pouvez le voir, les étapes sont très basiques. Si vous n'avez pas encore fait le défi et que vous avez encore d'autres effets sonores à compléter. Allez-y, mettez la vidéo en pause et continuez. Je vous ai donné beaucoup d'exemples. Alors mettez la vidéo en pause et allez faire le défi. Oh, ok, pas de soucis à ce sujet. Alors voyons. Appelons cela être touché comme affecte. Sauve ça. Voyons où on se fait frapper ? Une bonne façon de double-cliquer dessus. Et si nous faisons défiler vers le bas, nous pouvons voir où cette source juste ici. Et voyons ce qu'on doit faire ? Que devrions-nous faire ? Pensez que nous pouvons simplement l'ajouter juste ici après, ou nous pouvons l'ajouter déclencheur. Donc, ma source audio, point joue un coup et il se fait frapper, se faire frapper comme f x. Donc ce ne sont pas les noms les plus créatifs que je peux les obtenir, mais ils vont faire pour l'instant. Attendez ça, sauvegardez cette cuisse, et voyons. Alors, les têtes nous. D'accord. Coup. Pas mal. Alors maintenant est l'obtenir et attaqué la même chose ? Oh non. D'accord. Ok, super. Et ensuite, je sais que ce ne sont pas les meilleurs effets sonores. Peut-être que tu ne les aimes pas, peut-être que tu veux avoir d'autres effets sonores. Je vous encourage à aller regarder vos propres effets sonores. Il existe de nombreuses ressources que vous pouvez trouver pour des effets sonores gratuits. Oh, ok, alors qu'est-ce qu'on a d'autre ? Voyons voir. On a l'explosion et la combustion de la bombe. On a fait l'ouverture et la fermeture de la porte. Alors faisons la clôture. Allons à Unity et voyons, nous devons ajouter, donc sortir de la porte et nous devons être à la porte. Alors allons-y et faisons-le. C' est un peu encombrant, mais ça vaut le coup. Alors fermer la porte comme effets. Et où devrions-nous jouer ? Il devrait être joué dans un événement. Oui, je pense qu'un événement est bon ou nous pouvons le jouer juste ici juste sous le niveau de chargement de démarrage lorsque nous déclenchons la porte fermée. Et nous pouvons le faire en fait. Alors allons de l'avant et ajouter une source audio, point de lecture clip au point et les effets sonores des portes de fermeture. Maintenant, vous ne devriez pas faire à la fois l'événement et le et en utilisant le clip de lecture au point. Mais nous sommes juste, eh bien, vous ne devriez pas utiliser les deux et un événement et jouer le clip audio du code directement. Mais nous le faisons simplement dans le but de comprendre la portée de jouer des sons pour tous nos jeux. Donc vous comprenez tout. Et maintenant fermer l'effet sonore de la porte. Et nous allons jouer ce domaine de point de caméra, point, transformation, point de position. Cool. Copiez ça. Ou retournons à la porte et juste ici. Et allons-y. Et parce que nous n'avons pas, disons du code qui joue, nous n'avons rien qui nous dit que la porte se referme à l'intérieur de notre code devra créer une méthode réelle pour cela. Donc on va jouer à la fermeture de porte comme effets. Et nous allons de l'avant et ajouter la source audio, pas lire clip au point de fermeture. D'accord. On n'a pas l'écart. Alors fermer la porte comme effets. Copiez ça. Mettez-le ici, et nous le mettrons pour caméra. Le point principal transforme la position du point. Sauvegardez tout ça. C' était dur. Retournez dans la porte et fermons la porte. Et allons-y et appliquons ça car on oublie la porte de sortie, la porte ferme. Appliquez cela, sauvegardez tout cela. Cliquez sur jouer. Ok, donc deux portes s'ouvrent tout seul. La porte s'ouvre et si nous passons par elle, nous devrions entendre la fermeture. D' accord. Joli. Très cool. Alors qu'est-ce qu'on a d'autre ? Eh bien, il y a un peu de défi ici et je ne pense pas que je l'ai dit,
c' est le son de marche. Alors allons vérifier le son de marche. Je bois vous donne comme un défi parce que c'est un peu encombrant. Alors voyons, où est-il ? La marche. Alors, marchons, jouons-le. Comme vous pouvez le voir, c'est en deux étapes que nous jouons au camion. Camion. Camion. Camion. D' accord. Alors où pensez-vous qu'on devrait l'ajouter ? Donc j'ai beaucoup expérimenté avec ça. Et la façon dont nous allons le faire est d'utiliser l'événement, qui sera, où est-il ? Cette erreur ici, nous pouvons l'éclaircir. C' est quelque chose sur les animations. Ce n'est pas si important. Pas de soucis. Quelle que soit l'erreur ne casse pas entièrement votre jeu n'est pas si grande d'une flèche Nord. Alors allons voir alors que l'animation, ou où est le joueur ? Et voyons marcher tandis que la course,
ok, donc à l'intérieur de la course, nous allons ajouter un événement et cet événement va jouer la méthode qui va créer en ce moment, ce qui est appelé pas. Voyons donc comment nous allons créer des étapes. abord, allons dans le joueur et allons de l'avant et ajouter la marche comme f x. Sauvegardez cela. Maintenant, voyons où devrions-nous ajouter. Nous devrions créer une méthode Steps où nous allons la créer sous la course de saut de déclin et nous l'ajouterons sur la course. Ok, donc nous appellerons cette méthode pas vide comme effets. Et voyons ce que nous devrions ajouter ici. Donc, la première chose que nous allons faire est de
vérifier si le joueur bouge horizontalement. Donc bool, joueur se déplace horizontalement sur. Troisièmement, ce plus court prend deux L ou juste un. Et nous allons utiliser la valeur absolue de point F mathématique. On l'a déjà utilisé quelque part ici. Je ne suis pas sûr. Donc absolu était simplement écrire. Donc mon corps rigide, point
D de vitesse de point x devrait être supérieur à maths f dot epsilon. Donc, cela va vérifier si nous bougeons et vous verrez pourquoi juste un n-bit. Donc, si le joueur bouge horizontalement, que devrions-nous faire ici ? On devrait vérifier si notre joueur touche le sol. Donc si le joueur, je veux dire, mon Box Collider 2D touche les couches. Avec un masque de calque, point get mask. Ce sera le terrain et vous enfreignez un peu de règles ici,
pas, pas, ne copiez pas la référence de chaîne. Pas de soucis. C'est assez facile pour que nous ajouterons la source audio jouera un seul coup, ok, de l'effet sonore de marche. Mais il y a une torsion parce que si nous ne bougeons pas horizontalement, nous ferons quelque chose d'un peu bizarre ici. Et vous pouvez trouver cela dans ma source audio, je veux dire, dans la Source Audio, une documentation qui est ma source audio, point stop. Et la raison pour laquelle nous faisons cela est parce que nous voulons les effets sonores de marche ne jouent que si nous touchons réellement le sol. Parce que parfois, si on est en l'air et qu'on bouge à gauche ou à droite, ça pourrait mal jouer. Et l'autre chose que nous voulons, et au fait, le son de marche comme vous l'avez entendu, c'est comme marcher sur la pierre. Donc nous en avons besoin. Donc nous avons besoin que notre joueur soit sur le terrain. Et une autre chose est que nous devrons avoir, assurez-vous que le joueur se déplace réellement horizontalement. Et s'il ne bouge pas, il est
donc sa vitesse est 0. Nous voulons arrêter la lecture audio immédiatement. Nous ne voulons pas que les effets sonores de marche continuent à jouer, jouer, même si notre joueur a cessé de bouger. Voyons si ça a fonctionné. On va entrer dans le joueur. Allons dans les effets sonores et ajoutons les effets sonores de
marche, de marche au son, au fait, et appliquons cela. Et voyons si ça marche. Sauve ça. Cliquez sur jouer. Maintenant. Non, rien. Oh, on a oublié de le faire. À chaque fois. À chaque fois. Donc, nous devons en faire une note mentale. N' oubliez pas d'utiliser l'événement que vous avez ajouté Michel. Alors, où est-il ? Où est-il ? Les étapes, les étapes, la graisse sonore, cliquez sur le jeu. Et je l'espère rationnel. Coop. Donc, comme vous pouvez le voir, nous marchons de la requête non, non, OK cependant. Donc, il y a un peu d'un bug dans notre jeu, mais au moins l'effet sonore de la marche fonctionne parfaitement bien. Allez taux, cliquez sur Démarrer. Nous recommençons le jeu. On devrait être derrière la porte. Chaque effet sonore fonctionne parfaitement. Nous passons par la porte à porte ferme, nous pouvons l'empêcher. On saute. On a sauté. Et tout fonctionne parfaitement. Correct. J' espère que vous avez apprécié la vidéo. C' est une très, très longue vidéo et c'est pourquoi j'ai dû faire quelques pauses entre les deux. Mais j'espère que ça vous a plu. Ça en valait la peine. Nous avons fait de notre jeu un jeu beaucoup meilleur et plus cool et beaucoup meilleure expérience pour le joueur. Et j'espère que ça vous a plu et je vous verrai dans la prochaine.
49. Ajouter des coeurs des cites: Bienvenue à tout le monde dans une toute nouvelle vidéo. Et comme vous pouvez le voir ici, nous n'avons plus la vie. En fait, on peut même, va dans la scène, va dans les textes de vie et on peut l'éteindre. Alors, nous allons cliquer sur jouer et voir ce que nous avons fait dans cette vidéo. Alors maintenant, au lieu d'un nombre, nous avons des coeurs en haut, ce qui est très cool. Et nous avons fixé les limites pour ramasser chaud. Donc si nous prenons par un autre cœur, le nombre de cœurs n'augmente pas. Allons chercher la tête. Et comme vous pouvez le voir, quand on se fait frapper, on perd une vie. Et si nous prenons la fente, nous augmentons le cœur, ce qui est très cool et fait de notre jeu un jeu réel. Nous sommes frappés une fois, nous sommes frappés deux fois et quand il nous reste un cœur, nous ne pouvons plus être frappés parce que nous allons au menu principal. Donc, ne perdons plus de temps et cela arrive
au k. Alors commençons par ajouter quelques sprites. Et nous allons aller dans les ressources et chercher le canot de sauvetage. Alors faites glisser la barre de vie et où devrions-nous la mettre ? Mettons-le dans les micros. Donc quand les micros, on aura cette barre de vie ici en fera 34. Maintenant, peut-être qu'on va l'agrandir, on l'appliquera. Et dans tous les cas, allons de l'avant et voyons ce que nous devons faire. La première chose que nous allons faire est d'aller dans le Canvas, clic droit et ajouter une image. Maintenant à l'intérieur de l'image, voyons où il est. Double-cliquez sur l'image. Ok, c'est quelque part là-haut, juste ici. Donc on va le mettre pour les vies. Prenons le texte des vies et mettons-le simplement sous ici, ne
s'en débarrassera pas encore. Donc, revenons sur l'image et changeons l'image. Donc, il a besoin d'une source qui est un sprite. Mettons la barre de vie juste là. Comme vous pouvez le voir, ce n'est pas très efficace ou cool en ce moment. Il faudra changer ça un peu. Juste ici. Vous pouvez voir que nous pouvons le définir à la taille native. Alors faisons ça. Et maintenant, nous avons l'image mise en place. Mettons-le un peu, et mettons un peu la vie en bas. Nous pouvons changer la taille si vous voulez. Rendons cela un peu plus petit, alors rends-le juste un peu plus petit. Je pense que c'est bon. Assez. Cool. Donc maintenant, ce que nous devons faire est que nous aurons besoin de quelques cœurs pour représenter va garder ça juste pour s'assurer que tout fonctionne et ensuite nous allons nous en débarrasser. Alors représentons ceux-ci avec des cœurs sur eux. Et nous allons le faire en ajoutant trois hots. Donc nous allons ajouter un grand coeur un grand dur à m, un grand coeur trois. Et ils seraient tous des images. Appelons ça l'image du bateau de sauvetage, la barre de sauvetage. Ou des opérations de vie. Image de la barre de vie dupliquer une fois appelé ce cœur. Et au lieu de la barre live ajoutera le grand chaud. Donc maintenant, nous avons un grand cœur, mettre à la taille native, et nous allons le rendre plus petit et ordonné pour s'adapter à l'intérieur du cœur. Alors rendons le plus petit. Cliquons sur w, Et nous allons le rendre aussi un peu plus petit à nouveau. Donc ça s'insère dans ce coeur juste ici. Duplions ça et mettons-le ici. Et dupliquons à nouveau et mettez-le ici. Maintenant, nous avons trois cœurs. Maintenant, ce que nous devons faire est que nous devons d'abord appliquer tout à la session de jeu. Nous avons donc les Cœurs et nous aurons besoin de prendre ces cœurs et de les mettre comme des enfants. Ok. Donc, il doit ouvrir le préfabriqué qui les chil à l'image de la barre. Sauve ça. Et maintenant, nous avons tout mis en place. La prochaine chose que nous devrons faire, c'est parce que nous n'avons que trois coeurs royauté. Nous devons nous assurer que notre joueur, chaque fois qu'il prend des coeurs, il ne va jamais au-dessus des trois coeurs. Alors faisons cela dans Visual Studio. Ici, en séance de jeux. Voyons où nous ajoutons des coeurs. Donc, nous ajoutons des blessures ici. Et nous aurons besoin de créer une condition if. Et cette condition nous dira que si les vies des joueurs sont supérieures ou égales à trois, nos vies de joueurs seront égales à trois. D' accord ? Donc, même si nous ramassons sept coeurs, il vérifiera si le joueur vit est plus grand ou plus grand que ou égal à trois. Il va simplement le remettre à travers R3. La prochaine chose que nous devrons faire est de trouver un moyen de supprimer et d'ajouter ces images. Le cœur est à chaque fois qu'on ramasse ou qu'on perd une vie. Et nous allons le faire en utilisant des tableaux. Et nous allons également utiliser avec des tableaux quelque chose appelé une boucle for. Maintenant, je suis sûr que si vous êtes un peu haut ou vous savez, un peu de codage, vous savez déjà ce que sont les boucles, ou vous êtes familier avec le nom. Mais dans tous les cas, nous allons les examiner et leur expliquer ce qu'ils sont parce que nous n'avons toujours pas et les scores. Alors qu'est-ce qu'une boucle for ? C' est similaire à un pour chaque, mais il répète un événement jusqu'à ce qu'une certaine condition soit remplie. C' est donc utile lors du comptage ou de l'itération à travers des tableaux. Voyons à quoi ressemble la structure d'une boucle for. La structure d'une boucle for est quelque chose comme ça. Donc, nous avons les quatre, nous avons un entier i que nous créons juste à l'intérieur de la boucle. Et nous avons une certaine limite que, et nous incrémentons le i plus N, Nous faisons quelque chose. Alors, qu'est-ce que ça veut dire ? Un entier i, qui commence à partir de 0, ou il peut commencer à partir de quelque chose de différent de 0. Ça n'a pas d'importance. D' accord ? Donc, nous avons le i, la boucle for continuera à itérer et nous allons faire le quelque chose juste ici jusqu'à ce que. Ou alors que le i est plus petit que cette certaine limite et nous allons continuer à augmenter le i une
fois, deux et trois fois. Habituellement, la certaine limite est la longueur d'un tableau que nous avons. Et nous allons parcourir
chaque élément à l'intérieur de ce tableau jusqu'à ce que nous finissions le tableau. Donc, je deviendrai plus grand que la certaine limite et ensuite nous sortirons de la boucle for. Je vous ai bien sûr laissé avec les ressources de la documentation d'une boucle for dans les ressources. Donc, il continue à exécuter le code à l'intérieur jusqu'à ce que j'atteigne la certaine limite. Et nous verrons comment nous allons l'utiliser. En fait, vous allez utiliser dans un défi, mais pas en ce moment, cliquez sur Visual Studio, et ici, nous avons le texte de partition, les textes de vie. Et sérialisons un champ. Et nous ferons de ce champ et de l'image pas seulement une image. Ce sera un tableau d'images et il s'appellera les cœurs. Maintenant, nous avons le cœur et allons dans l'Unité. Et on devrait, d'accord, donc projeter. Et en séance de jeux, nous devrions avoir ce sans cœur juste ici. Et nous allons simplement cliquer sur ces trois. Ok, maintenant, avant de faire ça, va en session de jeu et ancré à cette petite serrure juste ici. Et choisissons les cœurs et traînons-les dans le cœur. Et maintenant, nous avons un
cœur, un cœur et difficile à appliquer tout cela. La prochaine chose que nous devrons faire est de créer une méthode qui mettra à jour les cœurs chaque fois que nous ajoutons deux vies ou que nous prenons des vies. Alors faisons ça et prenons celle de Clive. Chaque fois que nous avons le moins,
nous allons mettre à jour les cœurs. Et quand c'est la copie que mettre à jour les cœurs. Et chaque fois que nous ajoutons deux vies, ici, nous allons mettre à jour les cœurs. Et maintenant, allons de l'avant et créer le cœur de mise à jour va être vide et les cœurs de mise à jour. Et que devrions-nous faire à l'intérieur ? Eh bien, ça va faire partie de votre défi. Votre défi est de terminer la méthode de mise à jour des coeurs. Nous devons activer ou désactiver nos cœurs en fonction du nombre de vies de joueurs qu'il nous reste. Alors je vais vous donner un indice. Utilisez pour les boucles pour itérer à travers le tableau de coeurs. Je vous ai déjà donné ce indice et avec une condition si qui vérifie combien de vies il nous reste. C' est donc un défi un peu difficile. C' est, c'est à quoi servent les défis. Et parce que vous allez être votre première fois en utilisant une boucle for et c'est un peu délicat. Il m'a fallu un peu de temps pour comprendre comment désactiver et activer les blessures. Mais je suis sûr que si tu lui donnes toute ta concentration et toute l'attention, tu peux le faire. Alors arrêtez la vidéo maintenant et allez apprendre à Chaldéen. Bienvenue de retour. J'espère que vous avez fait de votre mieux. Allons de l'avant et essayons de mettre à jour les cœurs. Alors. Voyons voir, nous devons créer une boucle for qui vérifie la vie des joueurs. Et le, si le joueur vit sont certain nombre, nous devons activer ou désactiver le chaud. Alors allons de l'avant et première chose, abord, créer une boucle for. Et que devrions-nous avoir à l'intérieur de cette boucle pour ? Eh bien, nous suivrons la méthode traditionnelle de boucles. Et quelle est la limite ? Alors, où devrait, quelle est la limite que nous devrions viser pour un accroissement ? Donc ça va être I, ça va être moins que le tableau du cœur point la longueur du tableau des coeurs. Et nous allons augmenter d'un à chaque fois. Donc, nous allons regarder à travers tout le tableau de cœurs que nous avons créé ici, qui sont nos cœurs que nous avons ajoutés dans l'inspecteur. Ensuite, la prochaine chose que nous devrons faire est de vérifier la vie des joueurs. Donc si on a moi, ok, on va bouger ça. Si nous avons je moins que le nombre de vies de joueur. D' accord ? Nous allons rendre le cœur à la position que j'ai activée égal à vrai. Donc, nous continuerons à activer les cœurs qui montreront un inspecteur d'heure ou sur notre image. Je veux dire, pas l'inspecteur sur notre image dans le Canvas. Ils seront activés tant que si le i est plus petit que le joueur vit, sinon, il éteindra les coeurs. Donc c'est, je, eh bien, je pensais que activé sera égal faux. Ok, alors voyons ce qui se passe ici. Nous avons tout d'abord, la boucle for, et cette boucle for passe par tous les intérieurs de Vi Hart du tableau d'images que nous avons. Donc, et il commence à partir de 0 et il incrémente d'un à chaque fois avec le I plus. Nous avons donc les cœurs que je ne parviens pas. Et ce que cela fait si nous entrons dans l'Unité, nous pouvons voir que si nous choisissons l'un des cœurs, par exemple, le premier, nous pouvons réellement le désactiver. Et cela signifie que l'activation est égale à false. Si nous l'allumons, cela signifie
que l'incapable est égal à vrai. Alors que se passe-t-il ici dans l'état if ? Commençons. Par exemple, nous avons ce i est égal à 0. Nous avons l'IA devrait être, la limite de l'IA devrait être la longueur du cœur et je augmente chaque fois par un. Donc, disons par exemple, nous avons les vies de joueur est égal à deux à la i commence à 0. Le 0 est inférieur à deux ? Il est, cela signifie qu'il permettra au premier cœur car il va incrémenter d'un et ensuite il continuera à faire la boucle. J' en ai moins d'un ? C' est, je veux dire, comme je suis égal à un, est-ce moins de deux, quel est le nombre de vies de joueur ? Il l'est. Donc, il va s'incrémenter et nous allons ajouter le deuxième cœur. Et puis j'incréments est, je devient deux,
est deux de moins que les mensonges de joueur avec seulement deux. Non, ce n'est pas le cas. En fait, c'est égal à deux. Cela signifie que nous allons utiliser l'autre et le cœur final sera activé égal à faux, moins testé et voir si cela fonctionne. J' espère que c'est le cas. C'est un peu déroutant. Cliquez sur jouer. Et ça a arrêté le jeu ici. Donc on peut frapper, vous, passer la porte, on ramasse, ils n'augmentent pas. Si nous sommes frappés, j'espère que l'un des cœurs disparaîtra. Et ils le font. Et comme vous pouvez le voir ici, nous en avons deux. Essayons encore ça. On se fait frapper à nouveau. Nous avons une autre vie qui ramasse ma vie et qui voit s'ils se mettent à jour. Ils se mettent à jour. Très gentil. Donc, j'espère que vous avez apprécié le côté vidéo, mais sur une courte vidéo et comme vous pouvez le voir, la, parce que nous avons amarré la toile sous session de jeu, il est persistant de niveau à niveau. J' espère que vous avez apprécié la vidéo. J' espère que vous apprécierez toute la section de ce cours et je vous verrai dans le prochain.