local, deformable precomputed radiance transfer

Post on 05-Feb-2016

49 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Local, Deformable Precomputed Radiance Transfer. Peter-Pike Sloan, Ben Luna Microsoft Corporation John Snyder Microsoft Research. “Local” Global Illumination. Renders GI effects on local details. Rotates transfer model. Neglects gross shadowing. “Local” Global Illumination. Original. - PowerPoint PPT Presentation

TRANSCRIPT

Local, Deformable Precomputed Radiance Transfer

Local, Deformable Precomputed Radiance Transfer

Peter-Pike Sloan, Ben Luna

Microsoft Corporation

John Snyder

Microsoft Research

“Local” Global Illumination“Local” Global Illumination

Renders GI effects onlocal details

Neglects gross shadowing

Rotates transfer model

“Local” Global Illumination“Local” Global Illumination

Original Ray Traced Rotated

Bat DemoBat Demo

illuminateilluminate responseresponse

TransferVector

Precomputed Radiance Transfer (PRT)Precomputed Radiance Transfer (PRT)

Related Work: Area LightingRelated Work: Area Lighting

[Kautz2004]

[James2003]

[Ramamoorthi2001]

[Sloan2002][Ng2003]

[Liu2004;Wang2004]

[Sloan2003]

[Muller2004]

[Zhou2005]

Other Related WorkOther Related Work

• Directional Lighting

– [Malzbender2001],[Ashikhmin2002]

– [Heidrich2000]

– [Max1988],[Dana1999]

• Ambient Occlusion

– [Miller1994],[Phar2004]

– [Kontkanen2005],[Bunnel2005]

• Environmental Lighting

– [McCallister2002]

Spherical Harmonics (SH)Spherical Harmonics (SH)

• Spherical Analog to the Fourier basis

• Used extensively in graphics

– [Kajiya84;Cabral87;Sillion91;Westin92;Stam95]

• Polynomials in R3 restricted to sphere

1

0

n l

lm lml m l

f s f y s

lm lmf f s y s ds

projection reconstruction

Spherical Harmonics (SH)Spherical Harmonics (SH)

• Spherical Analog to the Fourier basis

• Used extensively in graphics

– [Kajiya84;Cabral87;Sillion91;Westin92;Stam95]

• Polynomials in R3 restricted to sphere

lm lmf f s y s ds

projection reconstruction

f s f y s

Low Frequency LightingLow Frequency Lighting

order 1 order 2 order 4

order 8 order 16 order 32 original

SH Rotational InvarianceSH Rotational Invariance

rotate

rotate

SH SH

Spherical Harmonics (SH)Spherical Harmonics (SH)

nth order, n2 coefficients

Evaluation O(n2)

Zonal Harmonics (ZH)Zonal Harmonics (ZH)

Polynomials in Z

Circular Symmetry

SH Rotation StructureSH Rotation Structure

2

2 2

1

3 1

C

L L L Y

L L L Z

L L L X

Q Q Q Q Q YX

Q Q Q Q Q YZ

Q Q Q Q Q Z

Q Q Q Q Q XZ

Q Q Q Q Q X Y

O(n3)

Too Slow!

ZH Rotation StructureZH Rotation Structure

2

1

3 1

C

L L L

L L L Z

L L L

Q Q Q Q Q

Q Q Q Q Q

Q Q Q Q Q Z

Q Q Q Q Q

Q Q Q Q Q

O(n2)

What’s that column?What’s that column?

Rotate delta function so that z → z’ :

• Evaluate delta function at z = (0,0,1)

• Rotating scales column C by dl

– Equals y(z’) due to rotation invariance

0 0

2 1( )

4l z l l

ld s y s ds y z

z

z’

lm l lmC d y z

( )z s

( )z s

What’s that column?What’s that column?

Rotate delta function so that z → z’ :

• Evaluate delta function at z = (0,0,1)

• Rotating scales column C by dl

– Equals y(z’) due to rotation invariance

0 0

2 1( )

4l z l l

ld s y s ds y z

z

z’

lm l lmC d y z

( )z s

( )z s

lm lm lC y z d

Efficient ZH RotationEfficient ZH Rotation

z

g(s)

Efficient ZH RotationEfficient ZH Rotation

0l lg y s g s ds

z3 4

0

0

3 2

3 4

3

g(s)

Efficient ZH RotationEfficient ZH Rotation

z z’3 4

0

0

3 2

3 4

3

g(s) g’(s)

0l lg y s g s ds

Efficient ZH RotationEfficient ZH Rotation

* * * * *0 1 1 1diag , , , ,G g g g g

*g G y z

z z’3 4

0

0

3 2

3 4

3

g(s)

0l lg y s g s ds

g’(s)

Efficient ZH RotationEfficient ZH Rotation

* 4

2 1l

l ll

gg g

d l

* * * * *0 1 1 1diag , , , ,G g g g g

*g G y z

z z’3 4

0

0

3 2

3 4

3

g(s)

0l lg y s g s ds

g’(s)

Transfer Approx. Using ZHTransfer Approx. Using ZH

• Approximate transfer vector t by sum of N “lobes”

* *

1

N

i ii

t G y s

e.g., t + + +

Transfer Approx. Using ZHTransfer Approx. Using ZH

