Menu
CoddyTech
flag Ru iconРусскийdown icon

Ходьба с помощью скорости

Часть раздела Ввод и перемещение путешествия по Godot на Coddy. Урок 8 из 28.

Чтобы ходить с помощью клавиш, задавайте скорость через Input.get_axis() в каждом физическом кадре, а затем перемещайтесь:

var speed = 200

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

Если удерживать клавишу вправо, значение velocity.x будет равно 200. Если удерживать клавишу влево — -200. Если не удерживать никакую клавишу — 0, поэтому герой остановится, когда вы отпустите клавишу.

С Node2D вы писали position.x += direction * speed * delta. Для физического тела velocity — это сама скорость. Умножение её на delta сделало бы героя в 60 раз медленнее.

challenge icon

Задание

Легко

Заставь героя ходить влево и вправо со скоростью speed. Задай velocity.x на основе Input.get_axis() перед вызовом move_and_slide().

Попробуйте сами

extends CharacterBody2D

var speed = 200

func _physics_process(delta):
	move_and_slide()
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Ввод и перемещение

Потренируйтесь самостоятельно: Песочница Godot