Niveau 1: Les Bases d'Unity --- Exercice, une course de balle.

Exercice : Reproduire un mini-jeu

Nous allons maintenant passer à un exercice ! L'objectif est de reproduire un résultat similaire à celui de ce mini-jeu.

 

Pour cela, vous allez utiliser un prefab que j'ai conçu. Un prefab est un objet ou un ensemble d'objets déjà prêts à l’emploi. Dans ce cas, je vais vous fournir la plateforme finale qui détectera la balle et lancera l'interface de victoire.

Indices et détails pour l'utilisation du prefab

Vous pouvez obtenir le fichier Unity en cliquant sur "Fichier Téléchargeable" sous la vidéo de cette page. Si vous avez suivi le chapitre d'introduction, l'installation d'un fichier Unity ne devrait pas poser de problème.

Une fois téléchargé, vous trouverez le prefab dans le dossier suivant :

HowMakeGame.com > Exercice1 > Prefab > Prefab. À vous de découvrir comment l'ajouter à votre scène.

Je vous conseille de créer une nouvelle scène dédiée à cet exercice afin de commencer proprement. N'oubliez pas de supprimer la caméra par défaut de cette scène, car le prefab contient sa propre caméra, déjà programmée pour suivre tout objet nommé "Player".

Pour permettre aux balles de rebondir, j'ai ajouté un "Physics Material" aux balles. Vous devriez peut-être chercher sur Internet comment créer et utiliser ce type de matériau (clin d'œil).

Vous avez maintenant toutes les informations nécessaires pour créer ce mini-jeu. Soyez créatif ! Il n'est pas nécessaire de reproduire exactement les mêmes plateformes ou couleurs. En bas de cette page, vous trouverez la solution de l'exercice. De plus, si vous êtes bloqué, vous pouvez consulter la scène "HowMakeGame > Exercice1 > Scenes > 1-exercice" dans le fichier téléchargeable. Elle vous permet de tester le résultat final et d'examiner les composants.

Ne paniquez pas si vous rencontrez des problèmes ; j'ai conçu cet exercice de manière à ce que vous rencontriez quelques difficultés. Essayez de comprendre et de résoudre les bugs que vous rencontrerez.

Si vous réussissez l'exercice, je vous encourage à lire la solution, car elle contient des détails sur les nouveaux concepts utilisés et les problèmes que vous avez probablement rencontrés.

Et surtout, n’hésitez pas à partager votre résultat sur le Discord du site. Nous serions ravis d'observer le résultat !

La Solution

Vous avez terminé l'exercice ? Voici la solution !

Pour commencer tranquillement, nous allons créer le parcours. Nous allons utiliser des cubes et les déformer avec la propriété "Scale". Vous pouvez utiliser l'outil "Scale", l'outil "Rect" ou modifier manuellement les valeurs dans le composant "Transform".

Ensuite, vous pouvez créer d'autres cubes manuellement ou dupliquer votre sélection actuelle avec le raccourci "CTRL + D".

Puisque les balles utiliseront la gravité pour se déplacer, il faut effectuer des rotations pour créer les pentes.

Vous devriez maintenant avoir plusieurs plateformes et commencer à former un parcours similaire à celui-ci.

C'est pas très beau, mais ça fais le travail...

Maintenant, ajoutons des couleurs à nos plateformes. Vous pouvez soit créer vos propres matériaux, soit en télécharger sur l'Asset Store d'Unity. Pour ma part, j'ai téléchargé cet asset assez connu, surtout utilisé pour faire des prototypes.

Si vous choisissez d'utiliser le même asset que moi, vous pouvez supprimer les dossiers "Materials HDRP" et "Standard". En effet, si vous avez suivi le chapitre d'introduction, votre projet devrait être configuré pour utiliser le moteur de rendu URP, et il n'est donc pas nécessaire de conserver les copies compatibles avec d'autres moteurs de rendu.

Wow de la couleur!

Passons à la balle. C'est assez simple, il suffit de créer un objet de type sphère. Comme pour les cubes, vous allez ajouter un matériau pour lui donner de la couleur. Ensuite, ajoutez un composant "Rigidbody" pour que la balle tombe sous l'effet de la gravité.

Maintenant passons aux nouveau concept!

Les Physics Materials

Dans Unity, les Physics Materials déterminent si un objet peut rebondir ou non. Ils contrôlent également les forces de frottement que l'objet subira. C'est donc un composant idéal pour créer des surfaces glissantes ou des objets rebondissants.

Nous allons donc ajouter un Physics Material à notre sphère. Pour en créer un, c'est exactement le même principe qu'un matériau classique, mais cette fois, sélectionnez "Physics Materials" en bas de la liste.

Une fois le Physics Material créé, sélectionnez-le et observez les paramètres dans l'Inspector.

Les paramètres qui nous intéressent sont "Bounciness" et "Bounce Combine".

  1. Bounciness : Ce paramètre définit le pourcentage d'énergie conservée après un contact avec une autre surface. Par exemple, un Bounciness de 0 signifie qu'il n'y a aucun rebond (aucune énergie conservée). Un Bounciness de 1 signifie que l'objet rebondira à la hauteur exacte où il a atterri, conservant ainsi 100 % de son énergie.

 

  1. Bounce Combine : Ce paramètre détermine comment l'énergie de rebond est combinée entre deux objets. Vous avez quatre options :
  2. Average : La moyenne des Bounciness des deux objets en contact. Par exemple, si votre balle a un Bounciness de 1 et qu'elle touche une plateforme avec un Bounciness de 0, l'énergie conservée sera la moyenne de 1 et 0, soit 0.5.
  3. Maximum / Minimum : Choisissez le plus grand ou le plus petit Bounciness entre les deux objets.
  4. Multiply : Multiplication des deux valeurs de Bounciness.

 

