Giảm tốc dần
Thuộc phần Cảm giác chơi game trong hành trình Godot của Coddy. Bài học 4 trên 23.
Chuyển động tween thông thường giữ một tốc độ rồi dừng ngay lập tức. Độ giảm tốc thay đổi tốc độ trong quá trình chuyển động, giúp chuyển động nhanh dần hoặc chậm dần.
tween.tween_property(self, "position", Vector2(480, 265), 1.0).set_trans(Tween.TRANS_CUBIC).set_ease(Tween.EASE_OUT)set_trans chọn hình dạng của đường cong tốc độ. Tween.TRANS_SINE tạo chuyển động nhẹ nhàng, còn Tween.TRANS_CUBIC tạo chuyển động mạnh hơn. Tween.TRANS_BACK đi quá điểm cuối một chút rồi quay lại. Tween.TRANS_ELASTIC làm chuyển động dao động quanh điểm cuối, còn Tween.TRANS_BOUNCE tạo chuyển động nảy.
set_ease xác định đoạn chuyển động chậm nằm ở đâu. Tween.EASE_IN bắt đầu chậm, Tween.EASE_OUT kết thúc chậm, còn Tween.EASE_IN_OUT áp dụng cả hai. Ease out là kiểu phổ biến nhất. Chuyển động bắt đầu nhanh rồi chậm dần đến khi dừng lại.
Thử thách
DễKhiến robot khởi hành nhanh rồi chậm lại khi kết thúc.
- Trong bước tween, thêm
.set_trans(Tween.TRANS_CUBIC)và.set_ease(Tween.EASE_OUT). - Giữ nguyên mục tiêu và thời lượng
1.0giây.
Nhấn Chơi: robot phóng đi rồi nhẹ nhàng dừng lại trên bệ. Sau đó nhấn Kiểm tra.
Tự làm thử
extends Node2D
func _ready():
var tween = create_tween()
tween.tween_property(self, "position", Vector2(480, 265), 1.0)
Tất cả bài học trong Cảm giác chơi game
Tự luyện tập: Playground Godot