Tiền đề cơ bản đằng sau công nghệ như được tìm thấy trong Oblivion (và các trò chơi khác, tôi chắc chắn là không đủ), trong đó các đối tượng từ xa được hiển thị mơ hồ bạn xem chúng từ xa? Ví dụ, một tòa tháp lớn cách đó một dặm và bạn thấy hình chữ nhật mơ hồ của nó dính lên từ đường chân trời ... Rõ ràng là một cảnh 3D khổng lồ không thể được kết xuất, và tôi biết rằng trong trường hợp các bản đồ cao độ chỉ có các thuật toán xấp xỉ được sử dụng để giảm chất lượng bản đồ chiều cao xa khỏi máy ảnh, nhưng đối với các đối tượng cụ thể, cách tốt nhất để hiển thị chúng là gì? Tôi đã suy nghĩ có lẽ là một kỹ thuật dựng trước, trong đó bạn chọn những địa điểm cụ thể xung quanh cảnh quan và sau đó tạo một chương trình vẽ tất cả các mô hình chiều cao và 3D xung quanh điểm đó và chụp ảnh. Nó sẽ chụp một vài bức ảnh, và sau đó khi người chơi ở gần chỗ đó, những bức ảnh sẽ được sử dụng như một skybox.Dựng hình đối tượng 3D ở xa [trò chơi]
Một kỹ thuật rõ ràng hơn là lưu trữ các mô hình 3D thực sự thô, nhưng sau đó hệ thống dựng hình 3D đặc biệt chọn hiển thị mô hình thô của tòa nhà chứ không phải các mô hình thô khác ít quan trọng hơn (và có thể không xem được) từ các đối tượng đó)? Làm thế nào bạn sẽ lưu trữ một cái gì đó như thế cùng với chiều cao của bạn? Có thể bởi thiết kế, chỉ có một vài mốc quan trọng như vậy và sau đó chỉ lưu trữ danh sách của chúng trong một tập tin nhỏ, và trên mỗi khung render những cái nhỏ hơn x thực sự-xa-xa?
Tôi biết rằng chuỗi Halo chọn chia trò chơi thành các cấp độ và sau đó mỗi cấp có hộp bầu trời làm bằng tay khác nhau. Đây là những gì tôi đã đi cho trong đề nghị đầu tiên, nhưng tôi không chắc chắn về nó. Tôi đoán tôi thực sự chỉ đang cố gắng thu thập các ý tưởng hoặc tinh chỉnh hoặc các vấn đề khác trong ý tưởng của mình, để tôi có thể chọn cái nào để làm mẫu với thời gian và kiến thức hạn chế của mình.
Một chủ đề liên quan khác là cách hiển thị ngọn núi ở khoảng cách, vì chúng sẽ là một phần của mô hình chiều cao chứ không phải mô hình 3D trên đầu, vì vậy chúng sẽ không thể có phiên bản thô và bản đồ chiều cao thuật toán xấp xỉ có thể vít lên núi từ một khoảng cách thực sự xa như vậy (giả sử bạn thậm chí sẽ cố gắng để gần đúng và render hình học xa như vậy, mà bạn có thể sẽ không). Điểm thưởng nếu bạn bao gồm điều này trong câu trả lời của bạn quá. :)
Cảm ơn!
P.S. Tôi đang sử dụng OpenGL. Tôi chỉ đang tìm kiếm các khái niệm cơ bản nhưng nếu bạn chọn đăng mã ví dụ, vui lòng sử dụng các hàm và thuật ngữ OpenGL! :)
EDIT: Cảm ơn bạn đã trả lời! Đối với mục đích tài liệu ở đây là một tài nguyên khác mà tôi đã tìm thấy: Chương 4.9 trong Lập trình trò chơi Đá quý 2 bao gồm khái niệm dựng hình phong cảnh ở xa trên bầu trời: http://books.google.com/books?id=1-NfBElV97IC&lpg=PA416&ots=SOpnfijZly&dq=render%20distant%20to%20skybox&pg=PA416 (tiếc là xem trước chỉ là trang đầu tiên của chương ... phải lấy cuốn sách đó từ thư viện của trường đại học ngay sau khi tôi trở lại vào tháng 8)
Sau khi đọc những điều này, tôi vẫn cho rằng LOD là dành cho các đối tượng ở khoảng cách gần đúng. Nếu các đối tượng thậm chí không lớn một pixel, nhưng bạn vẫn cho chúng vào card đồ họa, bạn chỉ lãng phí năng lượng, cho dù sử dụng LOD hay không. Và đó sẽ là trường hợp cho tất cả mọi thứ nhưng các đối tượng xa lớn nhất tuyệt đối; một vài tòa nhà cao tầng và một số ngọn núi, trong hầu hết các trường hợp, nhưng các mô hình chi tiết nhỏ (bụi cây, thậm chí cả cây cối, đá, bất kỳ cảnh quan nào khác ...) sẽ không được nhìn thấy từ khoảng cách như vậy. Vì vậy, tôi thích dựng hình kỹ thuật skybox, và khi tôi đến cây cầu này, đó là cách tôi sẽ vượt qua nó; và tôi sẽ đảm bảo sử dụng LOD cho tất cả các mô hình, tôi sẽ không tạo ra khoảng cách như vậy.
Tôi, bằng cách này, suy nghĩ nhiều hơn dọc theo các dòng của trò chơi Oblivion, vì vậy câu trả lời có thể phụ thuộc vào thể loại trò chơi.
Tôi nghĩ rằng Field of View point của bạn hơi không chính xác. FOV thường đề cập đến góc của "máy ảnh" mà bạn đang xem xét.Điểm mà tại đó bạn cắt bỏ các vật thể xa được gọi là "Máy bay cắt xa" –
@NeilN, bạn nói đúng; Tôi sẽ sửa đổi câu trả lời. –