Créer un jeu de course en 45 minutes avec Unity3D et C#, de débutant à intermédiaire | Domen Rajterič | Skillshare

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Créer un jeu de course en 45 minutes avec Unity3D et C#, de débutant à intermédiaire

teacher avatar Domen Rajterič, Game Developer

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Introduction

      1:10

    • 2.

      Joueur

      5:45

    • 3.

      Contrôleur

      7:29

    • 4.

      Suivez et Mini Sauts

      4:31

    • 5.

      Menu principal simple

      7:18

    • 6.

      Pie de course !

      4:28

    • 7.

      Commencer, terminer et minerai de minuterie

      13:06

    • 8.

      PROJET DE CLASSE

      1:14

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

492

apprenants

2

projets

À propos de ce cours

Voulez-vous développer le jeu de courses mais vous ne savez pas comment ?

Saler, je m'appelle Domen et nous découvrirons comment créer des jeux de course avec Unity3D et C de C.

Nous apprendrons à développer le contrôleur de voiture et à mettre en œuvre un jeu de jeu réel.

Les jeux de course sont très populaires, alors pourquoi ne nous développerez pas l'un ?

Ce cours abordera à 3 sujets principaux :

1. Prototype - Code de commande de voiture et configuration de base, et configuration de la voiture de base,

2. Menu principal - Interfaces utilisateur de base avec l'arrière-plan et les boutons,

3.  Jeu - la réalisation de contrôleur de voiture dans un jeu réel.

Nous apprendrons à configurer la configuration de votre voiture dans Unity, à écrire le code de son et à ajouter l'interface utilisateur au jeu.

Grâce à ce connaissances, vous pourrez commencer à développer vos propres jeux.

Vous pouvez également rejoindre mon serveur de discorde pour rejoindre d'autres apprenants et partager votre travail :

Rejoignez notre serveur de discorde pour partager votre travail et de vous connecter à la communauté !

Alors, si vous êtes prêt à apprendre les principes de l'unité et à commencer au développement de jeux, vous pouvez bien. Si vous aimez ce cours, n'hésitez pas à class, cela m'aide vraiment vraiment et c'est très apprécié.

Téléchargez des ressources de cours :

> Véhicules

> pistes

Logiciel pour participer à ce cours : Unity 3D et Visual Studio, tous les deux disponibles gratuitement gratuitement.

Rencontrez votre enseignant·e

Teacher Profile Image

Domen Rajterič

Game Developer

