Tôi đang cố gắng thực hiện độ phân giải độc lập của các họa tiết di chuyển trong trò chơi 2D. Kế hoạch của tôi là làm việc trong một hệ tọa độ cố định trong thế giới của tôi (ví dụ: 960x540) và sử dụng phép chiếu chính tả để điều chỉnh tỷ lệ lên hoặc xuống để phù hợp với chế độ xem. Tôi làm hộp thư để xử lý các tỷ lệ khung hình khác nhau.
Theo hầu hết các hướng dẫn, tôi có thể tự do sử dụng bất kỳ kích thước nào tôi thích cho chế độ xem, nhưng tôi thấy rằng trong nhiều trường hợp dẫn đến vấn đề tôi kết thúc bằng cách sử dụng các giá trị subpixel trên chế độ xem. Ví dụ: một đỉnh tại (62,62) trong hệ tọa độ 960 x 540 kết thúc tại (51.6666667,51.6666667) trên chế độ xem với kích thước 800 x 450.
Tôi nhận thấy hai loại vấn đề với điều đó:
- lấy mẫu kết cấu thay đổi tất cả thời gian cho các đối tượng đang chuyển động tùy thuộc vào vị trí các đỉnh có liên quan đến tâm pixel
- Thỉnh thoảng các đối tượng của tôi bị kéo dài theo chiều ngang hoặc chiều dọc bởi một pixel do làm tròn
Cách thực hành tốt nhất để tránh điều này (trong khi duy trì độ độc lập độ phân giải về tốc độ di chuyển và vân vân) là gì? Và nơi nào sẽ là nơi tốt nhất để làm điều này? Trước khi truyền các đỉnh cho các shader hoặc bên trong các shader đỉnh?