Làm thế nào để thực hiện các bóng mềm cho ánh sáng (điểm) omni. Chúng tôi sử dụng kỹ thuật ánh xạ bóng điển hình. Độ sâu được kết xuất thành khối kết cấu và addresing khá đơn giản sau đó. Chỉ cần sử dụng vector từ ánh sáng đến vị trí thế giới mảnh. Nó hoạt động hoàn hảo. Cho đến khi bạn muốn bóng mềm. Trong động cơ của chúng tôi, chúng tôi sử dụng kỹ thuật PCSS cho đèn chiếu sáng điểm. Nhưng đối với ánh sáng điểm bắt đầu rắc rối.
Làm thế nào để lấy mẫu trong 3D?
Tôi đã phát triển kỹ thuật khi cơ sở trực giao được tạo ra từ một hướng và upvector (0,1,0). Và sau đó nhân vectơ lấy mẫu (một cái gì đó như thế này (1.0, i / heightMapSize, j / heightMapSize) với cơ sở này. Nhưng điều này (tất nhiên :)) trông khá tệ đối với các vectơ gần (0,1,0) và (0, - 1,0).
Tôi sẽ đánh giá cao bất kỳ sự giúp đỡ về điều này.