Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De...

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

Transcript of Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De...

Page 1: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

George Borshukov (Matrix Reloaded)

Page 11: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Esempio Spazio Tessitura

Page 12: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Risultati

Page 18: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Uno sguardo da vicino

Page 21: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Evoluzione

Solo mappa colore

Solo sottosuperficiale finale

Page 24: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Grazie!

Page 26: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Page 27: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Jansen

Page 34: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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 lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Page 37: Algoritmi per lilluminazione interattiva di materiali traslucenti deformabili su GPU Giacomo De Martino Anno accademico 2005/2006 Università di Roma La.

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

Jansen

Multi livello Singolo livello