Enseignant·e
Level: Beginner

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Introduction: Voulez-vous développer un jeu de course avec Unity ? Bonjour, je m'appelle Donald, et aujourd'hui nous allons découvrir comment créer des jeux de course avec Unity 3D. Nous apprenons vraiment comment développer un contrôleur de voiture et comment l'implémenter dans un vrai jeu. Les jeux de course sont super populaires. Alors pourquoi ne pas faire éloquent ? Cette classe, nous allons couvrir trois sujets principaux. Vraiment apprendre à configurer voiture contrôlant l'humanité, comment écrire du code pour elle, et comment ajouter l'interface utilisateur au jeu. Avec ces connaissances, vous serez en mesure de commencer à développer vos propres jeux. Vous pouvez également rejoindre mon serveur Discord pour vous connecter à d'autres étudiants et partager votre travail. Donc, si vous êtes prêt à apprendre les fondamentaux de Unity et commencer le voyage de développement de jeu. Bienvenue dans ma classe. 2. Joueur: Bonjour et bienvenue dans ma classe. Aujourd'hui, nous faisons de l'unité de jeu de course. Créons un nouveau projet et nommez-le quelque chose comme un jeu de course. Alors que l'unité prépare un nouveau projet, je voudrais vous montrer ce que nous faisons aujourd'hui dans cette classe, nous allons développer un contrôleur de voiture simple à partir de zéro, et nous allons l'utiliser dans le jeu réel. Vous pouvez télécharger véhicule et suivre depuis Unity Asset Store. Je vais fournir des liens dans la description. Le but de ce jeu simple sera de compléter la piste aussi vite que possible. Nous créerons également une minuterie afin que nous puissions rivaliser avec nos amis et notre famille. Plus tard, vous pouvez mettre à niveau le contrôleur défausse et l'utiliser dans votre jeu car il vous offre beaucoup de liberté quand il s'agit de modifier. Alors projettez Israélien, et d'abord, je voudrais réorganiser les fenêtres. Je préfère une colonne affichant la fenêtre du projet. Et aussi, nous n'avons pas besoin de fenêtre de console en ce moment. Tout ce que nous avons au début de la scène échantillon, notre caméra principale et la lumière directionnelle. Plus tard, nous allons créer plus depuis 104 Menu principal et ainsi de suite. Ajoutons un nouvel objet 3D au cube de scène et nommez-le au sol. Notre véhicule conduira sur ce cube, donc nous devons le mettre à l'échelle. Je vais définir X et Z à 256. Nous utiliserons cet objet au sol pour développer un prototype de notre contrôleur automobile. Pour le faire fonctionner, nous devons créer une nouvelle couche de sol et nous ajouterons notre cube à cette couche. Vous pouvez utiliser n'importe quel emplacement vide. Je vais utiliser la fente 8. Ensuite, nous devons revenir sur l'objet au sol et mettre sa couche à la terre. Maintenant, nous sommes prêts à ajouter le joueur, créer un nouvel objet vide et le nommer joueur. Pour les graphiques, nous allons revisiter le Unity Asset Store, où vous pouvez trouver des milliers d'actifs gratuits et premium. Nous sommes à la recherche d'un véhicule conventionnel qui peut être utilisé dans R Encore une fois, vous pouvez utiliser à peu près n'importe quelle vacuole acide comme. Mais si vous voulez suivre ce tutoriel et faire exactement le même jeu, je vais fournir des liens vers les acides que j'utilise. Je vais télécharger ce pack gratuit car il a beaucoup de voitures différentes et personnalisables. Une fois que vous avez téléchargé les ressources, nous devons toujours les importer dans le projet lui-même. Pour ce faire, nous devons ouvrir Package Manager, qui peut être trouvé sous Windows Package Manager. Ouvrez ensuite mes ressources et vous verrez chaque ressource que vous avez téléchargée depuis Unity Asset Store. Trouvez le paquet avec des véhicules et importez-le dans le projet. Après cela, nous pouvons les trouver, utilisé les graphiques du paquet importé, ouvrir, trouver le dossier appelé exemples, et utiliser l'un des véhicules du dossier. Je vais utiliser bundle, le faire glisser sur la scène et le placer à l'intérieur de l'objet joueur. Comme vous pouvez le voir, je dois repositionner mon joueur. Donc, je vais sélectionner l'objet joueur et ajuster la position de celui-ci. Donc, nous avons des graphiques, et maintenant il est temps de configurer notre lecteur, sélectionner l'objet joueur et ajouter un nouvel élément 3D à elle. Cette fois, nous allons utiliser la sphère. En fait, notre contrôleur de voiture va bouger cette sphère et le corps la suivra. J' augmenterai le rayon du collisionneur de sphère à un. Ainsi, nous pouvons détecter les collisions avec d'autres objets. Nous pouvons également désactiver Mesh Collider pour rendre notre sphère invisible. Pour déplacer la sphère et le joueur autour, nous devons attacher un corps rigide, ce qui donne aux objets des capacités physiques. Je vais changer la masse à 70, glisser et Jack angulaire à quatre. Définissez l'interpolation à extrapoler. Cela rendra le mouvement des objets de joueur entiers mortier, et changera la détection de collision en continu. Nous devons ajouter un autre objet vide au lecteur. Nous allons utiliser cet objet pour détecter sur quelle couche conduisent vraiment. Je vais le nommer vérification au sol. Joue cet objet dans la moitié inférieure du lecteur. Et plus tard, si vous avez des problèmes avec la détection des valeurs aberrantes, essayez de repositionner cet objet car il peut ne pas être placé correctement en ce moment. Cela dépend vraiment de vos graphismes et de la taille de votre sphère. Pour moi, cela devrait marcher. J' espère. Enfin, nous pouvons commencer à coder, sélectionner notre lecteur et ajouter un nouveau script appelé contrôleur de voiture, et double-cliquer sur le nouveau composant pour ouvrir le script dans Visual Studio, nous allons écrire du code dans la prochaine vidéo. Et après cela, vous aurez un contrôleur de voiture entièrement fonctionnel qui peut être utilisé dans un vrai jeu. Alors on se voit dans la prochaine vidéo. 3. Contrôleur: Nous sommes de retour et il est temps de commencer à coder notre contrôleur de voiture. Dans le script que nous avons créé précédemment, nous devons déclarer quelques variables. Le premier sera le corps rigide public. Je nommerai le mien RB. Cela se connectera à un corps rigide de la sphère avec le script. Ensuite, nous avons besoin d'un tas de variables flottantes publiques vers l'avant et la vitesse inverse. Je vais définir les valeurs à 105. Et bien sûr, vous pouvez changer ces valeurs quand vous le souhaitez. Prochain terme, brin, ou comment notre voiture peut tourner dans les virages. La force de gravité est assez explicite. Rayon de Jack, et la traînée affectera notre voiture en fonction de la surface. Et enfin, max va tourner pour faire tourner les roues avant de notre voiture. Après cela, Déclarons aux flotteurs privés, vitesse d'entrée et entrée de rotation. Nous allons stocker l'entrée de l'utilisateur dans ces variables et d'autres variables privées. Cette fois, nous avons besoin de booléen pour vérifier si le rival est mis à la terre ou au milieu du saut, alors nous devons dire à notre script quelle couche dans le jeu représente le sol. C' est pourquoi nous rendons ces vêtements publics. Enfin, trois variables de transformation publique. Le sol, vérifier à gauche, la roue avant, et écrire la roue avant pour se connecter. Nous sommes des images clipart avec descript. Et c'est tout pour les variables. Nous pouvons passer à la méthode de départ, où nous avons besoin d'une seule ligne de code pour l'instant, nous allons définir le parent de notre corps rigide à noter, ce qui est la deuxième partie de rendre le mouvement de l'objet joueur entier plus lisse avant que nous ayons déjà défini l'interpolation à extrapoler. Maintenant, passons à la fonction de mise à jour. Avoir beaucoup plus de codage à faire ici. Tout d'abord, à chaque mise à jour, nous réinitialiserons les entrées de vitesse à 0. Et puis nous allons vérifier si l'utilisateur appuie sur l'un des boutons haut et bas. Dans la première instruction if, nous appliquons la vitesse en avant multipliée par 1000. C' est dans le cas où l'utilisateur veut aller de l'avant. Si l'utilisateur appuie sur le bouton, nous devons appliquer à nouveau une vitesse inverse, multipliée par 1000. Comme je l'ai déjà dit, vous pouvez toujours changer ces valeurs à votre goût. Nous avons donc une entrée crachée, mais nous l'appliquerons au véhicule plus tard dans une autre fonction. Maintenant, rendons notre véhicule capable de tourner l'entrée réelle de l'utilisateur du magasin à partir des boutons gauche et droit pour tourner la variable d'entrée. Et tout de suite, nous pouvons faire tourner notre réapparition. Mais je veux m'assurer que nous Achille échoués quand nous essayons de le faire tourner. C' est pour ça qu'on va utiliser une autre déclaration if, en vérifiant si on est puni. Et si nous sommes en effet punis, nous pouvons irriter la voiture. Nous devons utiliser notre tapis ici. Comme vous pouvez le voir, je multiplie tout avec une entrée verticale ici. Vous pouvez demander, pourquoi n'est pas l'entrée verticale pour la vitesse ? Et vous avez raison ? Mais nous voulons nous assurer que nous sommes curl est sur irritant quand nous avançons ou reculons et pas quand nous sommes debout immobile. Et c'est la solution la plus simple. Tourner les roues est assez similaire, mais au lieu de la rotation, nous modifions la rotation locale. Tout d'abord, nous allons tourner la roue avant gauche. Et puis nous pouvons copier cette ligne et remplacer la roue avant gauche par la roue avant droite. Enfin, nous définissons la position du joueur pour être égale à la position du corps rigide. C' est tout pour la fonction de mise à jour, tout le reste sera écrit dans leur fonction de mise à jour fixe. Quelle est la différence entre les fonctions de mise à jour et de mise à jour fixe ? La fonction de mise à jour est appelée une fois par trame et mise à jour fixe est appelée exactement 50 fois par seconde. Donc, lorsque nous voulons appliquer de la physique lourde aux objets, il est recommandé d'utiliser la mise à jour fixe. Tout d'abord, nous allons déclarer un h02 refondu comestible appelé chaleur. Dans cette variable, nous pouvons stocker des informations sur les objets que nous entrons en collision avec vous. Nous verrons pourquoi cela est utile. Ensuite, nous allons tirer tableau invisible de notre terrain, vérifier en direction descendante. Et si vous frappez quoi que ce soit, nous stockerons des informations sur cet objet dans des vêtements chauffants. Nous devons dire jusqu'où nous voulons que notre taux aille. Et exactement pour cela, nous avons la variable de rayon de contrôle. Et enfin, nous devons spécifier pour quelle couche nous recherchons. Donc, en bref, si nous frappons le joueur au sol est échoué, nous aurons notre valeur de vrai. Si ce n'est pas puni sera pour nous. Je veux également que mon véhicule ait la même rotation que la couche de sol sous le véhicule. Et c'est là que nous pouvons utiliser la chaleur partout où nous allons définir la rotation du joueur comme la rotation de la couche de sol. Ensuite, avec la dernière déclaration if, nous vérifierons si nous sommes à la terre. Si oui, et si nous essayons d'appliquer la vitesse en avant ou en marche arrière, nous pouvons enfin utiliser l'entrée de broche de la fonction de mise à jour. Si vous n'êtes pas mis à la terre, alors nous devons ajouter de la gravité à l'ouvrier pour le faire glisser vers le bas. Et c'est enfin ça pour le script du contrôleur de panier. J' espère vraiment que tu es toujours avec moi parce que tout ce qui est dur est fait. Et maintenant, il est temps de voir le contrôleur de chariot en action. Assurez-vous d'enregistrer le script et de revenir à Unity. Dans l'unité, nous avons encore besoin de connecter le script avec certains composants de voiture. abord, faites glisser dans la sphère sur la première fente vide, où nous devons faire référence au corps rigide. Ensuite, nous devons dire quelle couche représente le sol. Et pour cette raison, nous avons créé une couche de sol plus tôt. Ensuite, en faisant glisser le cric de sol. Et enfin connecter les roues avant avec le script. Trouvez quelle libération avant gauche et qui est avant droite. Ensuite, faites-les glisser sur les derniers emplacements vides. Et c'est tout. Le contrôleur de chariot devrait maintenant fonctionner. Bien sûr, on peut le tester. Vous verrez que la caméra ne suit actuellement pas le joueur, et nous allons corriger cela bientôt. Mais les contrôleurs semblent fonctionner et les roues tournent aussi, comme vous pouvez le voir. Donc, le contrôleur est prêt si vous avez des problèmes, essayez de regarder à nouveau le lecteur ou envoyez-moi une question. Dans la vidéo suivante, nous allons faire une caméra suivi le lecteur. Alors, à vous voir. 4. Suivez et Mini Sauts: Bienvenue de retour. Il est temps de découvrir comment faire suivre l'appareil photo le joueur. En ce moment, la caméra principale est fixée au même endroit. Mais je voulais suivre l'aquarelle quand on conduit. Et c'est vraiment facile à faire. Nous allons utiliser le paquet intégré appelé machine de cinéma. Encore une fois, nous devons ouvrir Package Manager. Vous le trouverez sous Windows Package Manager. Ensuite, affichez tous les paquets dans Unity Registry et recherchez une machine de cinéma. Cliquez sur Installer et attendez que les packages soient prêts. Après cela, vous trouverez la feuille de cinéma dans la barre d'outils supérieure. Sélectionnez la première option, qui est de créer une caméra virtuelle. Ces nouvelles caméras virtuelles prendront des instructions sur ce qu'il faut suivre et comment le suivre. Puis enfin, votre objet caméra dans la hiérarchie. Je vais renommer la mienne en caméra virtuelle. Ensuite, nous devons spécifier quel objet nous voulons suivre avec la caméra. Pour ce faire, il suffit de faire glisser l'objet lecteur vers deux emplacements vides où nous pouvons dire quel objet nous voulons suivre et quels sont les objets que nous voulons regarder. Après cela, nous avons eu beaucoup d'options pour modifier la caméra. Nous allons légèrement changer le point de vue pour avoir un meilleur regard sur la voiture et le camion. Aller sous le corps et ajuster le décalage de suivi. Vous devrez jouer avec deux valeurs pour trouver la meilleure vue pour votre jeu. Je pense que pour moi, Pourquoi peut être entre 34 et z autour du barrage ou 12 ? Et c'est tout pour la caméra. Maintenant, va le tester. Comme vous pouvez le voir, mon appareil photo suit le joueur et je peux enfin conduire autour de ce cube ennuyeux. Mais nous aurons bientôt une course de tracteurs, ne vous inquiétez pas. Vous pouvez également voir que le mouvement n'est pas aussi lisse que nous le voulons. Heureusement, il y a une solution facile à ce problème. Dans la fenêtre du projet. Créez un nouveau matériel physique et nommez-le comme vous le souhaitez. Je vais simplement le laisser tel quel. Ensuite, réglez le frottement sur 0. Et maintenant, nous pouvons appliquer ce matériau à Box Collider de l'objet au sol. Avec ce sou, le mouvement de la voiture devrait être lisse. Testé. Et le conteneur de voiture Wallah fonctionne parfaitement. Nous avons un mouvement de voiture lisse et pouvons enfin l'utiliser sur la voie ferrée. Mais avant de continuer, je voudrais tester une fonctionnalité de plus dans ce contrôleur de voiture. Si vous vous en souvenez, notre contrôleur a la possibilité ajuster l'angle du véhicule à l'angle de la surface. Alors ajoutons mini sauté au jeu pour savoir si cela fonctionne. Nous pouvons utiliser le cube 3D. Encore une fois. Je vais renommer le mien pour sauter. Ensuite, nous devons le mettre à l'échelle. Je vais mettre X et Z à 10. Nous devons également modifier la rotation supplémentaire, et bien sûr, nous devons ajuster la position. Et juste comme ça, nous avons un saut testé et il semble que tout fonctionne bien. Maintenant, je vais supprimer cet objet de saut et en faire un autre par la plus grande extrémité avec du matériel personnalisé. Il sera donc plus visible. Il suffit de créer un nouveau matériau, définir la couleur personnalisée et appliqué au saut. Vous verrez que j'ai oublié de définir la couche de l'objet de saut pour être rectifié. C' est pour ça que je perds de vitesse sur le saut. Il suffit de définir la couche des objets indésirables pour être rectifié et tout fonctionnera parfaitement. Enfin, nous avons entièrement le contrôleur de voiture prêt, et il est temps de l'utiliser dans un vrai jeu. Et c'est exactement ce que nous allons faire dans la prochaine vidéo. Alors, à vous voir. 5. Menu principal simple: Une partie importante de tout jeu est le menu principal, et je vais vous montrer comment en faire un. Bien sûr, ce menu sera très simple avec seulement deux boutons. Mais après ce chapitre, vous pourrez également créer des menus plus complexes. Alors mettons-nous au travail. ce moment. Nous sommes par défaut semblait aussi appelé exemple scène pour le menu principal. Grande nouvelle fenêtre de projet senior et nommez-le manuel. Double-cliquez dessus. Et on peut voir une nouvelle scène vide, comme avant. Passez la vue en 2D parce que le menu sera bidimensionnel et nous pouvons commencer à ajouter des éléments à l'écran. Vous trouverez sur les éléments inutiles sous Interface utilisateur ou interface utilisateur courte. abord, nous devons ajouter Canvas, qui servira de base pour d'autres éléments comme le fond et les boutons. Vous pouvez le renommer ou simplement le laisser en tant que canevas. Ça n'a pas vraiment d'importance. L' élément suivant, que nous allons ajouter sur Canvas est l'image. Ce sera notre expérience. Vous pouvez définir la couleur de l'arrière-plan à n'importe quelle couleur que vous voulez. Pour moi, ce gris foncé fera le travail. Nous devons également étirer notre image pour couvrir l'ensemble de l'écran. C' est pour l'arrière-plan. Vous pouvez bien sûr, ajouter votre propre image personnalisée pour l'arrière-plan ou jouer avec les couleurs. Maintenant, nous avons besoin de quelques boutons. Encore une fois, allez sous l'interface utilisateur et trouver l'élément appelé bouton. Mon menu aura deux boutons, jouer et sortir. Ce sera mon bouton Play. Je veux supprimer l'image source, mais ce n'est pas nécessaire. Tu peux le laisser si tu es comme. Je voudrais également avoir une couleur différente en surbrillance pour lorsque l'utilisateur passe le curseur sur le bouton avec la souris. Allons avec la menace et ledit navigation du bouton à non appuyer sur Play. Et voyons si le bouton devient rouge quand nous allons notre RET Mars. Et en effet, c'est le cas. Super. moment, ce bouton est un peu petit et je veux le redimensionner. Tweetons à 200 ou 300 et hauteur 200. Ok, on doit encore changer le texte en bas. Si vous étendez le bouton, vous pouvez voir que le texte est séparé élément. Et si nous cliquons dessus, nous sommes en mesure de tout modifier, de la couleur à la taille et la police. Ce bouton affichera un texte simple disant jouer. Le style de police sera chauve et la taille de la police, disons 50. Je veux avoir l'alignement central sur les deux axes et la couleur du texte sera la même que la couleur de l'arrière-plan. Pour obtenir le deuxième bouton, nous pouvons simplement dupliquer le bouton Play, cliquez avec le bouton droit de la souris et sélectionnez Dupliquer ou appuyez sur Commande Plus D sur le clavier. Ensuite, définissez la position du second bouton. Bien sûr, nous devons le renommer et nous devons changer le texte pour quitter ou quitter. Tout comme ça, nous avons deux boutons et nous sommes prêts à leur ajouter des fonctionnalités, ce qui signifie que nous allons coder. Encore une fois. Nous allons créer un nouveau script appelé Menu Manager. Nous pouvons créer un nouvel objet vide, qui servira de gestionnaire de menu. Vous pouvez également attacher le script à n'importe quel objet de la hiérarchie. Je préfère la première option. Une fois que nous avons le script Menu Manager, nous pouvons commencer à coder. Chaque fois que nous voulons travailler avec des scènes, nous devons importer Unity Engine dot sin management. Cela nous permet de charger deux sons différents du script. Nous pouvons supprimer les deux méthodes par défaut car nous n'en avons pas besoin pour le moment. Ensuite, nous allons créer une nouvelle méthode publique appelée bouton Play pressé. Il doit être public afin que nous puissions l'utiliser plus tard dans Unity Editor. Lorsque l'utilisateur va appuyer sur le bouton Play, cette méthode sera appelée et il va charger notre écran de jeu ou de scène échantillon. Nous verrons lors de l'utilisation de la scène de chargement de point Gestionnaire de scène, nous pouvons mieux dans le nom exact de la scène que nous voulons charger, par exemple, scène échantillon. Et il doit être enveloppé entre guillemets. Au lieu du nom, nous pouvons utiliser index, que je vais vous montrer plus tard comment obtenir ou comment trouver l'index de chaque scène. Mais je n'utiliserai rien de tout ça. Au lieu de cela, je vais obtenir l'index du péché actif, qui est manuel. Et dans ce cas, je vais simplement charger la scène suivante dans la méthode de hiérarchie, qui sera appelée lorsque l'utilisateur appuie sur le bouton de sortie est encore plus simple. Encore une fois, il doit être public. Le mien est appelé bouton de sortie enfoncé. Et la seule ligne de code va comme cette application, pas quitter. Et c'est tout. Mais ceux-ci ne fonctionneront pas à l'intérieur de l'éditeur Unity. Cela ne fonctionne que lorsque nous exportons le jeu. C' est pourquoi j'ajoute le journal de points de débogage pour voir si le bouton fonctionne, enregistrez le script et revenez à Unity. Nous avons besoin de connecter ces deux boutons avec des fonctions que nous venons de sélectionner le monde bouton Play et ajouter un nouvel événement onclick sur la liste. Faites ensuite glisser l'objet avec le script Menu Manager. Dans mon cas, c'est l'objet du gestionnaire de menu et trouver la méthode pression sur le bouton de lecture. Répétez le processus avec le bouton Quitter. Mais bien sûr cette fois, sélectionnez Quitter bouton pressé méthode. Nous avons presque fini. J' ai toujours besoin de vous montrer comment ajouter des scènes à la construction finale et comment obtenir l'index de chaque scène. À cet effet, je vais créer de nouveaux jeux semblent vous montrer comment fonctionner avec plusieurs scènes. Plus tard, nous n'utiliserons pas cette scène exacte. Donc, vous pouvez juste me regarder montrer ce processus. Allez sous Paramètres de construction de fichier. Et vous verrez que notre liste de scènes dans build est actuellement vide. J' ajouterai le menu et le jeu à cette liste. Comme vous pouvez le voir à droite, chaque scène a son propre index à partir de 0. Donc, si je veux charger, disons le menu, je peux simplement taper 0 dans Scene Manager et le menu sera chargé. Nous pouvons maintenant essayer si tout fonctionne. Alors fermez la fenêtre, nous reviendrons plus tard. Appuyez sur Lecture, et voyons ce qui se passe lorsque j'appuie sur Sortie. Bouton de sortie pressé message, ce qui signifie que le bouton de sortie fonctionne. Et si j'appuie sur Play, GameScene est chargé et génial. Mainmenu travaille avec cela fait, il est enfin temps d'ajouter la piste de course de relais au jeu. Et c'est ce que nous allons faire dans le prochain chapitre. On se voit alors. 6. Pie de course !: Il est enfin temps d'ajouter une vraie piste de course au jeu. Jusqu' à présent, nous avons développé un contrôleur de chariot entièrement fonctionnel. Et ce serait bien si nous pouvions le tester sur une piste de course. C' est pourquoi nous visiterons à nouveau Unity Asset Store et nous essaierons de trouver une piste de course ou une route pour notre jeu. J' utiliserai un paquet appelé pistes de course, qui est livré avec deux cartes. Et j'aime vraiment ça. Mais bien sûr, vous pouvez utiliser n'importe quel paquet que vous voulez. N' ayez pas peur d'explorer tous les actifs disponibles sur Unity Asset Store. Peut-être que tu trouveras quelque chose pour ton futur jeu. Une fois que vous avez choisi votre titre, n' oubliez pas de le télécharger. Ensuite, nous pourrons retourner à Unity. Comme précédemment, nous devons utiliser le gestionnaire de paquets pour importer une piste de course dans le projet. Ouvrez Window Package Manager, mes actifs. Trouvez votre paquet et importé mon paquet coûts qui font déjà des scènes préparées, et je vais utiliser l'un d'eux pour mon jeu. La scène que je vais utiliser est appelée piste de printemps. Cette carte est énorme et je suppose que le joueur prendra trois à quatre minutes du début à la fin. J' ai également l'intention d'ajouter une minuterie pour que nous puissions rivaliser avec nos amis, mais nous le ferons plus tard. Tout d'abord, nous allons ajouter l'apparence actuelle aux paramètres de construction. Et en même temps, nous pouvons supprimer la scène de jeu de la liste parce que nous ne l'utiliserons pas. Nous avons également besoin d'ajouter tous les objets vus sur le joueur au sol. C' est comme ça que fonctionne notre contrôleur de voiture. Enfin, il est temps d'ajouter à la scène. Nous avons créé le joueur avant, le péché dans l'échantillon et nous pouvons le réutiliser. Nous n'avons pas besoin d'en créer un nouveau à partir de zéro. Il suffit d'aller à l'échantillon sin, sélectionnez joueur, et faites-le glisser dans le dossier Assets. De cette façon, nous allons créer prefab est un objet qui peut être réutilisé autant de fois que nous le voulons. Ensuite, revenez à notre piste sélectionnée et ajoutez simplement un préfabriqué du joueur à la scène. Juste comme ça, réglez la rotation. Et nous avons presque fini. Nous avons encore besoin d'ajouter une caméra virtuelle, comme nous l'avons fait dans la première scène en utilisant la machine Cinema. Nous savons déjà comment le mettre en place. Alors faisons-le. Nous voulons suivre le joueur et utiliser les mêmes valeurs de décalage comme vous l'avez fait auparavant. Et maintenant, moment de vérité, ça marchera ? Appuyez sur Lecture. Et après quelques secondes, nous pouvons voir que nos commandes de voiture fonctionnent correctement sur une vraie piste de course. Super. Encore une fois, le mouvement du véhicule n'est pas lisse comme il se doit, car nous sommes toujours en train de subir des frottements de la route. Mais la bonne nouvelle est nous pouvons utiliser du matériel physique que nous avons créé au début de la classe. mauvaise nouvelle est que nous devons appliquer du matériel physique à zone et à chaque objet de scène qui a n'importe quel type de Collider, et cela peut prendre un certain temps. Je vais donc avancer rapidement cette partie. Ok, nous sommes prêts à réessayer. Cette fois, tout devrait fonctionner correctement. Appuyez sur Play, et nous avons enfin un contrôleur de voiture entièrement fonctionnel avec un mouvement en douceur. Peut-être que ce n'est pas le cas sur l'appareil photo, mais c'est parce que j'enregistre l'écran et que mon ordinateur n'est pas vraiment puissant. J' espère que vous êtes contrôleur fonctionne aussi. Si vous n'avez pas essayé de répéter les étapes précédentes ou de m'envoyer une question, nous trouverons une solution ensemble. Dans le chapitre suivant, nous allons ajouter une minuterie au jeu, et je suis déjà impatient de le faire. Mer. 7. Commencer, terminer et minerai de minuterie: Lorsque nous avons des mécanismes de base prêts, il est temps d'ajouter une interface utilisateur dans le jeu. Nous commencerons par une minuterie. Chaque fois que nous travaillons avec l'interface utilisateur, nous devons basculer la vue de scène en 2D, comme nous l'avons fait avec le menu. Nous devons avoir une base pour notre utilisation une interface. Et pour cela, nous allons utiliser Canvas. Je vais vous renommer ma toile, mais ce n'est pas nécessaire. Vous pouvez le laisser tel qu'il est. Ensuite, sur Canvas, nous allons ajouter des prises qui afficheront le temps. Je vais déplacer ma minuterie textos coin supérieur gauche. Et bien sûr, ajustez l'apparence de chacun à votre goût. Mon texte sera en couleur blanche. La police sera achetée. Font-size 32 et alignement réglé sur le centre. Je voudrais également avoir un second texte qui affichera un enregistrement de la piste. Pour ce faire, je vais simplement dupliquer le texte de la minuterie, puis déplacer le texte de l'enregistrement vers le bas. N' oubliez pas de renommer le deuxième texte et peut-être choisir une couleur différente. Je veux que mes textes soient en couleur rouge, mais c'est tout à fait à vous de décider. Maintenant, nous devons créer un objet vide qui servira de gestionnaire de jeu ou de gestionnaire de jeu. Tu peux le nommer comme tu veux. Nous allons écrire le script du gestionnaire de jeu, qui prendra soin du timing et de sauver nos temps records. Donc, créez un nouveau script et ouvrez-le. D' abord. Si nous voulons travailler avec l'interface utilisateur, nous devons importer Unity engine wi. Deuxièmement, nous devons déclarer quelques variables. Nous commencerons avec deux wearables de texte public, Timer, Text, Entry record textes. Ceux-ci stockeront le texte que nous voulons afficher dans un jeu. Dans ce jeu, le temps passé, entrez le temps record. Ensuite, nous devons déclarer à des variables flottantes privées, minuteur et enregistrement. Ceux-ci stockeront les valeurs de temps réelles dans le forum flottant. La valeur par défaut de la minuterie est définie sur 0. Et la dernière variable sera booléen privé appelé minuteur en cours d'exécution. Cette variable sera utilisée pour démarrer et arrêter le minuteur, et nous aurons une valeur par défaut de force. Ce sont toutes les variables dont nous avons besoin. Et nous pouvons continuer avec la méthode de départ. La méthode de démarrage, nous allons verrouiller pointeur de la souris sur l'écran de jeu pour l'empêcher de passer de l'écran. Nous pouvons le faire avec une simple ligne de code, définissant l'état de verrouillage du pointeur sur verrouillé. Puis quelque chose d'un peu plus compliqué, mais je vais essayer de tout expliquer en cours de route. Lorsque GameStart, nous voulons vérifier si nous avons une valeur enregistrée pour un temps record. Parce que si nous l'avons fait, nous pouvons l'afficher à l'écran et le joueur saura à quelle heure il ou elle a besoin de battre. Si ce n'est pas le cas, nous allons définir les enregistrements ont pu 0 car nous opérons avec des données simples. Nous n'avons qu'un seul flux à comestible. En fait, nous pouvons utiliser le flou peut-être pour le sauver. Nous pouvons enregistrer différentes valeurs sous des clés spécifiques que nous devons spécifier. Et parce que nous économisons un temps record, je vais nommer mon disque d'encre. Tu peux le nommer comme tu veux. Soyez prudent lors de l'orthographe. Et si vous avez besoin d'accéder à la clé préfs de l'échantillonneur plusieurs fois, il serait conseillé de déclarer une chaîne privée comparable au nom de la clé, puis d'utiliser cette variable au lieu de taper le nom de la clé encore et encore. Dans la première instruction if, nous vérifions si nous avons une clé d'enregistrement existante et si nous le faisons, nous appliquons sa valeur à la variable d'enregistrement. Si ce n'est pas le cas, nous mettons simplement le caractère à arable à 0. Avant de sauter dans la méthode de mise à jour, je voudrais déclarer une nouvelle méthode appelée temps d'affichage, qui prendra également le paramètre défectueux appelé Time à afficher. Dans cette méthode, nous allons prendre float wearable avec notre heure actuelle et nous allons l'afficher dans un format spécifique en utilisant notre texte de minuterie. Nous divisons le temps pour afficher n'importe où en minutes, secondes et millisecondes. Pour obtenir des minutes, nous devons diviser le temps pour afficher où wl par 16, car il y a 60 secondes en une minute bien sûr. Ensuite, pour obtenir des secondes, nous devons utiliser l'opérateur modulo. Encore une fois, nous divisons le temps pour afficher la variable par 60, mais cette fois nous obtenons le reste de cette opération, et cela représente nos secondes. Pour obtenir des millisecondes, nous devons multiplier temps d'affichage par 1000, puis le diviser par 1000. Et le reste de cette opération représente nos millisecondes. Nous utilisons à nouveau l'opérateur modulo. Maintenant, pour afficher ces valeurs à l'écran, nous devons spécifier le format de Timer Text. En premier lieu, il y aura des minutes. La deuxième place est quatre secondes, et la troisième place, quatre millisecondes. Entre les minutes et les secondes, il y aura deux-points, et entre les secondes et les millisecondes, il sera point. Dans la méthode de mise à jour. Nous allons utiliser if instruction pour vérifier si la minuterie est en cours d'exécution. Si oui, nous ajouterons du temps à temps sont disponibles et afficherons une nouvelle heure. Si ce n'est pas le cas, nous afficherons simplement l'heure à l'écran. Bien sûr, nous avons encore besoin d'un moyen de démarrer et d'arrêter minuteur. C' est pourquoi nous allons créer deux méthodes publiques. Un pour démarrer une minuterie et pour arrêter la minuterie. Dans le premier, nous allons définir la variable en cours d'exécution de minuterie sur true. Dans le second, nous allons définir un minuteur en cours d'exécution précieux pour forcer et nous assurer que les deux méthodes sont publiques, afin que nous puissions les appeler à partir d'autres scripts. Nous allons également créer une méthode privée pour afficher un temps record à l'écran. mien sera appelé l'enregistrement d'affichage, et il faudra un paramètre flottant appelé son enregistrement. Pour transformer un paramètre d'enregistrement en secondes, minutes et millisecondes. Nous pouvons copier le code de la méthode de colorant affichée. Assurez-vous simplement de remplacer tous les noms de variables. Au lieu de temps pour afficher, utilisez un enregistrement et au lieu du texte de minuterie, nous devons utiliser les enregistrements txt. Ensuite, revenez à la méthode de démarrage et ci-dessous si instruction appelée afficher une méthode d'enregistrement avec la variable d'enregistrement en tant que paramètre. Donc, quand le temps record de GameStart sera affiché l'écran et nous saurons quelle heure nous devons battre quand nous terminerons la course. Nous voulons vérifier si nous avons établi de nouveaux records. Nous pouvons utiliser la méthode de diamant stop pour cela parce que cette méthode sera appelée exactement lorsque nous passons la ligne d'arrivée. Avec chaque déclaration, nous vérifierons si notre temps est meilleur que le temps record. Si c'est le cas, nous gagnerons notre temps en tant que nouveau record. Nous économiserons également notre temps en enregistrant la première fois que nous avons essayé d'augmenter cette piste et notre record actuel est 0. Après instruction IF, assurez-vous que vous appelez la fonction d'enregistrements d'affichage une fois de plus, Dan enregistrer descript et retourné à l'unité. Comme vous pouvez le voir, nous avons deux nouveaux emplacements vides dans le gestionnaire de jeu, un pour le texte de minuterie et un pour le texte d'enregistrement. Assurez-vous de connecter les deux éléments de l'interface utilisateur avec des emplacements corrects. Ok, donc notre minuterie est terminée. La seule chose qui manque est un déclencheur qui va démarrer et arrêter la minuterie. Fondamentalement, nous avons besoin d'une sorte de ligne de départ et d'arrivée. Pour cela, nous pouvons utiliser un cube 3D simple, le mettre à l'échelle et ajuster la rotation. Je vais mettre x à 22 y 210. Ce groupe a déjà un collisionneur de boîte, ce qui signifie que nous pouvons détecter quand nous sommes froid passer un client étoile. Assurez-vous juste de régler le collisionneur à déclencher afin que le véhicule puisse passer par cet objet pour le rendre invisible. Je vais désactiver le rendu de maillage. cadre de l'objet de démarrage, j'ajouterai deux piliers de chaque côté de la route, afin que le joueur sache où redémarrer. Je vais utiliser le cube 3D à nouveau, mais cette fois j'ai besoin de le réduire. Je vais définir la valeur X à 0,1. Déplacer le premier milliard sur sa position. Ensuite, nous pouvons le reproduire et nous avons notre deuxième pilier, quatre autres côtés de la route. S' il vous plaît réserver des piliers sur la position correcte et les renommer si vous voulez garder un projet organisé. Maintenant, il est temps d'ajouter des fonctionnalités, sélectionner l'objet de démarrage et de créer un nouveau script appelé Démarrer ou quelque chose comme ça. Alors ouvre-le. Supprimez les deux méthodes par défaut car nous ne les utiliserons pas. Ce script n'aura qu'une seule tâche pour démarrer la minuterie. Et pour démarrer la minuterie, nous devons appeler la méthode du minuteur de démarrage à l'intérieur du script du gestionnaire de jeu, ce qui signifie que nous avons besoin d'une référence publique au script. C' est pourquoi nous allons déclarer le jeu public remis variable. Vous pouvez à nouveau le nommer comme vous le souhaitez. Le mien s'appellera le gestionnaire de jeu. Si vous vous souvenez, Box Collider sur cet objet est déclencheur, qui signifie que lorsque nous allons entrer en collision avec l'objet Start On Trigger Entrée méthode sera appelée. Et là, nous pouvons appeler la méthode du minuteur de démarrage en utilisant notre référence de gestionnaire de jeu. C' est tout pour le script de démarrage, enregistrez-le et retourné à l'unité. Nous avons une nouvelle fente vide et nous devons faire glisser l'objet avec le script des gestionnaires de jeu. Dans mon cas, c'est l'objet Game Manager. Tout comme ça, nous avons connecté gestionnaire de jeu qui ligne de départ, et nous avons notre poids pour démarrer notre minuterie. En parlant d'un gestionnaire de jeu, je vais le renommer en gestionnaire de jeu pour éviter toute confusion. Pour arrêter le minuteur répétera toutes les étapes. Mais au lieu de la minuterie de démarrage, nous allons appeler une méthode de temporisation d'arrêt, dupliquer l'objet de démarrage et le repositionner. Pas trop loin parce que nous aurons besoin de tester la minuterie si tout fonctionne comme il se doit. Renommez l'objet pour terminer et supprimer le script de démarrage. Nous allons créer un nouveau script appelé Terminer. Coat sera très similaire au script de démarrage. Seulement des différences. Nous appelons la méthode du minuteur d'arrêt. C' est ça. Enregistrez le script et revenez à Unity. Assurez-vous de connecter le script fini avec le gestionnaire de jeu. Et nous la dette dimer devrait être fait dans le travail. Bien sûr, il n'y a qu'une seule façon de savoir appuyer sur Play. Et nous verrons, oui, il semble que notre minuterie fonctionne très bien. Et enregistrer le temps fonctionne aussi comme il se doit. Bien sûr, je n'aime pas actuellement hors d'éléments de texte presque au milieu de l'écran. Alors bougeons-les. Nous pouvons attacher les prises de minuterie au coin supérieur gauche et pour enregistrer les prises dans le coin supérieur droit. Pour l'instant, vous pouvez ajuster cette mise en page à votre jeu, mais pour l'instant, cela fera beaucoup. Maintenant, ce que nous pouvons rendre cette course un peu plus longue. Alors déplacons la ligne d'arrivée plus loin sur la route. Vous pouvez le déplacer jusqu'à la fin de la piste. Mais pour que je le teste, ça suffit. Sinon, ce chapitre sera trop long. Comme nous avons rendu cette course plus longue, nous devons également effacer le joueur a, peut-être parce que le record actuel a été établi sur une piste beaucoup plus courte et qu'il serait impossible de briser. Pour effacer les préfs du joueur, accédez à Modifier Effacer tous les préfs du joueur et appuyez sur Oui pour confirmer. Et c'est tout. Nous avons fait un jeu simple avec le contrôle de voiture de base sur lequel vous pouvez construire sur une autre tâche. Mais je crois que tout fonctionne comme il se doit. Mon jeu est actuellement un peu en retard. Mais cela juste à cause de mon ordinateur ayant temps difficile autour et le moteur communautaire et l'enregistrement d'écran en même temps. J' espère que tout fonctionne dans votre jeu. Si ce n'est pas le cas, essayez de répéter les étapes prises dans ce chapitre, vous pouvez m'envoyer une question à tout moment. Je suis toujours heureux de vous aider. 8. PROJET DE CLASSE: Ensemble, nous avons créé un mini jeu de course en utilisant notre contrôleur de voiture. Pour le jeu, nous avons utilisé attirer du paquet importé, essayé de faire un autre mini-jeu en utilisant la deuxième piste du paquet importé ou importer complètement nouveau paquet de Unity Asset Store. Nous avons également créé un menu principal très simple avec seulement deux boutons. J' ai essayé d'ajouter plus de boutons. Par exemple, bouton pour la piste 1, deuxième bouton pour la piste 2. Nous avons développé un contrôleur de voiture symbole avec la mécanique de base. Essayé de mettre à niveau ce contrôleur de voiture avec une mécanique avancée et expérimenter avec des valeurs différentes ou déclarer deux variables. Si vous avez des questions ou des problèmes, demandez-moi ici, sont joints à la discorde. Et c'est tout pour ce cours. À ce stade, je vous invite à vérifier mes autres cours. J' ai créé des tutoriels sur la façon de faire de plateforme, tir à la première personne, et jeu à la troisième personne. Lien vers ma masterclass est en bas. Merci d'avoir vu ma classe sceller dans la prochaine.