Menu
CoddyTech

Se déplacer avec une vélocité

Fait partie de la section Entrées et déplacements du Journey Godot de Coddy. Leçon 8 sur 28.

Pour te déplacer avec les touches, définis la vitesse à partir de Input.get_axis() à chaque image physique, puis déplace le personnage :

var speed = 200

func _physics_process(delta):
	velocity.x = Input.get_axis("move_left", "move_right") * speed
	move_and_slide()

Maintenir la touche droite définit velocity.x à 200. Maintenir la touche gauche le définit à -200. Ne maintenir aucune touche le définit à 0, donc le héros s'arrête quand tu relâches la touche.

Avec un Node2D, tu as écrit position.x += direction * speed * delta. Avec un corps, velocity est la vitesse elle-même. La multiplier par delta rendrait le héros 60 fois trop lent.

challenge icon

Défi

Facile

Fais marcher le héros vers la gauche et vers la droite en fonction de sa vitesse.

  1. Au-dessus de move_and_slide(), définis velocity.x sur Input.get_axis("move_left", "move_right") multiplié par speed.
  2. N’inclus pas delta : move_and_slide() s’en charge.

Appuie sur « Jouer » et maintiens une touche fléchée : le héros marche à 200 pixels par seconde et s’arrête quand tu relâches la touche. Ensuite, clique sur « Vérifier ».

Essayez vous-même

extends CharacterBody2D

var speed = 200

func _physics_process(delta):
	move_and_slide()

Toutes les leçons de Entrées et déplacements

Entraînez-vous par vous-même : Playground Godot