1 temporal radiance caching p. gautron k. bouatouch s. pattanaik

Post on 29-Jan-2016

216 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Temporal Radiance Caching

P. Gautron K. Bouatouch S. Pattanaik

2

Global IlluminationGlobal Illumination

P

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

3

GI: ComputationGI: Computation

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

No analytical solution

Numerical methods

- Radiosity

- Photon mapping- Path tracing- Bidirectional path tracing

- Irradiance & Radiance caching- …

4

GI: ComputationGI: Computation

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

No analytical solution

Numerical methods

- Radiosity

- Photon mapping

- Path tracing

- Bidirectional path tracing

- Irradiance & Radiance caching- …

5

(Ir)Radiance Caching(Ir)Radiance Caching

R

Spatial weighting function

Ward et al. 88: A Ray Tracing Solution for Diffuse Interreflections

6

(Ir)Radiance Caching(Ir)Radiance Caching

Spatial gradients

Ward et al. 88: A Ray Tracing Solution for Diffuse Interreflections

7

(Ir)Radiance Caching(Ir)Radiance CachingWard et al. 88: A Ray Tracing Solution for Diffuse Interreflections

8

(Ir)Radiance Caching(Ir)Radiance Caching

Record Location GI Solution

Ward et al. 88: A Ray Tracing Solution for Diffuse Interreflections

9

(I)RC in Dynamic Scenes(I)RC in Dynamic Scenes

10

(I)RC in Dynamic Scenes(I)RC in Dynamic Scenes

11

(I)RC in Dynamic Scenes(I)RC in Dynamic Scenes

12

(I)RC in Dynamic Scenes(I)RC in Dynamic Scenes

13

ContributionsContributions

Temporal (ir)radiance interpolation scheme

Temporal weighting function

Temporal gradients

Fast estimate of future indirect lighting

14

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

15

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

16

Irradiance Caching: ObservationsIrradiance Caching: Observations

- Indirect lighting is costly

-Indirect lighting changes slowly over a surface

Ward et al. 88: A Ray Tracing Solution for Diffuse Interreflections

17

Irradiance Caching: PrincipleIrradiance Caching: Principle

Record Location GI Solution

Ward et al. 88: A Ray Tracing Solution for Diffuse Interreflections

18

IC Records: Zone of InfluenceIC Records: Zone of Influence

Close objects = Small zone Distant objects = Large zone

19

IC: Spatial Weighting FunctionIC: Spatial Weighting Function

Spatial change of indirect lighting depends on

- Local geometry

- Surrounding geometry

nk

n

PPk

20

IC: Spatial Weighting FunctionIC: Spatial Weighting Function

nk

n

PPk

Upper bound of the change

change = ||P-Pk||

Rk

+ 1-n.nk

Distance Normals divergence

Mean dist. to the surrounding geometry

21

IC: Spatial Weighting FunctionIC: Spatial Weighting Function

nk

n

PPk

wk(P) = 1

||P-Pk||

Rk

+ 1-n.nk

Distance Normals divergence

> 1/a

Mean dist. to the surrounding geometry

22

IC: Spatial GradientsIC: Spatial Gradients

No Gradients With Gradients

Estimate of the spatial change wrt.- Distance - Normals divergence

23

Radiance CachingRadiance Caching

Extension of irradiance caching to glossy interreflections

Cache directional distribution of light

Hemispherical Harmonics

Krivanek et al. 05: Radiance Caching for Efficient Global Illumination Computation

24

Radiance CachingRadiance Caching

Same weighting function as IC

Transl. gradient for each coef.

Rot. gradient replaced by rotation

Krivanek et al. 05: Radiance Caching for Efficient Global Illumination Computation

25

(I)RC in Dynamic Scenes(I)RC in Dynamic Scenes

New cache for each frame

High cost

Flickering

Reuse records across frames

26

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

- Temporal Weighting Function- Estimate of the Future Incoming Lighting- Temporal Gradients

27

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

- Temporal Weighting Function- Estimate of the Future Incoming Lighting- Temporal Gradients

28

Temporal Weighting FunctionTemporal Weighting Function

Estimate the temporal change rate of indirect lighting

29

Temporal Weighting FunctionTemporal Weighting Function

Estimate the temporal change rate of indirect lighting

30

Temporal Weighting FunctionTemporal Weighting Function

Estimate the temporal change rate of indirect lighting

≈Et-Et+1

δt

∂E∂t

(t0)

= E0( -1)

= Et+1/Et

31

Temporal Weighting FunctionTemporal Weighting Function

Inverse of the temporal change rate of indirect lighting

