Tại sao các tam giác liền kề không bao giờ trùng nhau khi rasterized?


11

Xin lỗi cho câu hỏi sau đây, chỉ là tôi không thể tìm thấy câu trả lời thỏa đáng ở bất cứ đâu ...

Khi tôi kết xuất một hình tứ giác thẳng hàng trục đơn giản được tạo thành từ hai hình tam giác, tôi không hiểu tại sao không bao giờ có bất kỳ đồ tạo tác có thể nhìn thấy nào trên cạnh đường chéo nơi các hình tam giác đó gặp nhau. Một số pixel đó phải ở cả hai hình tam giác, phải không? Vì vậy, nếu bộ phân mảnh của tôi luôn phát ra màu trong suốt một phần - nói 50% màu đen - thì không nên có một đường chéo tối có thể nhìn thấy trong hình tứ giác kết quả?

Rõ ràng thật tuyệt vời khi đây không phải là một vấn đề thực sự phải được mã hóa xung quanh, tôi chỉ không hiểu tại sao nó không xảy ra. Ma thuật GPU nào là thứ khiến nó luôn hoạt động?

Câu trả lời:


10

Đây là vấn đề tương tự như được thảo luận trong các khoảng trống mẫu trong quá trình chuyển đổi quét là gì?

Tóm lại, rasterisation - ít nhất là với phần lớn các hệ thống phần cứng - kiểm tra tại một điểm 'vô hạn' duy nhất cho mỗi pixel để xác định xem pixel đó có nằm trong một tam giác nhất định hay không.

Nếu điểm mẫu nằm chính xác trên một cạnh, thì các quy tắc ngắt kết nối bổ sung, thường được gọi là "quy tắc điền", hãy đến để chơi. Thông thường, đây sẽ là một cái gì đó tương đương với, chỉ xem xét các điểm cạnh trên đỉnh / trái ** của một hình tam giác là "bên trong".

** Các quy tắc khác có sẵn ;-)


Vâng, tôi chỉ đang tìm kiếm câu trả lời đó
joojaa

1
Đoạn văn có liên quan từ Sách Đen: jagregory.com/abrash-black-book/ Kẻ
bblack

Rất cám ơn! Bây giờ nó khá là hợp lý và cuốn sách đen đó trông cũng là một tài nguyên tuyệt vời
Reuben Scratton
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.