Tessname vs Geometry Shader


11

Chỉnh sửa cho tôi nếu tôi sai, nhưng cả hai công việc Shader Geometry và Tessname Shader đều tạo ra các đỉnh trong Đường ống đồ họa. Những gì tôi muốn biết là chúng khác nhau như thế nào và khi nào tôi nên sử dụng cái này hơn cái kia?


6
Tôi cảm thấy quá lười biếng để viết ra một câu trả lời đầy đủ, nhưng ý chính của nó là Geometry Shader dành cho mức khuếch đại cố định rất nhỏ, trong đó các giai đoạn
Tessname

Câu trả lời:


14

Trên thực tế không, 'công việc' của trình tạo bóng hình học (GS) là đánh giá nguyên thủy.

Các shader hình học có thể điều khiển, nhưng chúng bị giới hạn bởi a) giới hạn trên trong quá trình về số lượng phần tử đầu ra và b) thực thi trong một shader duy nhất ... tất nhiên là shader kích hoạt vấn đề thứ 2, nhưng các shader hình học tổng thể là hiệu quả hơn trong đánh giá nguyên thủy và / hoặc nội suy giá trị so với khi chúng được xác định.

Để so sánh, các shader tàu (TS) được giới thiệu đặc biệt để thực hiện mật độ hình học để chúng hoạt động tốt, mạnh mẽ với một loạt các thuật toán ngày càng mở rộng, (chúng có ý định chơi chữ) và chúng ít bị giới hạn bởi các bộ đệm giới hạn đầu ra.

Daniel Rákos có một bài viết hay về sự tiến hóa của GS / TS: Lịch sử của việc xử lý phần cứng

Khi nào nên áp dụng mỗi trường hợp là 'sử dụng công cụ phù hợp cho công việc' và đây là cách: Xây dựng một đường ống dẫn thô mà không cần tàu để có được đánh giá chính xác trong VS / GS / FS. Tách riêng phạm vi điều chỉnh chế độ xem hoặc dựa trên cảnh, sau đó chèn TS trước GS để tăng mật độ nguyên thủy sau đó được chuyển cho GS đã được thiết kế của bạn. Nếu bạn muốn thử một TS khác, sau đó xây dựng một giải pháp thay thế và trao đổi nó vào đường ống ... bạn thậm chí có thể sử dụng một GS có bản năng để tự động chọn đúng TS dựa trên các thuộc tính nguyên thủy!

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.