Contrôler un nœud sur la scène

Pour traiter les données du joueur pour donner le contrôle au joueur, on peut utiliser dans Godot :

  • Des rappels d’entrée intégrés, principalement _unhandled_input(). cette fonction virtuelle intégrée est appellée par Godot à chaque fois que le joueur appuie sur une touche. C’est l’outil que vous voulez utiliser pour réagir aux événements qui ne se produisent pas à chaque image, comme appuyer sur Espace pour sauter (voir Utilisation d’InputEvent)

  • Le singleton Input. Un singleton est un objet accessible à tous. Godot donne accès à plusieurs d’entre eux dans les scripts. C’est le bon outil pour vérifier l’entrée à chaque image. Utiliser le singleton Input permet de savoir si le joueur veut tourner ou bouger à chaque image. Pour le tourner, il fauts utiliser une nouvelle variable : direction.

Déplacer un nœud avec ◀ et ▶

  1. Dans la fonction _process(), remplacer la lignerotation += angular_speed * delta, surligné ci-dessous :

    Capture d’écran 2026-10-09 à 10.37.16

  2. Et mettre à la place le code ci-dessous :

    var direction = 0
    if Input.is_action_pressed("ui_left"):
        direction = -1
    if Input.is_action_pressed("ui_right"):
        direction = 1
    rotation += angular_speed * direction * delta

Exécuter la scène avec le code, l’icône devrait tourner lorsque vous appuyez sur ◀ et ▶.

Résultat visuel

Ezgif 5ed3d49a2685acd4 b

Explications
  • Les 2 actions utilisées ui_left et ui_right, sont prédéfinies dans chaque projet Godot. Elles se déclenchent respectivement lorsque le joueur appuie sur les flèches gauche et droite du clavier ou sur les flèches gauche et droite du D-pad d’une manette.

  • Pour produire ces valeurs, nous introduisons des instructions conditionnelles et l’utilisation de Input. Une instruction conditionnelle commence par le mot-clé if en GDScript et se termine par deux points. L’instruction conditionnelle est précisément l’expression entre le mot-clé et les deux-points à la fin de la ligne.

  • Pour vérifier si une touche a été enfoncée dans cette image, nous appelons Input.is_action_pressed(). Cette méthode prend une chaîne de texte représentant une action d’entrée et renvoie true si l’action est pressée, false sinon.

  • Enfin, nous utilisons le direction comme multiplicateur lorsque nous mettons à jour le nœud rotation : rotation += angular_speed * direction * delta.