Top Banner
Radiance Workshop 2004 – Fribourg, 1 Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K. Bouatouch 3 rd International Radiance Workshop 11 - 12 October 2004, Fribourg, Switzerland
55

1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Apr 01, 2015

Download

Documents

Karina Norred
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 1

Radiance Caching for Efficient Global Illumination Computation

J. Křivánek P. Gautron

S. Pattanaik K. Bouatouch

3rd International Radiance Workshop

11 - 12 October 2004, Fribourg, Switzerland

Page 2: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 2

High Quality GI

The Day After Tomorrow, © 2004 20th Century Fox

Shrek 2, © 2004 PDI/DreamWorks

Page 3: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 3

Global Illumination… How?

Lo(P, ωo) ∫ Li(P, ωi)= * BRDF(ωo, ωi) *cos(θ)dωi

Page 4: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 4

Monte Carlo

Shooting Gathering

Lo(P, ωo) ∫ Li(P, ωi)= * BRDF(ωo, ωi) *cos(θ)dωi

No analytical solution

Page 5: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 5

Shooting

Page 6: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 6

Shooting

Page 7: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 7

Shooting

Final gathering: costly

Photon map only for indirect diffuse

Distribution ray tracing for non diffuse: noisy

Page 8: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 8

Gathering

Page 9: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 9

Gathering

Random sampling: noisy

High quality: many rays

Support for glossy GI

Page 10: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 10

Irradiance Caching

Sparse computation of indirect diffuse lighting

Page 11: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 11

Irradiance CachingSparse computation of indirect diffuse lighting

Page 12: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 12

Irradiance Caching

Interpolation

Sparse computation of indirect diffuse lighting

Page 13: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 13

GradientsWhy?

Without gradients With gradients

Images from "Irradiance Gradients", Gregory J. Ward, Paul S. HeckbertEurographics Workshop on Rendering 1992

Page 14: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 14

Gradients

ni

n

E = Ei + …

Page 15: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 15

Rotational gradient

ni

n

ni

n

θ

E = Ei + (ni x n)r Ei

E = Ei + …

Page 16: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 16

Translational gradient

ni

n

D

E = Ei + (ni x n)r Ei

+ Dt Ei

Page 17: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 17

Non diffuse surfaces

Indirect glossy: distribution ray tracing

High quality: many rays

Irradiance values: indirect diffuse

Page 18: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 18

Contributions

BDRF-based selection of record points

Novel translational gradient

Extension to indirect glossy lighting

Low frequency: records

High frequency: distribution ray tracing

Page 19: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 19

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 20: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 20

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 21: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 21

Caching on glossy surfaces

Need hemispherical data representation

Page 22: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 22

Caching on glossy surfaces

ni

n

?

Need new gradients

Page 23: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 23

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 24: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 24

Hemispherical Functions

Original Function Piecewise linear approximation

Need a more compact and smoothrepresentation

Better fitting Fast computation of integrals

Page 25: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 25

Orthogonal Polynomials

fi = f(x)bi(x)dx f(x) = fi bi(x)

g(x) = gi bi(x) f(x)g(x)dx = fi gi

Page 26: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 26

Application to GI

Incident Radiance BRDF

dot product

Page 27: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 27

Spherical Harmonics

(0,0)

(1,-1)

(2,-2) (2,-1) (2,0) (2,1) (2,2)

(1,0) (1,1)

Page 28: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 28

Hemispherical Harmonics

(0,0)

(1,-1)

(2,-2) (2,-1) (2,0) (2,1) (2,2)

(1,0) (1,1)

A Novel Hemispherical Basis for Accurate and Efficient RenderingP. Gautron, J. Křivànek, S. Pattanaik, K. Bouatouch, EGSR 04

Page 29: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 29

Why (Hemi)Spherical harmonics?

Ease of use

Rotation support

Page 30: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 30

Representation Limitations

Bandlimited: "ringing" artifacts

Limit to low-frequency BRDFs

Page 31: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 31

Adaptive BRDF Representation

Low frequency"(H)SH-Friendly"

High frequency

Why?

Ward BRDF with same parameters

Page 32: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 32

Adaptive BRDF RepresentationHow?

BRDF = 4D FunctionParabolic Parameterization

Page 33: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 33

Incoming Radiance

λlm (P) = Li(P, ωi)Bl

m(ωi) d ωi∫

Same principle as Irradiance Caching

Page 34: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 34

Incoming Radiance

λlm (P) = Li(P, ωi)Bl

m(ωi) d ωi∫

Same principle as Irradiance Caching

(H)SH

Page 35: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 35

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 36: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 36

Radiance Gradients

ni

n

(H)SH

Page 37: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 37

Rotational gradient

ni

n

Rotation Matrix

(H)SH

(H)SH= R

ni

n

θ

Page 38: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 38

Translational gradient

D

ni

n

(H)SH

Goal

(H)SH =∂ (H)SH

∂ x, ∂ (H)SH

∂ y, 0

Page 39: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 39

Translational GradientNumerical Method

p

Page 40: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 40

Translational GradientNumerical Method

p Δx p'

Page 41: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 41

Translational GradientNumerical Method

p Δx p'

∂ λlm

∂ x =λ'lm - λl

m

Δx

λlm = *Li( )*Bl

m( )

λ'lm = *Li( )*Blm( )

*Li( )*Blm( )θk, ΦkΩkΣ

k=1

N

λlm =

λ'lm = *Li( )*Blm( )Ω'kΣ

k=1

N

θk, Φk

θk, Φk θ'k, Φ'k

Page 42: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 42

Translational GradientAnalytical Method

*Li ( )*Blm( )θk, ΦkΩkΣ

k=1

N

λlm = θk, Φk

=∂∂ x

, ∂∂ y

, 0

Σk=1

N

∂ λlm =

∂ xLi (θk, Φk)*

+Ωk ∂ x

∂ Blm(θk, Φk)

∂ Ωk

∂ xBl

m(θk, Φk)

Page 43: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 43

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 44: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 44

Outgoing Radiance

ni

n

(H)SH (H

)SHRi= dx+ ∂

∂ x(H)SH

+∂∂ y

(H)SH

dy

Page 45: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 45

Outgoing Radiance

ni

n

=Λ(P)

Ridx+

∂ Λi

∂ xΣi S

Λi dy∂ Λi

∂ y+ wi(P)

Σi S

wi(P)

Page 46: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 46

Outgoing Radiance

Incident Radiance BRDF

dot product

Page 47: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 47

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 48: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 48

Stills comparison

P4 2.2GHz, 512MB RAM

Monte Carlo Path Tracing Radiance Caching

Rendering time: 155s

Page 49: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 49

Stills comparison

Monte Carlo Path Tracing

Radiance Caching

Page 50: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 50

Video: Cornell Box

Page 51: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 51

Video: Flamingo

Page 52: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 52

Outline

Introduction

IC for glossy surfaces

Hemispherical data representation

Radiance gradients

Outgoing radiance computation

Results

Conclusion

Page 53: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 53

Conclusion

Extension of irradiance caching to radiance caching

Definition of new translational gradient

Quality improvement

Efficiency improvement

Independent from distribution

Independent from basis functions

Page 54: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 54

Future Work

"All-frequency" hemispherical representation

Hardware support

Page 55: 1 Radiance Workshop 2004 – Fribourg, Switzerland Radiance Caching for Efficient Global Illumination Computation J. Křivánek P. Gautron S. Pattanaik K.

Radiance Workshop 2004 – Fribourg, Switzerland 55

Any Questions ?

Rendered using Radiance Caching