Dans notre cas, j’ai choisi un Bounciness de 1 et laissé le Bounce Combine sur "Average", pour que la balle perde un peu de hauteur à chaque rebond.

Il existe bien sûr d’autres configurations possibles, alors n’hésitez pas à tester différentes valeurs pour obtenir un effet qui vous convient.

Je ne vais pas détailler le paramètre "Friction" ici, mais vous pouvez facilement deviner à quoi il sert et comment il fonctionne. 😉

Pour appliquer un Physics Material à votre sphère, il vous suffit de le glisser directement sur l'objet ou de l’ajouter via le paramètre "Material" du composant "Collider".

Petit conseil : Ne faites pas comme moi, j'ai oublié de nommer mon Physics Material... 😅

Voilà, maintenant votre balle rebondit ! Vous pouvez la dupliquer si vous le souhaitez avec "CTRL + D". N'oubliez pas de déplacer la sphère dupliquée, car l'objet créé sera positionné exactement au même endroit que l'original.

Note: J'ai profité de la présence des balles pour tester mes plateformes avec le mode "Play". J'ai alors remarqué qu'elles n'atteignaient pas la dernière plateforme. J'ai donc modifié légèrement le parcours. Ne soyez donc pas surpris si les images suivantes montrent une scène légèrement différente.

Les préfabs

Passons maintenant à l’ajout du prefab dans la scène. Si ce n'est pas déjà fait, je vous invite à télécharger le fichier Unity disponible dans la section "Fichier Téléchargeable" de ce cours.

Ensuite, importez le fichier téléchargé dans Unity. Si vous ne vous souvenez pas comment faire, allez dans le menu "Assets > Import Package > Custom Package" et ajoutez tous les dossiers.

Recherchez ensuite le prefab dans le dossier :

HowMakeGame.com > Exercice1 > Prefab. Le fichier s'appelle également "prefab". (Je m'excuse pour la simplicité du nom)

Pour ajouter le prefab à votre scène, il vous suffit de le glisser dans la vue 3D. Vous remarquerez plusieurs objets en bleu dans la fenêtre "Hierarchy", ce sont tous les composants du prefab.

Le prefab est maintenant ajoutée à votre scène !

Il ne vous reste plus qu’à renommer l'une de vos sphères en "Player" (avec la majuscule). Pour cela, faites un clic droit sur votre sphère dans la fenêtre "Hierarchy" et changez son nom. Ce nom est important car la caméra dans le prefab est programmée pour suivre un objet appelé "Player".

Félicitations, vous avez terminé ! 🎉

Vous pouvez maintenant tester votre exercice en appuyant sur "Play".

Un problème que vous pourriez rencontrer

Lorsque vous utilisez un prefab créé par quelqu'un d'autre, il est possible que vous rencontriez des imprévus. Par exemple, dans cet exercice, la caméra est programmée pour suivre l’objet "Player" uniquement sur l'axe des X négatifs. Si vos plateformes sont disposées dans la même direction, le résultat ne sera pas aussi intéressant et pourrait ressembler à cela :

 

Même si vous modifiez la rotation de la caméra, cela ne fonctionnera pas.

C’est un exemple typique où l’utilisation de prefabs peut devenir limitée. Mais ne vous inquiétez pas, c’est une excellente occasion d’apprendre !

Il est tout à fait possible de créer un jeu en utilisant uniquement des prefabs. Cependant, vous serez rapidement limité si vous souhaitez personnaliser les comportements comme vous le souhaitez. Lorsque vous travaillez avec un prefab, vous avez accès à tous ses composants, y compris le code. Dans cet exercice, le code qui contrôle la caméra se trouve dans le fichier : HowMakeGame.com > Exercice1 > Assets > Camera > Script > SuivrePlayer.cs.

Le code C# utilisé pour la camera.

C'est pourquoi je vous recommande vivement de poursuivre votre apprentissage jusqu'au chapitre 2, voire au chapitre 3. En apprenant les bases de la programmation C#, même de manière simple, vos possibilités deviendront infinies. Non seulement vous pourrez modifier les prefabs trouvés sur Internet, mais vous serez également en mesure de programmer les vôtres et de prendre le contrôle total sur les résultats. Pour l'instant, nous n'avons fait qu'effleurer la surface. À partir des prochains chapitres, les choses sérieuses commenceront.

Dans le chapitre 2, nous aborderons les bases de la programmation. Cela vous permettra de modifier le comportement de vos objets et de déclencher des événements. Par exemple, vous serez capable de créer une plateforme comme celle de cet exercice et d'afficher un message "Félicitations" lorsque le joueur la franchit.

Dans le chapitre 3, nous explorerons les inputs. C'est là que le véritable fun commence ! Vous pourrez enfin déplacer un personnage à l'aide de votre clavier ou d'une manette de jeu.

Pour l'instant, le jeu de cet exemple reste assez basique. Cependant, chaque nouveau concept que nous aborderons vous rapprochera un peu plus de la création d'un véritable jeu vidéo. En poursuivant votre apprentissage, vous développerez rapidement de nouvelles compétences et deviendrez de plus en plus autonome dans la réalisation de vos propres projets.

Je vous encourage donc à continuer, et je vous donne rendez-vous au chapitre 2 pour la suite de la création!

Description du fichier Liens
Prefab et scène d'exemple pour l'exercice. Unity Package Exercice

Les cours vous ont aidé et vous souhaitez à votre tour nous aider ?

- - - Vous pouvez partager le site avec vos connaissances, ainsi que le Discord. - - -

- - - Participer à la vie active du site et du Discord. - - -

- - - Faire un petit don pour nous aider à payer le serveur avec le lien ci-dessous. - - -

Buy Me a Coffee at ko-fi.com