Plus de détails sur le composant Animation

Dans le tuto "Jeu de bille", nous abordons plus en détails l'utilisation du composant Animation.

Déclencher une Animation par le code

Pour de l’animation simple (une seule animation tournant en boucle par exemple), l'utilisation du composant Animation suffira amplement. Il est bien sûr tout à fait possible de gérer plusieurs animations (consulter les possibilités du composant), mais pour cela le composant Animator s’avérera tout de même bien plus souple et puissant dans ses fonctionnalités.

 

Edition d'une scène de tests :

  1. Mettre une sphère dans la scène
  2. Enlever les composants inutiles et y attacher le composant Animation
  3. Créer une première animation et la placer dans le composant Animation
    • Tester et observer :
    • L’animation est automatiquement jouée une fois et s’arrête
  4. La faire s’exécuter en boucle (sélectionner le fichier animation et adapter le Wrap Mode)
    • Tester et observer :
    • L’animation est automatiquement jouée et tourne en boucle
  5. Dans le composant Animation, décocher Play Automatically
    • Tester : plus rien ne se passe
  6. Créer un script de contrôle : Voir ci-dessous

Exemple de script de contrôle de l'animation :

 

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using UnityEngine;
using System.Collections;

public class SphereMovements : MonoBehaviour
{
        private Animation _animCPT;                 //Référence au composant Animation


        // Use this for initialization
        void Start ()
        {
                //Récupération du composant Animation sur l'objet
                _animCPT = this.GetComponent<Animation> ();
        }
        
        // Update is called once per frame
        void Update ()
        {
                //Si j'appuie sur espace
                if ( Input.GetKeyDown ( KeyCode.Space ) )
                {
                        //Si l'animation N'EST PAS en train d'etre jouée
                        if ( !_animCPT.isPlaying )
                        {
                                //Déclenceher l'animation par défaut
                                _animCPT.Play ();
                        }
                        else //Sinon
                        {
                                //Eteindre l'animation par défaut
                                _animCPT.Stop ();
                        }
                }
        }
}

Écrire commentaire

Commentaires: 0