Unity 3d montrent cadre spécifique de l'animation

Je suis en train d'essayer de nouveau unity 3d options pour les jeux 2d. Je suis en train de créer de fond qui change en fonction des actions que j'ai fait. Donc, si j'appuie sur un bouton je reçois un sprite comme toile de fond et si les deux-je obtenir sprite deux. Depuis j'ai 32 options, je figure sur la meilleure façon serait de disposer d'un Animateur, que les changements de cadre en fonction de clic de bouton. J'ai donc créé l'animateur et l'animation. Mais le problème est que je ne peux pas régler l'heure à l'endroit où s'arrêter animation pour afficher l'image sélectionnée.

Je vais essayer comme ça:

Animator ani=background.GetComponent<Animator>();
ani.animation["field_back_anim"].time=0.5f;
ani.speed=0;

Mais il échoue à la deuxième ligne avec cette erreur:

MissingComponentException: There is no 'Animation' attached to the "background" game object, but a script is trying to access it.
You probably need to add a Animation to the game object "background". Or your script needs to check if the component is attached before using it.

Cependant si je n'ai pas de code à l'animation joue juste auge tous les 16 images. J'ai donc d il y a de l'animation, après tout.

Sur le fond GameObject j'ai 2 composants est sprite moteur de rendu et la deuxième est l'animateur. Quand j'ai ouvert d'animation dans Animation, j'y vois un rectangle vert en disant Tout état et un jaune avec "field_back_anim". Je ne comprends pas ce que je fais mal.

Je vais aussi à l'exception de toute autre solution qui effectue les opérations suivantes.

Merci!

  • Comment obtenez-vous l'objet en arrière-plan sur votre code?
  • Je l'ajoute dans l'inspecteur publique gamebobject.
InformationsquelleAutor gabrjan | 2013-11-19