Ho cercato di trovare una tecnica di illuminazione globale adatta, preferibilmente basata su OpenGL o GPGPU, per illuminare una scena esterna che ha oggetti statici e sorgenti di luce dinamiche (è un modello di città). Non è necessario che sia molto dettagliato o accurato, ma dovrebbe essere piuttosto semplice e, se possibile, iterativo e raffinato (in modo da poter visualizzare i risultati intermedi).Illuminazione globale per la geometria statica
Le migliori corrispondenze che ho trovato su Internet sono Ray tracing, PRT (Precomputed Radiance Transfer) e Radiosity.
Il tracciamento del raggio sarà troppo lento per la mia applicazione. Il PRT sembra essere troppo complesso e ha un enorme passo di precomputazione, e la radiosity sembra troppo lenta e non sono sicuro che possa essere implementata multi-thread.
Qualcuno conosce una tecnica migliore o una soluzione alternativa ai suddetti problemi?
Qualcosa di simile? http://www.vis.uni-stuttgart.de/~dachsbcn/download/sii.pdf – Damon
Grazie per il link! Ma sembra orientato verso le caustiche e gli effetti speculari. Sono principalmente interessato all'illuminazione diffusa e all'interazione dell'oggetto (come in Radiosity). Immagino che l'hardware grafico non sia ancora in grado di leggere in tempo reale ... –
Prova i volumi di propagazione della luce (google). È la tecnica utilizzata nel gioco Crysis. È piuttosto difficile da implementare però. Se la tua geometria è statica, potresti anche utilizzare il trasferimento radiante precompilato. –