Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Terminer l'Animation du Joueur | Système d'Animation Unity
Jeu de Combat dans Unity
course content

Contenu du cours

Jeu de Combat dans Unity

Jeu de Combat dans Unity

1. Système d'Animation Unity
2. Comportement du Joueur
3. Comportement de l'Ennemi
4. Améliorer le Jeu
5. Améliorer le Jeu Flappy Bird

book
Terminer l'Animation du Joueur

Animation de Saut

Pour le saut, nous aurons deux animations : Comme le joueur va sauter puis tomber, nous devons créer deux animations pour cela. La transition entre elles sera basée sur la "vitesse y" du joueur ; si y est positif, il saute, et si y est négatif, il tombe. Nous pouvons obtenir la vitesse y à partir du composant Rigidbody2D attaché au joueur.

Ce code assigne la valeur pour le paramètre de transition entre le saut et la chute.

Explication du Code

Cette ligne vérifie si la touche Espace est enfoncée (Input.GetKeyDown(KeyCode.Space)), si le joueur est au sol (isGrounded), et si le joueur n'est pas en train d'attaquer (animator.GetBool("isAttacking") == false). Si toutes les conditions sont remplies, le bloc de code suivant s'exécutera.

Cette ligne ajoute une force vers le haut au composant Rigidbody (rb) attaché au joueur, simulant un saut. La force appliquée est dans la direction ascendante (Vector2.up) avec une magnitude définie par jumpForce, et elle est appliquée de manière impulsive (ForceMode2D.Impulse).

Cette ligne définit un paramètre booléen "isJumping" dans le composant Animator à true, déclenchant l'animation de saut.

Cette ligne vérifie si le joueur est actuellement en train de sauter (animator.GetBool("isJumping") == true), si la vitesse verticale du joueur est négative (rb.velocity.y < 0), et si le joueur est au sol (isGrounded). Si toutes les conditions sont remplies, le bloc de code suivant s'exécutera.

Cette ligne définit le paramètre booléen "isJumping" dans le composant Animator à false, indiquant que le joueur a terminé de sauter et de tomber et changera son animation en mode veille.

Cette ligne projette un rayon vers le bas à partir de la position des pieds du joueur (playerFeet.position) pour détecter si le joueur est au sol. Elle renvoie vrai si le rayon intersecte un quelconque colliseur dans la couche de sol dans une distance de 0,1 unité, mettant à jour la variable isGrounded en conséquence.

Que représente un `raycast` dans Unity ?

Que représente un raycast dans Unity ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 6
We're sorry to hear that something went wrong. What happened?
some-alt