Tôi đang kết xuất các họa tiết ở tọa độ pixel chính xác để tránh hiệu ứng làm mờ do khử răng cưa (các họa tiết là pixel-art và sẽ trông rất tệ nếu được lọc). Tuy nhiên, do chuyển động của các vật thể liên quan đến vận tốc, trọng lực và tương tác vật lý thay đổi, quỹ đạo được tính toán với độ chính xác subpixel.
Ở tốc độ không gian màn hình đủ lớn (vt lớn hơn 2 hoặc 3 pixel), điều này hoạt động rất tốt. Tuy nhiên, khi vận tốc nhỏ, hiệu ứng cầu thang đáng chú ý có thể xuất hiện, đặc biệt là dọc theo các đường chéo. Đây không còn là vấn đề ở tốc độ không gian màn hình rất chậm (v << 1 pixel mỗi giây) vì vậy tôi chỉ tìm kiếm một giải pháp cho các giá trị vận tốc trung gian.
Bên trái là quỹ đạo được vẽ cho một vận tốc lớn, thu được bằng cách làm tròn đơn giản các tọa độ đối tượng. Ở giữa, bạn có thể thấy những gì xảy ra khi vận tốc trở nên nhỏ hơn và hiệu ứng cầu thang mà tôi đang nói đến. Ở bên phải, quỹ đạo của quỹ đạo tôi muốn lấy.
Tôi quan tâm đến các ý tưởng thuật toán để lọc quỹ đạo để giảm thiểu răng cưa, trong khi vẫn giữ hành vi ban đầu ở vận tốc lớn và nhỏ. Tôi có quyền truy cập vào, t, vị trí và vận tốc tức thời, cũng như số lượng giá trị trước đó tùy ý, nhưng vì nó là mô phỏng thời gian thực, tôi không biết về các giá trị trong tương lai (mặc dù nếu cần, một ước tính có thể được ngoại suy theo các giả định nhất định) . Lưu ý rằng do mô phỏng vật lý, thay đổi hướng đột ngột cũng có thể xảy ra.
velocity.y / velocity.x
với hệ số hiệu chỉnh tỷ lệ với vận tốc.