Menu
CoddyTech

Đi bộ với vận tốc

Thuộc phần Đầu vào và di chuyển trong hành trình Godot của Coddy. Bài học 8 trên 28.

Để di chuyển bằng các phím, hãy đặt vận tốc bằng Input.get_axis() ở mỗi khung hình vật lý, rồi di chuyển:

var speed = 200

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

Giữ phím phải sẽ đặt velocity.x thành 200. Giữ phím trái sẽ đặt thành -200. Không giữ phím nào thì giá trị là 0, nên nhân vật sẽ dừng lại khi bạn nhả phím.

Với Node2D, bạn đã viết position.x += direction * speed * delta. Với một body, velocity chính là tốc độ. Nhân nó với delta sẽ khiến nhân vật di chuyển chậm hơn 60 lần.

challenge icon

Thử thách

Dễ

Cho nhân vật chính đi bộ sang trái và phải bằng vận tốc của nó.

  1. Phía trên move_and_slide(), đặt velocity.x bằng Input.get_axis("move_left", "move_right") nhân với speed.
  2. Bỏ qua delta: move_and_slide() tự áp dụng giá trị này cho bạn.

Nhấn “Chơi” và giữ một phím mũi tên: nhân vật chính đi bộ với tốc độ 200 pixel mỗi giây và dừng lại khi bạn thả phím. Sau đó nhấn “Kiểm tra”.

Tự làm thử

extends CharacterBody2D

var speed = 200

func _physics_process(delta):
	move_and_slide()

Tất cả bài học trong Đầu vào và di chuyển

Tự luyện tập: Playground Godot