2017-09-14 7 views
0

Eh bien, laissez voir. J'ai un contrôleur de troisième personne est un caractère par défaut de l'unité. Ce personnage parle avec les autres et apparaît en 2D dans l'écran en ce moment j'arrête le joueur en supprimant tout mouvement, mais parfois mon personnage reste avec l'animation avec laquelle il est resté avant d'être arrêté.Comment régler l'animation de thirpersoncontroller à defaul ou caractère à l'état naturel Unité C#

L'animation continue à fonctionner. Comme ceci:

enter image description here

Il a l'air très mauvais, donc.

J'ai besoin d'arrêter l'animation afin qu'il reste de cette façon:

enter image description here

J'ai besoin quitter mon personnage avec son animation dans l'état naturel. Je ne sais pas comment.

S'il vous plaît aider, Merci ...

Répondre

0

L'arbre de mélange d'utilisation de thirdpersoncontroller en animateur pour contrôler l'animation du personnage. Vous pouvez ouvrir l'animateur du personnage et double-cliquer sur l'état Grounded, l'arbre de fusion apparaîtra.

Ici m_ForwardAmount et m_TurnAmount ont été utilisés pour contrôler la transition en douceur entre les différents clips d'animation. Comme je vois, ce que vous voulez est de faire l'animation du personnage en Idle état lorsque vous geler son mouvement.

Vous pouvez essayer la méthode suivante en réglant ces deux variables sur zéro.

public void Move(Vector3 move, bool crouch, bool jump) 
      { 
       if (isStop) { 
        m_Rigidbody.velocity = Vector3.zero; 
        m_ForwardAmount = 0f; 
        m_TurnAmount = 0f; 
        UpdateAnimator(move); 
        return; 
       } 
    ... 
    } 
+0

Ça marche! Merci beaucoup ! ;) –