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

Post on 23-Jan-2016

35 views 0 download

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

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