Comment synchroniser le saut avec une animation ?

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
Helias
Messages : 22
Inscription : 14 Avr 2016 10:16
Contact :

Comment synchroniser le saut avec une animation ?

Message par Helias » 14 Avr 2016 23:03

Bonsoir, pour faire tout les tests que je fais j'utilise un rig qui vient de l'asset store, il est souvent utilisé "Golem".
Grâce à ce rig je peux voir comment faire pour que le code soit bien fait avant de faire mon propre rig, mais je suis tombé sur un problème. Dès que le personnage saute, l'animation à un petit retard, si je laisse que l'animation et non le saut alors le il ne sautera pas mais fera que l'animation... Donc c'est plutôt embêtant :/

Voici le code de mon saut :

Code : Tout sélectionner

      		if (Input.GetKey(KeyCode.Space)) //Dès que le joueur appuie sur Espace, l'animation "jump" s'effectue.
      		GetComponent.<Animation>().CrossFade ("jump");
      		
Merci d'avance pour vos réponses !

Avatar de l’utilisateur
boubouk50
ModoGenereux
ModoGenereux
Messages : 6186
Inscription : 28 Avr 2014 11:57
Localisation : Saint-Didier-en-Bresse (71)

Re: Comment synchroniser le saut avec une animation ?

Message par boubouk50 » 15 Avr 2016 09:22

La réponse est dans ton code. Plus spécifiquement dans les commentaires:
//Dès que le joueur appuie sur Espace, l'animation "jump" s'effectue.
L'animation de saut ne doit pas se jouer quand tu appuies sur la touche espace, mais quand le joueur saute. Il faut lier l'animation au character controller et pas à une touche de clavier.
"Ce n'est pas en améliorant la bougie, que l'on a inventé l'ampoule, c'est en marchant longtemps."
Nétiquette du forum
Savoir faire une recherche
Apprendre la programmation

sekiroO
Messages : 42
Inscription : 27 Fév 2016 17:07

Re: Comment synchroniser le saut avec une animation ?

Message par sekiroO » 15 Avr 2016 13:20

Salut,
J'avais vu un tutoriel qui utiliser l'animator sur le gameobject.

En utilisant 2 variables tu peux marcher courir et sauter et cela joue l'animation automatiquement. Entre les animation tu met en place des conditions qui change d'animation.
Par exemple :

Code : Tout sélectionner

si speed est inférieur à 0.2 alors animation stop
Si speech est supérieur à 0.2 alors animation marche
Et pour le saut tu detectes si ton objet touche le sol.

Avatar de l’utilisateur
LaGriffe
Messages : 41
Inscription : 01 Avr 2016 13:49

Re: Comment synchroniser le saut avec une animation ?

Message par LaGriffe » 15 Avr 2016 13:45

La fenêtre Animator permet de gérer ça très bien, en rajoutant des paramètres et en permettant des transitions douces.
Faut se pencher dedans, mais c'est quand même bien fichu au final.

Helias
Messages : 22
Inscription : 14 Avr 2016 10:16
Contact :

Re: Comment synchroniser le saut avec une animation ?

Message par Helias » 15 Avr 2016 14:06

boubouk50 a écrit :La réponse est dans ton code. Plus spécifiquement dans les commentaires:
//Dès que le joueur appuie sur Espace, l'animation "jump" s'effectue.
L'animation de saut ne doit pas se jouer quand tu appuies sur la touche espace, mais quand le joueur saute. Il faut lier l'animation au character controller et pas à une touche de clavier.
Je vais essayer, merci !

Helias
Messages : 22
Inscription : 14 Avr 2016 10:16
Contact :

Re: Comment synchroniser le saut avec une animation ?

Message par Helias » 15 Avr 2016 14:06

sekiroO a écrit :Salut,
J'avais vu un tutoriel qui utiliser l'animator sur le gameobject.

En utilisant 2 variables tu peux marcher courir et sauter et cela joue l'animation automatiquement. Entre les animation tu met en place des conditions qui change d'animation.
Par exemple :

Code : Tout sélectionner

si speed est inférieur à 0.2 alors animation stop
Si speech est supérieur à 0.2 alors animation marche
Et pour le saut tu detectes si ton objet touche le sol.
Je ne suis pas réellement amis avec l'animator, donc je vais voir, merci :)

Helias
Messages : 22
Inscription : 14 Avr 2016 10:16
Contact :

Re: Comment synchroniser le saut avec une animation ?

Message par Helias » 15 Avr 2016 14:07

LaGriffe a écrit :La fenêtre Animator permet de gérer ça très bien, en rajoutant des paramètres et en permettant des transitions douces.
Faut se pencher dedans, mais c'est quand même bien fichu au final.
Bah on tente ça et je vous dis :)
Merci !

Avatar de l’utilisateur
LaGriffe
Messages : 41
Inscription : 01 Avr 2016 13:49

Re: Comment synchroniser le saut avec une animation ?

Message par LaGriffe » 15 Avr 2016 17:49

C'est un peu rebutant au départ, il n'est pas toujours simple de comprendre le fonctionnement du truc, mais une fois pigé le système, ça va tout seul. Ca vaut vraiment le coup de s'y pencher. Du peu que je connais Unity, une bonne partie de sa puissance tient justement de l'Animator.

sekiroO
Messages : 42
Inscription : 27 Fév 2016 17:07

Re: Comment synchroniser le saut avec une animation ?

Message par sekiroO » 15 Avr 2016 23:26

Je trouve l'animator extrêmement bien et quand on comprend le truc, c'est très simple.
Ce système d'animation rend le jeu plus vivant sans trop de difgiculte

Répondre

Revenir vers « Scripting »