Tôi thực sự không thể tìm ra nguyên nhân khiến một bề mặt chồng lên nhau. Trong một công cụ 3D tôi đang tạo, kỹ thuật của tôi bị lỗi trong các trường hợp cạnh.
Phương pháp của tôi là sắp xếp các bề mặt được sơn từ xa nhất đến gần nhất. Để xác định mức độ gần gũi, tôi đang so sánh các giá trị z trung bình. Tuy nhiên, đôi khi, một bề mặt chồng lấp có giá trị z trung bình cao hơn bề mặt chồng lấp. Do đó, bề mặt xa hơn được vẽ trên bề mặt gần hơn - dẫn đến kết xuất kỳ quái như thế này:
Những gì người ta có nghĩa là chỉ nhìn thấy mặt trước màu tím của khối lập phương, trong khi mặt màu đỏ được sơn lên trên mặt màu tím. Giá trị z trung bình của bề mặt màu tím cao hơn và do đó 'xa hơn'. Vì vậy, tôi có một số nghi ngờ về việc liệu kỹ thuật này là chính xác.
Những gì tôi cũng đã cố gắng là đưa khoảng cách từ máy ảnh (tức là nguồn gốc) lên bề mặt, nhưng sau đó tôi cần một điểm. Tôi đã chọn giữa mỗi bề mặt nhưng điều này dường như không phải lúc nào cũng hoạt động vì không phải tất cả các bề mặt đều lớn như nhau.
Vì vậy, một cách đáng tin cậy để xác định thứ tự đóng của các bề mặt đối với nguồn gốc là gì?