Tôi muốn sáng tác các mô hình và các hạt dựa trên hình tam giác thông thường với cảnh chiếu tia ở tốc độ khung hình hợp lý.
webGL không cho phép bạn viết gl_FragDepth
shader mảnh. Bạn không thể có nhiều mục tiêu kết xuất, nhưng bạn có thể kết xuất thành một kết cấu RGBA và sau đó sử dụng kết cấu đó làm đầu vào cho một bản vẽ khác. Vì vậy, tôi có thể kết xuất cảnh theo dõi tia của mình và lưu trữ độ sâu làm đầu vào cho giai đoạn tiếp theo. Điều này rõ ràng là xa lý tưởng, nhưng hoàn toàn khả thi.
Tôi rất muốn sai về điều này, và điều này được thu thập từ thử nghiệm và sai sót hơn là bất kỳ nguồn chính xác nào; xin vui lòng sửa chữa bất kỳ giả định sai sót
Làm thế nào bạn có thể đóng gói / giải nén một float và, lý tưởng nhất là một số bit cờ và như vậy, thành một kết cấu RGBA hiệu quả trong một shader mảnh GLSL?