Un Booster dans Unity

Suite à l’ajout du Bumper dans notre dernier article, j’ai voulu ajouter un genre de booster dans Unity pour réaliser le rêve Sonic du passage de gauche sur notre parcours.

Voici le résultat des premiers tests avec un texture animée et l’accélération du booster dans Unity appliqué au personnage:

Resultat final du Booster dans Unity

Création de l’objet 3D Booster dans Unity :

Donc pour commencer, je me suis basé sur le même principe que nous avons utilisé pour le ressort / Bumper (le code est déjà prêt, autant le réutiliser !!). J’ai simplement créer un Plane dans Unity avec avec un BoxColider mis sur “Trigger” et j’ai enlever le mesh collider ajouter par defaut. Puis un ajout de matériel (on y viendra après) et d’un petit script :

Elements du Booster dans Unity

Pour le matériel, j’ai pris le premier image avec des flèches que j’ai trouver sur google (juste pour le test, je ferrai mes propres graphismes après). Ensuite, suffit de glisser /deposer sur notre plane et le tour est joué. Des fois, il faut revoir les options d’import sur l’image et s’assurer que tout est bien réglé et que l’image s’affiche bien.

Puis un Box Collider dont j’ai modifier les proportions pour que la zone de détection se trouve au dessus de notre objet (on peut utiliser le bouton “Edit Collider” pour regler au plus prés la taille et position):

Zone de détection sur le Booster dans unity

Maintenant c’est parti pour le code du Booster dans Unity :

On va réutiliser la même fonction que pour le Bumper, il faut donc passer un vecteur3 et une force au fonction throwBack() du joueur.

Contrairement au Ressort qui allait envoyer sur l’axe Y, notre booster est orienter vers l’axe X (Dans mon cas, cela peut changer en fonction du texture et l’orientation). Il faut donc définir notre force et direction, comme pour le Bumper, puis appeler la fonction dans “OnTriggerEnter()”.

Je préfère récupérer l’orientation de l’élément au moment que le joueur entre en contact avec. Cela permet d’avoir les boosters qui modifient leur orientation au cours du jeu.

Mais ça c’est du déjà vu, ceux qui est nouveau ici c’est la texture animé sur le Booster dans Unity. Et le wiki nous montre exactement comment faire.

On reprend le code brut comme ceci :

Dans un 2eme temps, je vais voir pour ajouter du son et un accélération du texture au contact avec le joueur. (C’est pour cela qu’il y a un variable initialScroolSpeed mais qui n’est jamais utilisé !)

Stay tuned 😉

Leave a Reply

Your email address will not be published. Required fields are marked *