GPU: processori manycore Annalisa Massini Architettura degli elaboratori III A a.a. 2009/2010.
Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De...
-
Upload
filippo-melis -
Category
Documents
-
view
215 -
download
0
Transcript of Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De...
Algoritmi per l’illuminazione interattiva di
materiali traslucenti deformabili su GPU
Giacomo De Martino
Anno accademico 2005/2006
Università di Roma “La Sapienza”
Relatore Prof. Marco Schaerf
Correlatore Ing. Marco Fratarcangeli
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Materiali Traslucenti
Esempi: foglie, cera, giada, pelle, polpa della frutta, latte
Indizi fenomenologici:- riflessi speculari- Non serve colore- Riaffioramento colore- “riempito” di luce
OmogeneiEterogenei
Traslucente ≠ Trasparente
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Illuminazione digitale
• Equazione del rendering = trasporto di luce
dnxLxfxLxL ireo ,,,,,
BSDF
-Conservazione energia
-Linearità
-Omogeneità spaziale
Differenti materiali
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Materiali Volumetrici
• Spessore • Indice di Rifrazione• Coefficiente assorbimento• Coefficiente diffusione
Facili da misurare
s
X
a
,
,,,
,
,
40
,
0
,
sxLe
xddxLxpxe
xdxLxexL
sxx
isS xx
eaS xx
Difficile da calcolare
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Diffusione sottosuperficiale (sss)
• benche un effetto globale, è sostanzialmente locale a causa del decadimento esponenziale
• Diffusione in un oggetto ha un effetto molto piccolo sull’apparenza di un altro oggetto
• anche all’interno di uno stesso oggetto, ha piccolo effetto in un altro punto della superficie se la distanza tra i due punti è grande
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Proprietà della pelle 1- Dominata da diffusione sottosuperficiale
~6% riflessione diretta, 94% sottosuperficiale- Riflessione e Diffusione sono differenti nelle lunghezze d’onda rosse verde e blu- Diffusione modellata male assumendo un singolo livello di materiale quasi uniforme- Cambio dell’indice di rifrazione tra aria e pelle- Hanno luogo riflessione e rifrazione di Fresnel
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Proprietà della pelle 2- Luce entra in un punto ed esce in un altro (Importante!)
- La superficie rugosa e oliosa ha trasmissione non uniforme (sottile)
- 1/10 attraverso primo livello – La luce è già diffusa!
- Tracciamento luce totale – ignora direzione
- Ogni luce rifressa indietro è diffusa (uguale in ogni direzione)
Strato olioso sottile
Epidermide
Derma
~0.25 mm
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Proprietà della pelle 3• Quanta luce a distanza r?• Nome: profilo di diffusione del materiale• Differente profilo per canale rosso verde, blu• Collezionare luce che arriva in ogni punto e spargerla nei
punti vicini
Quanta luce a distanza r?
Raggio incanalato
r
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Spazio tessituraConoscere quantità di luce per ogni punto dell’oggetto
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
George Borshukov (Matrix Reloaded)
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Esempio Spazio Tessitura
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Piattaforma
2 core CPU GPU CPU to GPU CPU to system memory
GPU to graphics memory
30 GFLOPS 200 GFLOPS 1 GB/s 8 GB/s 30 GB/s
•Tasso interattivo = 10-30 fps•Evitare pre-computazioni
GPU!
1 ordine di grandezza
• GPU Observed GFLOPS• CPU Theoretical peak GFLOPS
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Panoramica• Circa 1,400 istruzioni per pixel
• 13 passate di rendering
• 11 mappe di colore, maschere, mappe di “disturbo”(5 mappe di dettaglio)
• Modello di illuminazione basato sulla fisica
blur
Render texture space light
blur
Linear combinationLinear combination
Rim & specular
…+
Shadow mapping
5 times
start
Texture mapping
+Textures
horizontal vertical
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Irradianza sottosuperficiale 1
Thin oil layer
Epidermis
Skin layers
Detail absorptionlayer
Dermis
Quanta luce (e di che colore)
che penetra dentro la superficie
Deve essere diffusa?
– Lighting*sqrt(diffuseCol)enter– Lighting*sqrt(diffuseCol)exit
55
211
2111
23
28,,
ENLNR
RNELD s
d
LNNLD ,Lambert
Ashikmin-Shirley
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Irradianza sottosuperficiale 2
• Ombre (alta freq) • Luce indiretta (bassa freq)
AO + Ambiente=
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Convoluzione
Combine multiple subsurface irradiance blurred version with Different RGB weights
Hierarchical Gaussian blur
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Risultati
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Avvertimenti
• Cuciture tessitura- Usare buon clearColor
- Creare maschera cuciture e usarla nella passata finale
• Correzione distorsioni accurata- Un pixel nello spazio tessitura != distanza costante del mondo reale
- Troppa sfocatura porta ad “effetto cera”
- Calcola mappe distorsione con derivate coord UV
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Aggiungere dettagli (meso-scale)
+
=
Bump map 1
Bump map 2
- Dettagli pori, rughe della pelle sono importanti- CReare una mappa unica ad alta risoluzione richiede troppa memoria
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Uno sguardo da vicino
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Specular (micro-scale)
Extremely small scale
Oily layer
Epidermis
uffuF 15
1
-specular BRDFs have-Roughness parameter “m”(inverse relation
to exponent)-Index of refraction (use 1.4)
-Phong and Blinn-Phong aren’t ideal for skin
Torrance-Sparrow
Schlick
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Correzione Gamma• Il monitor sta mentendo!• luminosità visualizzata = ValorePixel^2.2• Foto & tessiture disegnate a mano avranno pixel non lineari
• Per convertirle a lineari:- C’ = C^2.2- sRGB se lo supporta l’hardware
(Non correggere mappe che codificano informazioni non di colore)
• Invertire deformazione prima di scrivere sul framebuffer- C’ = C^1/2.2
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Evoluzione
Solo mappa colore
Solo sottosuperficiale finale
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Conclusions & future work
• So we have a scalable skin shading tecnique (tune resolution map, render target and #layers composition)
• This skin shader is good to reproduce skin in low lit environment such as closed environment or night day time;
• Next: – include real-time Ambient Occlusion and real-time environement
Irradiance– HDR lighting
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Grazie!
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Sommario
• Obiettivo: rendering interattivo fotorealistico pelle volto umano
• Studio Materiali Traslucenti
• Tecniche illuminazione nelle produzioni digitali
• Implementazione interattiva
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Radiant Flux Radiosity Radiance Irradiance
B L E
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
BRDF
• BRDF: 4D, light reflects same point hits surface
• Reciprocity
• Energy conservation
iiii
eeei,r
dωθωL
ωdLωωf
cos ωiωe
N
dωiθi
L=radiance
E=irradiance
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Materiali Volumetrici• Costruiamo l’equazione di rendering
volumetrico
,, xLxxL t
dxLxpxxL is ,,,,4
Funzione di fase
Henyey-Greenstein
backscattering isotropic scattering forward scattering 232
2
cos21
1cos
gg
gp
Riduzione radianza
Aumento radianza
variando g
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Diffusione multipla
ootoo xBFxL
,1
,
S
ioidio dxxxRxExB ,
iiiiiii dNFxLxE
,,
Facile dato B
Banale
DIFFICILE!!
iiii
A
o xdAdnLSL
...
2
......Come calcolarlo?
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
ooiidooiiooii xxSxxSxxS ,;,,;,,;, 1
otoiditooiid FxxRFxxS
,,1
,;,
Approssimazione dipolo
iiiit
oisooo ddsxLss
eFpxL
,,,2 0
1
Soluzione analitica per SSS
singolo
multiplo
iiiiii
A
ooiiooo xdAdnxLxxSxL
,,;,,2
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Jansen
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Implementazione con mappe profondità
1) I(Xin)E(Xin)
B(xout)
L(Xout)
2)
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Ancora…
0 depth 1
Layer 0 Layer 1 Layer 2
0 depth 1
0 depth 1
Depth map
b
a
c
Light
Eye
Object
Depth map
di
do cos1
za
e
Depth peeling per oggetti concavi
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino
Jansen
Multi livello Singolo livello