Điểm ảnh là bật hoặc tắt. Số lượng tối thiểu bạn có thể di chuyển một sprite là một pixel. Vậy làm thế nào để bạn làm cho sprite di chuyển chậm hơn 1 pixel mỗi khung hình?
Cách tôi đã làm là thêm tốc độ vào một biến và kiểm tra xem nó có đạt 1 (hoặc -1) không. Nếu vậy, tôi sẽ di chuyển sprite và đặt lại biến thành 0, như vậy:
update(dt):
temp_dx += speed * dt
temp_dy += speed * dt
if (temp_dx > 1)
move sprite
reset temp_dx to 0
if (tempy_dy > 1)
move sprite
reset temp_dy to 0
Tôi không thích cách tiếp cận này vì nó cảm thấy ngớ ngẩn và chuyển động của sprite trông rất giật. Vậy theo cách nào bạn sẽ thực hiện chuyển động pixel phụ?