• Approximate transfer vector t by sum of N “lobes”

* *

1

N

R i ii

t G y R s

* *

1

N

i ii

t G y s

Transfer Approx. Using ZHTransfer Approx. Using ZH

• Approximate transfer vector t by sum of N “lobes”

• Minimize squared error over the sphere

2

2 2

St s t s ds t t

* *

1

N

i ii

t G y s

* *

1

N

R i ii

t G y R s

Single Lobe SolutionSingle Lobe Solution

• For known direction s*, closed form solution

• “Optimal linear” direction is often good

– Reproduces linear, formed by gradient of linear terms

– Well behaved under interpolation

– Cosine weighted direction of maximal visibility in AO

* *

1

4 (2 1)l

l lm lmm

g y s t l

Multiple LobesMultiple Lobes

Random vs. PRT SignalsRandom vs. PRT Signals

1.00E-10

1.00E-09

1.00E-08

1.00E-07

1.00E-06

1.00E-05

1.00E-04

1.00E-03

1.00E-02

1.00E-01

1.00E+00

0 1 2 3 4 5 6 7

Number of Lobes

Lo

g S

qu

ared

Err

or

Random Max

Random Avg

1.00E-10

1.00E-09

1.00E-08

1.00E-07

1.00E-06

1.00E-05

1.00E-04

1.00E-03

1.00E-02

1.00E-01

1.00E+00

0 1 2 3 4 5 6 7

Number of Lobes

Lo

g S

qu

ared

Err

or

Random Max

Random Avg

Scene Max

Scene Avg

Energy Distribution of Transfer SignalsEnergy Distribution of Transfer Signals

Energy Per Band

0%

5%

10%

15%

20%

25%

30%

35%

40%

45%

50%

0 1 2 3 4 5 6 7

Band

En

erg

y

Bump

Waffle

WaffleSS

WeaveDirect

WeaveIR

Swirls

Scene

Mayan

Effects of Subsurface

0%

10%

20%

30%

40%

50%

60%

0 1 2 3 4 5 6 7

Band

En

erg

y

Diffuse

SSA

SSB

Energy Distribution and Subsurface ScatterEnergy Distribution and Subsurface Scatter

RenderingRendering

• Rotate lobe axis, reconstruct transfer and dot with lighting

• Care must be taken when interpolating

– Non-linear parameters

– Lobe correspondence with multiple-lobes

* *

1 0

N n l

lm i ili l m l

y R s g

l

Light Specialized RenderingLight Specialized Rendering

* *

1 0

N n l

lm i ili l m l

y s g

l

Light Specialized RenderingLight Specialized Rendering

* *

1 0

N n l

lm i ili l m l

y s g

l

* *

1 0

N n l

lm i il lmi l m l

y s g l

Light Specialized RenderingLight Specialized Rendering

* *

1 0

N n l

lm i il lmi l m l

y s g l

* *

1 0

N n l

il lm i lmi l m l

g y s l

* *

1 0

N n l

lm i ili l m l

y s g

l

Light Specialized RenderingLight Specialized Rendering

* *

1 0

N n l

il lm i lmi l m l

g y s l

Light Specialized RenderingLight Specialized Rendering

O(N n2) → O(N n)

Quadratic

QuinticQuartic

Cubic

Generating LDPRT ModelsGenerating LDPRT Models

• PRT simulation over mesh

– texture: specify patch (a)

– per-vertex: specify mesh (b)

• Parameterized models

– ad-hoc using intuitive parameters (c)

– fit to simulation data (d)

(a) LDPRT texture

(b) LDPRT mesh(c) thin-membrane model (d) wrinkle model

Peter-Pike Sloan
pipeline pictures? Other images?

LDPRT Texture PipelineLDPRT Texture Pipeline

• Start with “tileable” heightmap

• Simulate 3x3 grid

• Extract and fit LDPRT

• Store in texture maps

Thin Membrane ModelThin Membrane Model

• Single degree of freedom (DOF)

– “optical thickness”: light bleed in negative normal direction

Wrinkle ModelWrinkle Model

• Two DOF

– Phase, position along canonical wrinkle

Wrinkle ModelWrinkle Model

• Two DOF

– Phase, position along canonical wrinkle

– Amplitude, max magnitude of wrinkle

Wrinkle Model FitWrinkle Model Fit

• Compute several simulations

– 64 discrete amplitudes

– 255 unique points in phase

• Fit 32x32 textures

– One optimization for all DOF simultaneously

– Optimized for bi-linear reconstruction

– 3 lobes

Glossy LDPRTGlossy LDPRT

• Use separable BRDF

• Encode each “row” of transfer matrix using multiple lobes (3 lobes, 4th order lighting)

• See paper for details

DemoDemo

Conclusions/Future WorkConclusions/Future Work

• “local” global illumination effects

– soft shadows, inter-reflections, translucency

• easy-to-rotate rep. for spherical functions

– sums of rotated zonal harmonics

– allows dynamic geometry, real-time performance

– may be useful in other applications [Zhou2005]

• future work: non-local effects

– articulated characters

AcknowledgementsAcknowledgements

• Demos/Art: John Steed, Shanon Drone, Jason Sandlin

• Video: David Thiel

• Graphics Cards: Matt Radeki

• Light Probes: Paul Debevec

top related