= Et+1/Et

( -1)(t-t0)

1wk

t(t) = > 1/at

Problem : Lifespan is determined when the record is created

32

Lifespan ThresholdingLifespan Thresholding

P

At point P and time t:

Static environment

= Et+1/Et = 1

wkt(t) = ∞ for all t

Infinite Lifespan

33

Lifespan ThresholdingLifespan Thresholding

P

At point P and time t:

Static environment

= Et+1/Et = 1

wkt(t) = ∞ for all t

Infinite Lifespan

34

Lifespan ThresholdingLifespan Thresholding

P

At point P and time t:

Static environment

= Et+1/Et = 1

wkt(t) = ∞ for all t

Infinite LifespanIncorrect

wkt(t) = 0 if t-tk>δtmax

35

Record ReplacementRecord Replacement

36

Temporal Weighting FunctionTemporal Weighting Function

Determines the lifespan of the records

Lifespan depends on the local change of incoming radiance

If the environment is static, threshold the lifespan to a maximum value

= Et+1/Et

Requires the knowledge of future irradiance

However

37

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

- Temporal Weighting Function- Estimate of the Future Incoming Lighting- Temporal Gradients

38

Future Incoming LightingFuture Incoming Lighting

P P

≈Time t Time t+1

E(P, t) = E(P, t+1) =

39

Future Incoming LightingFuture Incoming Lighting

Assumption: Animation is predefined

Future transformation matrices are known

Use reprojection to estimate the future incoming lighting

40

ReprojectionReprojection

k

Et

Et+1

41

ReprojectionReprojection

t+1t

k

EtOK

Et+1

Hemispheresampling

42

ReprojectionReprojection

t+1

? ?

EtOK

Et+1

Reprojection

43

ReprojectionReprojection

EtOK

Et+1

t+1

? ?

Depth culling

44

ReprojectionReprojection

EtOK

Et+1

Hole filling

t+1

? ?

45

ReprojectionReprojection

EtOK

Et+1

t+1

OK

46

Future Incoming LightingFuture Incoming Lighting

Simple reprojection

No additional hemisphere sampling

Easy GPU Implementation

47

Temporal InterpolationTemporal Interpolation

k

Et =

48

Temporal InterpolationTemporal Interpolation

k

Et = Recompute Irradiance

49

Temporal Interpolation: GoalTemporal Interpolation: Goal

k

Et =

50

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

- Temporal Weighting Function- Estimate of the Future Incoming Lighting- Temporal Gradients

51

Extrapolated GradientsExtrapolated Gradients

Et computed by hemisphere sampling

Et+1 estimated by reprojection

Δ

textra ≈ Et+1-Et

Δ

t = ∂E / ∂t

52

Extrapolated GradientsExtrapolated Gradients

k

Etextra = E0 = Computed

E1 = EstimatedEt

actual =

Etactual-Et

extra =

53

Extrapolated GradientsExtrapolated Gradients

54

Interpolated Gradients: Pass 1Interpolated Gradients: Pass 1

k

E0 = Computed

Etactual =

55

Interpolated Gradients: Pass 2Interpolated Gradients: Pass 2

k

Etinter = E0 = Computed

Et = ComputedEt

actual =

Etactual-Et

inter =

56

Interpolated GradientsInterpolated Gradients

Et computed by hemisphere sampling

Et+n computed by hemisphere sampling

Δ

t = ∂E / ∂t

Δ Et+n-Et

ntinter ≈

57

Temporal GradientsTemporal Gradients

Extrapolated

1 pass

Possible flickering

Interpolated

2 passes

No flickering

58

OutlineOutline

- Introduction

- Irradiance and Radiance Caching

- Temporal Radiance Caching

- Results

- Conclusion

59

Flying KiteFlying Kite

60

Japanese InteriorJapanese Interior

61

Japanese InteriorJapanese Interior

62

SpheresSpheres

63

ConclusionConclusion

Temporal radiance interpolation scheme

Reuse records across frames

Quality improvement Speedup

Easily integrates within (ir)radiance caching-based renderers

GPU ImplementationWork submitted for publication

Dynamic objects, light sources, viewpoint

64

Future WorkFuture Work

Avoid the need of maximum lifespan

Propose an interpolation method adapted to fast changes(temporal details are smoothed out by the gradients)

65

On the web:http://www.irisa.fr/siames/Pascal.Gautron/

ORGoogle ‘pascal gautron’

P. Gautron, K. Bouatouch, S. Pattanaik

Temporal Radiance Caching

Technical Report no. 1796, IRISA, Rennes, France

top related