2017-05-20 5 views
0

Ich habe einen Animator zum Countdown verwendet (drei Sekunden mit dem Fingermodell). Es ist mir gelungen, einen Countdown-Animator zu machen. Ich möchte den Animator spielen, wann immer ich möchte, da dieses Projekt für die Kalibrierung mehrmals Countdowns benötigt.Wie startet man den Animator der Einheit?

Aber ich weiß nicht wie. Jetzt kann ich den Animator nicht mehr spielen, wenn ich will, und ich kann ihn auch nicht mehr spielen. Derzeit wird der Animator im Animator-Fenster erstellt, nicht als Skript.

enter image description here

+0

Überprüfen Sie die [Animator] (https://docs.unity3d.com/ScriptReference/Animator.html) Documantation und sehen wie man die Animation spielt/stoppt. –

+0

Sobald die Szene abgespielt ist, wird der Animator einmal spielen, aber ich möchte wissen, wie ich diesen Animator wann immer nötig spielen kann. –

+0

Ich weiß, wie man kontinuierlich durch die Loop-Funktion spielt, aber ich möchte alle 3 Sekunden einen 3-Sekunden-Animator laufen lassen, der den Wert vom Sensor liest! –

Antwort

0
animator.Play("animation name", layer, normalizedTime); 

Dies ist die Überlastung. Genauer gesagt dies zu tun:

animator.Play("your animation name", -1, 0f); 

Wenn Sie möchten, können Sie auch Co-Routine verwenden. Es ist meine bevorzugte Art und Weise:

private IEnumerator Counter(int secondsToCount) 
{ 
    while (secondsToCount >= 0) 
    { 
     //'counter' is the counter that appears to the player 
     counter.text = secondsToCount.ToString(); 
     secondsToCount--; 
     yield return new WaitForSeconds(1f); 
    } 
} 

diese Weise können Sie steuern, wie viele Sekunden Sie unten zählen möchten.

EDIT:

Wenn Sie neu sind und nichts von Co-Routinen wissen. Sie können sie wie folgt beginnen:

StartCoroutine(Counter(5)); 

Diese zählen wird von 5 auf 0