Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

37
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

description

Università di Roma “La Sapienza”. Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU. Giacomo De Martino. Relatore Prof. Marco Schaerf. Correlatore Ing. Marco Fratarcangeli. Anno accademico 2005/2006. - PowerPoint PPT Presentation

Transcript of Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Page 1: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 2: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 3: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 4: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 5: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 6: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 7: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 8: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 9: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Spazio tessituraConoscere quantità di luce per ogni punto dell’oggetto

Page 10: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

George Borshukov (Matrix Reloaded)

Page 11: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Esempio Spazio Tessitura

Page 12: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 13: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 14: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 15: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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=

Page 16: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 17: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Risultati

Page 18: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 19: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 20: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Uno sguardo da vicino

Page 21: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 22: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 23: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Evoluzione

Solo mappa colore

Solo sottosuperficiale finale

Page 24: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 25: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Grazie!

Page 26: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Page 27: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 28: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Radiant Flux Radiosity Radiance Irradiance

B L E

Page 29: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 30: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 31: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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?

Page 32: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 33: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Jansen

Page 34: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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)

Page 35: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

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

Page 36: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Page 37: Algoritmi per l’illuminazione interattiva di materiali traslucenti deformabili su GPU

Dip. di Informatica e Sistemistica -Università di Roma "La Sapienza" - Giacomo De Martino

Jansen

Multi livello Singolo livello