Contenu du cours
Unity pour Débutants
Unity pour Débutants
Système d'Entrée
Parlons du système d'entrée de Unity, qui vous aide à capturer tout, des pressions sur le clavier aux inclinaisons du joystick, et à les transformer en actions de jeu passionnantes.
Comprendre les méthodes clés
Input.GetAxis
;Input.GetButton
;Input.GetKey
.
Ces trois méthodes sont vos principaux outils pour capturer les entrées utilisateur dans Unity. Explorons leurs forces, faiblesses et cas d'utilisation idéaux :
Input.GetAxis
- Objectif : lit l'amplitude et la direction d'un dispositif d'entrée basé sur un axe, tel qu'un joystick analogique, les touches du clavier (WASD) ou le mouvement de la souris ;
- Renvoie : une valeur entre -1 (plein négatif) et 1 (plein positif). 0 indique aucune entrée, les valeurs positives représentent un mouvement positif sur l'axe, et les valeurs négatives représentent un mouvement négatif ;
- Applications : utile pour des actions continues comme le mouvement, la direction, la rotation de la caméra ou les changements progressifs d'intensité (par exemple, accélérer une voiture progressivement).
Exemple : Capture le mouvement gauche/droite sur un clavier ou un joystick.
private void Update()
{
float horizontalInput = Input.GetAxis("Horizontal");
}
Input.GetButton
- But: détecte si un bouton discret (par exemple, la barre d'espace du clavier, le bouton A de la manette, le tapotement de l'écran tactile) est maintenu enfoncé (true) ou non (false);
- Retourne: une valeur booléenne (true ou false);
- Applications: idéal pour activer des actions comme sauter, tirer une arme, utiliser une capacité ou activer des menus.
Exemple : vérifie si le bouton de saut est enfoncé.
private void Update()
{
bool isJumping = Input.GetButton("Jump");
}
Input.GetKey
- But: détecte si une touche spécifique du clavier est maintenue enfoncée (true) ou non (false);
- Renvoie: une valeur booléenne (true ou false);
- Applications: principalement utilisé pour les contrôles basés sur le clavier, pour des actions comme la gestion de l'inventaire, les raccourcis clavier ou les capacités des personnages.
Exemple : vérifie si la touche Maj est maintenue enfoncée.
private void Update()
{
bool isShiftPressed = Input.GetKey(KeyCode.LeftShift);
}
Choisir la bonne méthode d'entrée
Choisir la méthode d'entrée correcte est crucial pour créer un gameplay intuitif et réactif. Voici un guide rapide :
- Utilisez
Input.GetAxis
pour un contrôle continu et sensible à la direction, comme le mouvement du personnage ou la rotation de la caméra ; - Utilisez
Input.GetButton
pour des actions simples de bascule marche/arrêt, comme sauter ou tirer une arme ; - Utilisez
Input.GetKey
pour des contrôles spécifiques au clavier, idéal pour des actions comme la gestion de l'inventaire ou l'activation de raccourcis clavier.
Rappelez-vous :
- Efficacité : évitez d'appeler ces méthodes à chaque frame inutilement, car cela peut affecter les performances. Utilisez plutôt des vérifications conditionnelles ou une gestion basée sur des événements lorsque c'est possible ;
- Expérimentation : essayez différentes combinaisons et découvrez ce qui fonctionne le mieux pour le design de votre jeu et votre public cible ;
L'expérimentation vous aidera à trouver les contrôles les plus intuitifs et réactifs.
Merci pour vos commentaires !