Créer un jeu avec Unity 3D

Solution exercice 2

L'auteur

Profil Pro

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Navigation

   

Sommaire

   
   

Énoncé exercice 2

   

II. Vidéo


Cliquez pour lire la vidéo


III. Exercice

Vous pouvez lire l'énoncé de l'exercice ici.

IV. Solution

La solution utilise plusieurs éléments vus dans les cours précédents :

IV-A. Orientation de la tourelle

La première partie de la fonction Update() permet de gérer l'orientation de la tourelle.

 
Sélectionnez
rayMouse = GameObject.Find("Main Camera").camera.ScreenPointToRay(Input.mousePosition);
    if(Physics.Raycast(rayMouse,hit))[
        if(hit.transform/name == "Place"){
            positionToLook = hit.point;
        }
    }
    
    directionToLook = positionToLook - transform.position;
    
    transform.rotation = Quaternion.LookRotation(-directionToLook);

On crée un rayon, provenant de la caméra et allant en direction de la souris, avec la fonction ScreenPointToRay(). Ensuite, il suffit de savoir si le rayon touche un objet, dans notre cas le sol appelé « Place », et à quel endroit. Ce point de collision entre le rayon et le sol est ensuite utilisé pour déterminer la direction de la tourelle.

IV-B. Tir de la tourelle

La seconde partie de la fonction Update() permet de gérer le tir de la tourelle.

 
Sélectionnez
if(Input.GetMouseButtonDown(0)){
        var ball:GameObject = Instantiate(bullet,positionBullet.position,positionBullet.rotation);
        var particle:GameObject = Instantiate(explodeParticle,positionBullet.position,positionBullet.rotation);
        
        ball.renderer.material.color = Color(Random.value,Random.value,Random.value);
        ball.rigidbody.AddForce(positionBullet.forward * shotSpeed * Time.deltaTime);
        audio.Play();
        Destroy(particle, 1);
        Destroy(ball, 3)
    }

Le test vérifie si le bouton de la souris est appuyé. Ensuite, deux objets sont créés, le premier : la balle propulsée, le second : les particules. La couleur de la balle est modifiée aléatoirement. Une force lui est ajoutée pour la propulser dans la direction du canon de la tourelle. Finalement, un son est joué. Les deux dernières lignes permettent la destruction après une et trois secondes pour les particules et la balle, respectivement.

La destruction permet de ne pas surcharger la machine avec des objets inutiles.

V. Commenter

Vous pouvez commenter et donner vos avis dans la discussion associée sur le forum, ou encore, poser vos questions dans le forum Unity.

VI. Remerciements

Nous remercions « ToutApprendre » pour l'élaboration et la réalisation de ces vidéos. Vous pouvez retrouver sa chaîne YouTube en suivant ce lien.

VII. Navigation

   

Sommaire

   
   

Énoncé exercice 2

   

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2014 Équipe rubrique 2D/3D/Jeux. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.