Como implementar sombras suaves para luz omnidirecional (ponto). Usamos a técnica típica de mapeamento de sombra. A profundidade é renderizada no cubo de textura e o addresing é bastante simples. Apenas usando vetor da luz para fragmentar a posição mundial. Funciona perfeitamente. Até que você queira sombras suaves. Em nosso mecanismo, usamos a técnica PCSS para luzes do ponto. Mas, como ponto de luz, começa problemas.
Como provar em 3D?
Desenvolvi a técnica quando a base ortonormal é criada a partir de uma direção e um vetor ascendente (0,1,0). E então multiplique o vetor de amostragem (algo como este (1.0, i / depthMapSize, j / depthMapSize) com essa base. Mas isso (é claro :)) parece muito ruim para vetores próximos (0,1,0) e (0, - 1,0)
Agradeço qualquer ajuda nisso.