‫Bienvenue à nouveau et ce chapitre que nous allons construire un clone de fruit ninja, et
‫vous connaissez peut-être le jeu Fruit Ninja si vous ne le connaissez pas et regardez quelques vidéos YouTube, c'est
‫un jeu très basique dans lequel vous devez en trancher fruits et vous le faites simplement avec un coup puis vous les coupez en tranches.
‫Ils tombent et vous obtenez des points et votre objectif est d'obtenir autant de points que possible.
‫Bien sûr, il y a quelque chose qui vous empêche de marquer des points et ce sont des bombes.
‫Donc dès que vous coupez une bombe, vous perdez la partie.
‫D'accord.
‫C'est donc à peu près tout.
‫Il n'y a pas beaucoup plus que cela.
‫Et nous allons construire ces fonctionnalités de base dans ce chapitre.
‫Alors allons-y et créons un nouveau projet et appelons ce clone Fruit Ninja et créons le projet.
‫Dans mon cas, je l'appelle celui-là.
‫Vous n'êtes pas obligé de faire ça.
‫Et c'est juste parce que j'ai déjà un clone quelque part sur mes projets.
‫D'accord.
‫Alors nous y sommes.
‫Allons de l'avant.
‫Et tout d'abord, changez l'arrière-plan de notre appareil photo.
‫Donc je ne veux pas avoir de skybox.
‫Je vais juste utiliser une couleur unie et je vais changer cette couleur pour continuer et choisir une couleur.
‫Et allons-y avec une couleur brunâtre.
‫Portez un badge marron clair, presque génial.
‫C'est donc notre point de départ.
‫Et maintenant, importons les actifs que nous avons car il y a des actifs que vous pouvez télécharger qui
‫sont attachés à cette conférence.
‫Et allons-y et glissons-les tous dans notre jeu.
‫Il y a donc la coupe banane, le mélange banane, BAMP, la coupe orange, le mélange orange.
‫Donc, tous ces fichiers de mélange, qui sont des fichiers de mélangeur et laissez-nous les diriger dans notre jeu.
‫D'accord.
‫Alors maintenant, comme vous pouvez le voir, les actifs ont été créés directement pour nous et les matériaux également.
‫Commençons par créer un dossier pour eux, que je vais appeler des modèles et je vais tous les faire glisser dans
‫leur fichier.
‫Même les matériaux, alors buvons tout ça là-dedans.
‫Très bien, donc tout d'abord, commençons par une orange.
‫Faisons-le glisser dans notre jeu.
‫Comme vous pouvez le voir, c'est l'orange et c'est sa taille.
‫Alors peut-être que c'est un bon choix pour réduire sa taille.
‫Alors ici, allez dans le modèle et modifiez le facteur d'échelle pour en nommer trois, puis appuyez sur Appliquer en bas, comme vous pouvez le
‫voir maintenant, c'est beaucoup plus petit et ce sera une bien meilleure taille.
‫Sinon c'est beaucoup trop gros.
‫Faisons maintenant la même chose avec notre orange coupée ou notre orange, coupez-en trois, puis appuyez sur Appliquer.
‫Je vais juste diriger la coupe orange là aussi, en fait ici.
‫Alors maintenant, vous vous demandez peut-être ce que cela signifie.
‫Eh bien, nous avons une version, qui est l'orange complète, qui n'est pas coupée.
‫Et puis il y a la version coupée, qui est celle qui sera créée dès que
‫nous trancherons ou glissons dans une orange.
‫Et c'est deux morceaux.
‫Il contient donc deux morceaux qui vont ensuite tomber dans des directions différentes.
‫Nous obtiendrons donc cette tranche de sensation de trancher une orange ou en général de trancher un fruit.
‫D'accord.
‫Alors débarrassons-nous à nouveau de la coupe orange, car c'était juste à des fins de démonstration.
‫Alors supprimons la coupe orange ici.
‫Maintenant, l'orange a déjà un animateur, comme vous pouvez le voir, il n'a pas de contrôleur, cependant, et nous n'en aurons
‫pas besoin pour le moment.
‫Alors débarrassons-nous en.
‫Supprimer le composant.
‫Maintenant, nous n'avons que le maillage, rend le maillage filtré et transforme le composant.
‫Et ce que nous devrons ajouter, c'est un corps rigide physique 2D.
‫Maintenant, vous pourriez vous demander pourquoi un copain de physique 2D et pourquoi pas vraiment ?
‫Eh bien, c'est parce que je veux seulement que cette orange se déplace dans la pièce 2D.
‫Il ne devrait donc pas se déplacer vers le.
‫Il devrait se déplacer vers le haut.
‫À gauche.
‫À droite.
‫Mais cela ne devrait pas aller dans un niveau profond.
‫Donc ça ne devrait pas aller au niveau 3D.
‫C'est pourquoi un corps rigide, 2D est le bon corps rigide pour nous.
‫Ajoutons maintenant un autre composant, qui est un collisionneur de cercles physiques 2D, car comme vous pouvez le deviner, notre
‫orange a la forme d'un cercle.
‫Donc, comme vous pouvez le voir maintenant, ce sera le collisionneur 2D qui pourra même mieux voir si nous allons à la
‫buanderie.
‫Maintenant, nous voyons que la petite ligne verte entourant notre orange va être le Circle Collider.
‫Maintenant, le rayon du collisionneur, vous pouvez le trouver ici et vous pouvez le changer, comme vous pouvez le voir ici, en le
‫rendant plus grand ou plus petit.
‫Si vous voulez rendre le jeu plus facile, vous le rendriez plus grand ou vous pourriez même en général agrandir l'ensemble
‫du modèle.
‫Mais l'option trois est le bon rayon pour nous maintenant.
‫Nous pouvions même nous débarrasser de ce décalage parce qu'il était si minime.
‫C'est juste quelque chose que l'unité fait parfois.
‫Eh bien, maintenant le corps rigide va bien.
‫Nous aurons besoin d'une masse.
‫Nous aurons besoin d'une échelle de gravité.
‫Mais ce que nous devrions changer ici, c'est la détection de collision.
‫Le script est bien dans la plupart des jeux, mais nous voulions être super rapide.
‫Nous voulons donc avoir une détection très rapide ici.
‫La détection de collision donc continue est le meilleur choix pour nous car c'est un jeu très rapide dans lequel
‫on tranche l'orange et il devrait réagir très vite.
‫Maintenant, disons que l'orange est un préfabriqué, alors créons un nouveau dossier préfabriqué, un dossier préfabriqué et
‫faisons glisser l'orange ici.
‫Et pendant que nous y sommes, sauvons également la scène.
‫Alors enregistrez des scènes et appelons celle-là.
‫Et puis nous aurons besoin d'un dossier de scripts car nous allons travailler avec des scripts.
‫Alors créons cela aussi.
‫Scripts et allons-y, créez un nouveau script.
‫Je vois un script pointu, pour être précis, et l'appelle fruit.
‫Ouvrons-le maintenant.
‫D'accord.
‫Ici.
‫Ce que nous voulons faire, c'est créer un fruit tranché.
‫Nous aurons donc besoin d'une tranche de préfabriqué pour cela, ce qui veut dire que dès que nous coupons notre orange, nous voulons
‫avoir les morceaux d'orange.
‫Donc les deux les deux parties de notre orange, qui vont tomber dans deux directions différentes.
‫Et c'est quelque chose que nous devons mettre en place ici.
‫Et ce n'est pas seulement pour les oranges, pour tous les fruits avec lesquels nous allons travailler.
‫Créons donc un objet de jeu public appelé sliced fruit prefab, car nous aurons besoin du préfabriqué du sliced fruit, qui
‫est, par exemple, l'orange sliced, puis nous aurons besoin d'une méthode qui découpe le fruit.
‫Je vais donc l'appeler créer des fruits tranchés.
‫Et ce que je veux faire, c'est simplement instancier le fruit tranché.
‫Alors tranché à travers le préfabriqué à quelle position ?
‫Eh bien, à la même position que nos oranges, puis transformez cette rotation.
‫Donc aussi la même rotation que nous avons maintenant, la suivante.
‫Nous devons, bien sûr, détruire toute l'orange, donc notre objet de jeu, qui est l'objet de jeu qui
‫contient le script de fruits ou contient le script de fruits.
‫D'accord.
‫Revenons maintenant à l'unité, car nous n'avons pas encore le préfabriqué, donc nous n'avons pas encore le préfabriqué en tranches.
‫Bien sûr, nous n'avons que le préfabriqué orange.
‫Revenons donc à notre modèle et introduisons à nouveau la coupe orange dans notre jeu.
‫Maintenant, la coupe orange se compose de deux objets différents.
‫Comme vous pouvez le voir ici.
‫Ceci est juste un dossier à peu près, qui contient notre coupe orange à gauche et notre coupe orange.
‫Droit.
‫Il y a donc deux morceaux d'orange.
‫Nous voulons qu'ils volent dans différentes directions dès que cela crée une méthode de fruits tranchés.
‫Alors allons-y et faisons-le.
‫Sélectionnons ces deux pièces coupées et ajoutons un composant.
‫Et maintenant, nous allons ajouter un corps rigide, pas un corps rigide au car nous ne voulons pas seulement les
‫plier sur le côté, nous voulons aussi qu'ils pivotent légèrement.
‫Cela semble donc un peu plus réaliste car les fruits ne tomberont pas toujours parfaitement de chaque côté.
‫Il tournera également un peu.
‫Et c'est quelque chose que nous devons faire avec un corps rigide, 3-D.
‫Maintenant, à propos de la détection de collision, nous pouvons la laisser discrète car ces éléments ne seront pas
‫aussi importants en termes de détection de collision.
‫Nous ne voulons pas qu'ils soient à nouveau tranchés, mais nous avons toujours besoin d'une physique.
‫Collisionneur de boîte.
‫Eh bien, dans ce cas, nous allons utiliser un collisionneur à boîte maintenant ici, bien sûr, un collisionneur à boîte, pas un
‫collisionneur à boîte aujourd'hui car notre corps rigide est un objet 3D.
‫Alors maintenant que nous avons cela, glissons-les dans le dossier de notre préfet.
‫Faisons donc glisser la coupe orange en tant que préfabriqué dans notre dossier de préfabriqués parce que nous voulons avoir les deux
‫pièces et nous voulons avoir un préfabriqué.
‫D'accord.
‫Alors maintenant, nous pouvons nous débarrasser de notre coupe d'orange.
‫Supprimez-le d'ici.
‫Sauvons aussi notre scène.
‫Alors maintenant, l'orange comme celle-ci et le préfabriqué, ils doivent tous les deux avoir le script que nous venons de
‫créer.
‫Ajoutons donc le composant.
‫Ajoutons le script appelé fruit.
‫Maintenant, bien sûr, vous voyez ici, nous aurons besoin d'un préfabriqué de fruits tranchés.
‫Et c'est parfait parce que la coupe orange est un fruit préfabriqué en tranches.
‫Faisons donc glisser cela là-dedans et appliquons cela à notre orange préfabriquée.
‫Sinon, il n'aura pas le script.
‫Vous pouvez donc voir que le préfabriqué a un script qui est vraiment important.
‫D'accord.
‫C'est maintenant que c'est fait.
‫Essayons de faire en sorte que cela se produise.
‫Essayons donc de créer un fruit tranché et nous pouvons utiliser la méthode de mise à jour pour la saisie de l'utilisateur.
‫Donc, si les entrées qui obtiennent la touche enfoncée, dès que l'utilisateur appuie sur une touche et faisons simplement l'espace de code de touche.
‫Donc, dès que quelqu'un appuie sur la touche espace, appelons simplement cette méthode de création de fruits en tranches.
‫D'accord.
‫Alors sauvegardons ce script.
‫Revenons à l'unité.
‫Et maintenant, il est important que nous ayons une orange dans notre hiérarchie car sinon nous n'avons pas
‫d'oranges pour tester cela car nous n'avons pas encore de géniteur.
‫Nous allons donc créer des géniteurs, qui sont nés de fruits et les projeter dans les airs pour pouvoir les trancher.
‫Mais maintenant, nous ne l'avons pas encore.
‫Alors assurons-nous qu'une orange est dans notre jeu et commençons le jeu maintenant.
‫En fait, j'étais trop lent, alors allons un peu plus loin.
‫Allons dans la salle Tuti et montons-la pour que j'aie assez de temps et maximisons et jouons.
‫Et la presse, la clé et comme vous pouvez le voir, le fruit tranché était là, et c'est tout bon, mais bien sûr,
‫ça n'a pas l'air très joli.
‫Il devrait tourner d'une manière ou d'une autre ou devrait se déplacer dans différentes directions.
‫Et c'est ce que nous pouvons obtenir dans nos créations d'aliments en tranches, car nous devons ajouter un corps rigide ici, ce qui
‫provoque une explosion.
‫Et pour ce faire, nous devons faire la chose suivante.
‫Créons donc un corps rigide.
‫Et dans ce cas, nous avons besoin d'un tableau de corps rigides car nous avons des corps trop rigides avec lesquels nous
‫parlons.
‫Donc celui des petits pois tranchés de gauche et celui des petits pois tranchés de droite.
‫Et je vais juste l'appeler r b.
‫S ou corps rigides sur tranché.
‫Et pour l'initialiser, nous avons besoin d'un objet de jeu initialisé avec.
‫Créons donc un objet de jeu et appelons-le instance of now.
‫La méthode d'instanciation doit avoir un objet de jeu devant elle afin que cela non seulement instancie
‫l'objet de jeu, mais crée également un objet de jeu qui est enregistré dans INST.
‫Nous pouvons maintenant l'utiliser à la place pour transformer le composant get en enfants et ici le corps
‫rigide.
‫Je veux donc avoir le corps rigide de chacun des deux morceaux tranchés.
‫Et voici une plainte compacte parce que ce n'est pas un composant chez les enfants, mais ce sont des composants chez les enfants, car
‫ici nous avons un tableau de corps rigides.
‫C'est donc au pluriel.
‫Passons maintenant en revue toutes les différentes pièces que nous avons.
‫Donc, tous ces différents morceaux d'orange tranchés et prendre le corps rigide appelé R dans notre B sur tranché.
‫Nous parcourons donc ce tableau ici et pour chacune des pièces, nous modifions pour transformer la rotation avec une
‫rotation aléatoire.
‫Nous créons donc simplement une ligne aléatoire.
‫TATIAN Et c'est beau parce que vous voyez que la méthode aléatoire a une propriété appelée rotation, qui nous
‫donnera juste une rotation aléatoire.
‫Nous n'avons même pas besoin d'écrire une méthode ici pour effectuer des rotations aléatoires ici.
‫C'est donc plutôt cool avec la classe aléatoire maintenant.
‫Ensuite, nous voulons ajouter une explosion pour que les pièces aillent dans différentes directions et qu'elles soient simplement projetées
‫dans différentes directions.
‫Et comme vous pouvez le voir ici, notre corps rigide a plusieurs méthodes d'ajout de force, d'ajout de force relative, d'ajout
‫de force d'explosion.
‫D'accord.
‫C'est exactement celui que nous voulons avoir.
‫Alors utilisons ça.
‫Comme vous pouvez le voir, il y a plusieurs surcharges et nous allons utiliser celle-ci ici juste avec une force
‫d'explosion.
‫Alors, quelle devrait être la puissance de l'explosion ?
‫La position d'explosion ?
‫Ainsi, la position à partir de laquelle l'explosion doit commencer, puis enfin le rayon d'explosion et la
‫valeur de la force d'explosion doivent être aléatoires.
‫Cela ne devrait pas toujours être le même genre d'explosion, ne devrait pas toujours se ressembler.
‫Alors parfois il devrait s'envoler plus loin, parfois moins loin et ainsi de suite.
‫Créons donc une plage de pensée aléatoire.
‫Et les deux valeurs que je veux utiliser ici sont cinq cent 1000.
‫Je veux donc juste avoir une force d'explosion comprise entre 500 et 1000, ce qui devrait être aléatoire.
‫Ensuite, la position d'explosion doit être transformée en position.
‫Donc la position de l'objet du jeu par rapport à ce qui a explosé.
‫C'est donc dans ce cas sont orange.
‫Donc le centre de notre orange.
‫Et puis finalement, quel devrait être le rayon d'explosion ?
‫Et je vais juste en saisir cinq.
‫C'est juste une valeur que j'ai testée et qui fonctionne bien ici.
‫Alors utilisons cinq F maintenant.
‫Enregistrons cela à nouveau et retournons à Unity.
‫Et maintenant, appuyons sur la touche.
‫Et comme vous pouvez le voir, notre Frood tombe plutôt bien maintenant si nous dupliquons l'orange et repositionnons un peu
‫chaque orange.
‫Modifions donc les valeurs ici.
‫Ensuite, vous verrez à quel point notre petite explosion a l'air cool.
‫D'accord.
‫Et enfin, celui-ci ici aussi.
‫Alors maintenant, recommençons le jeu.
‫Et vous pouvez voir que la rotation est aléatoire et que l'explosion elle-même est également aléatoire, donc ils
‫s'envolent dans différentes directions, différentes personnes, etc.
‫Donc je pense que ça a déjà l'air plutôt cool.
‫Alors tu vois, on fait de super explosions et oui, je pense que c'est bien pour cette vidéo.
‫Et la prochaine vidéo, nous allons vérifier comment faire apparaître ces fruits car maintenant nous devons les faire glisser dans notre scène
‫et ce n'est pas la meilleure solution.
‫Alors sauvegardons la scène comme d'habitude.
‫N'oubliez pas de sauvegarder la scène et à bientôt dans la prochaine vidéo.