Cái nào tốt hơn, một mô hình cấp độ lớn hay nhiều mô hình cấp độ nhỏ hơn?


8

Tôi đang viết một trò chơi trong XNA 4 và tôi muốn có một cái gì đó giống như một hành lang. Bạn có nghĩ rằng tốt hơn là sử dụng một mô hình lớn và vững chắc, hoặc sử dụng nhiều bộ phận nhỏ (cửa sổ, cầu thang, cửa ...)?

Câu trả lời:


8

Về mặt kết xuất đồ họa, một lưới lớn sẽ vẽ nhanh hơn nhiều lưới nhỏ hơn.

Nếu bạn đang nói về thứ gì đó như hành lang, có lẽ nó sẽ không chuyên sâu cho GPU nếu bạn gửi nó dưới dạng cửa và sàn và một số bức tường. Các mắt lưới nhỏ hơn cũng cho phép bạn di chuyển với định vị dễ dàng hơn.

Nếu bản vẽ của bạn trở thành nút cổ chai, thì hãy xem xét nó.


1
Nó không phải là nhanh hơn. Lấy thế giới của Oblivion, biểu hiện điều này như một người sẽ ngu ngốc và rất chậm vì bạn không thể chọn phần nào hiển thị cho người chơi. Cuối cùng, bạn sẽ lãng phí một tấn tài nguyên
Peter lsted

1
Ví dụ của ông là một hành lang. Nếu anh ấy nói 'toàn bộ thế giới', tôi sẽ đề cập đến điều đó. : P
Vịt Cộng sản

Nói tốt, xấu của tôi
Peter lsted

vâng, cảnh cấp độ của tôi là liên kết
Vodáček

Với cảnh đó, chắc chắn một số yếu tố. Sẽ là một nỗi đau thực sự khi thay đổi cảnh trong 3DMax, máy xay sinh tố hoặc bất cứ thứ gì. Và như "Vịt Cộng sản", nếu nó trở thành nút cổ chai và bạn chắc chắn đó là mô hình chứ không phải bất cứ điều gì khác, hơn là có thể (nếu hiệu suất thực sự quan trọng) bạn có thể làm điều đó.
Peter lsted

5

Tôi khuyên bạn nên giữ cửa như một mô hình riêng biệt, trừ khi bạn chắc chắn rằng bạn không bao giờ muốn mở nó.

Windows nếu chúng trong suốt cũng muốn là các mô hình riêng biệt để chúng có thể được sắp xếp độ sâu phù hợp để kết xuất.

Mọi thứ khác có lẽ nên là một mô hình và kết cấu duy nhất để có hiệu suất tốt nhất và để loại bỏ bất kỳ vết nứt nào khi chúng kết hợp với nhau.


3

Nếu cấp độ của bạn có quá nhiều chi tiết, bạn nên chia nó thành nhiều phần và áp dụng một số loại bỏ bực bội để chỉ vẽ các mắt lưới hiện có thể nhìn thấy.


Tôi đã sử dụng phương pháp này, nhưng tôi nghĩ rằng nó chỉ hoạt động cho toàn bộ mô hình (không phải cho các mắt lưới), nhưng có thể thấy rằng chúng tôi phụ thuộc vào mã bản vẽ của tôi.
Vodáček

Cho dù nó phụ thuộc vào toàn bộ mô hình hoặc các mắt lưới phụ thuộc vào trình kết xuất của bạn hoặc cách bạn đã thực hiện loại bỏ. Đỉnh là đỉnh.
giảm tốc

1

trong hầu hết các trường hợp sử dụng các phần nhỏ đều có giá trị bởi vì nó mang lại khả năng sử dụng lại và linh hoạt mã của bạn; và trong trường hợp hành lang hoặc thứ gì đó tương tự không bao gồm NHIỀU (nhiều người có nghĩa là một số ít nhất là 40) phần nhỏ hơn, hiệu suất của việc sử dụng một mô hình lớn và rắn là không đáng kể (trừ khi bạn đang vẽ đối tượng nhiều lần mỗi khung hình).

nếu bạn quan tâm đến hiệu suất, tôi khuyên bạn nên tính toán trước ánh sáng hoặc sử dụng một số loại mảng đỉnh (bộ đệm đỉnh?) sẽ thực sự tạo ra sự khác biệt. (nếu những điều đó có thể có trong XNA - tôi không biết nhiều về XNA)

ps: đoạn đầu tiên của bài này chỉ đúng về vẽ (ví dụ không sử dụng các mô hình vật lý riêng biệt cho các phần của hành lang)

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.