IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Créer un jeu avec Unity 3D

Accéder aux GameObjects

L'auteur

Profil Pro

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Navigation▲

Tutoriel précédent : Interaction avec l'utilisateur

 

Sommaire

 

Tutoriel suivant : les quaternions

I. Vidéo▲


Cliquez pour lire la vidéo


II. Ce qu'il faut retenir▲

II-A. Accéder aux GameObjects▲

L'objectif est d'accéder à un GameObject, sans que le script ne soit nécessairement attaché à ce GameObject.

II-A-1. La méthode Find()▲

La classe GameObject contient une méthode Find() utilisable comme suit :

 
Sélectionnez
#pragma strict

var go:GameObject;

function Start() {
    go = GameObject.Find("Cube");
}

function Update() {
    go.transform.Rotate(Vector3(0, 10 * Time.deltaTime, 0));
}

Tout comme pour la méthode GetComponent() que nous avons vu dans le treizième tutoriel, la méthode Find() ne peut pas être appelée directement à la déclaration d'une variable.

II-A-2. Accéder à un objet avec les tags▲

Les tags permettent de marquer les objets afin de les retrouver facilement, notamment dans un script.

La méthode à utiliser est maintenant FindWithTag() :

 
Sélectionnez
#pragma strict

var go:GameObject;

function Start() {
    go = GameObject.FindWithTag("Player");
}

function Update() {
    go.transform.Rotate(Vector3(0, 10 * Time.deltaTime, 0));
}

II-A-3. Accéder à plusieurs objets ayant un même tag▲

Les méthodes précédentes, bien que pleinement fonctionnelles, ne peuvent accéder qu'à un seul GameObject à la fois.

Pour accéder à plusieurs d'entre eux (possédant un même tag), la fonction à utiliser est FindGameObjectsWithTag() :

 
Sélectionnez
#pragma strict

var goList:Array;

function Start() {
    goList = GameObject.FindGameObjectsWithTag("Player");
}

function Update() {
    for(var go:GameObject in goList) {
        go.transform.Rotate(Vector3(0, 10 * Time.deltaTime, 0));
    }
}

Bien entendu, comme nous récupérons plusieurs objets, il nous faut un tableau pour les contenir et une boucle pour appliquer la rotation sur chacun d'eux.

III. 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.

IV. 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.

Navigation▲

Tutoriel précédent : Interaction avec l'utilisateur

 

Sommaire

 

Tutoriel suivant : les quaternions

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 ni 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.