Có một vài khía cạnh của vấn đề này. Đầu tiên, bạn vẽ 10000 khối của mình như thế nào? Bạn có thực sự vẽ chúng như 10000 đối tượng riêng biệt? Nếu vậy thì đây gần như chắc chắn là cổ chai của bạn, không phải là sự loại bỏ tắc nghẽn. Bạn nên nhóm các khối này thành một số lượng lưới nhỏ hơn (có thể là vài nghìn mỗi lưới) để giảm các cuộc gọi rút thăm.
Đối với câu hỏi thực tế của bạn, có ba loại loại bỏ tắc mà mùa xuân đến tâm trí.
1) Khối bên ngoài xem bực bội. Điều này có nghĩa là các khối phía sau bạn hoặc hai bên. Ogre đã loại bỏ những thứ này thông qua việc loại bỏ sự thất vọng.
2) Các khối 'ngầm' hoặc được bao quanh hoàn toàn bởi các khối khác để chúng không bao giờ có thể được nhìn thấy từ mọi góc độ. Bạn có thể xác định những điều này bằng cách nhìn vào các khối lân cận siz. Nếu tất cả đều rắn, khối của bạn bị ẩn. GPU thậm chí không bao giờ nên nghe về các khối này - chúng nên được bỏ qua khi bạn xây dựng lưới đại diện cho bề mặt của bạn.
3) Các khối nằm trên bề mặt và có thể được nhìn thấy từ một số vị trí trong cấp độ, nhưng hiện đang bị ẩn bởi một ngọn đồi (hoặc một cái gì đó). Đây là trường hợp khó nhất mà tôi chưa tự giải quyết, nhưng rất có thể các truy vấn tắc phần cứng có thể được sử dụng cho trường hợp này.
Đó là một phích cắm không biết xấu hổ, nhưng tôi có một thư viện khá trưởng thành mà nhiều người đang sử dụng để phát triển bản sao Minecraft, bao gồm cả một số sử dụng Ogre. Bạn xác định nội dung của âm lượng và nó tạo ra lưới bề mặt mà sau đó bạn có thể kết xuất. Đây là trang chủ:
http://www.thermite3d.org/
Và đây là video về dự án của người khác đang sử dụng nó:
http://www.youtube.com/watch?v=Jju6WRPEK7o