Selected Topics in Global Illumination Computation Jaroslav K ivnek - - PowerPoint PPT Presentation

selected topics in global illumination computation
SMART_READER_LITE
LIVE PREVIEW

Selected Topics in Global Illumination Computation Jaroslav K ivnek - - PowerPoint PPT Presentation

Selected Topics in Global Illumination Computation Jaroslav K ivnek Charles University, Prague Jaroslav.Krivanek@mff.cuni.cz Global illumination Light bouncing around in a scene www.photos -of- the - year.com Diffuse inter - reflection


slide-1
SLIDE 1

Selected Topics in Global Illumination Computation

Jaroslav Křivánek

Charles University, Prague Jaroslav.Krivanek@mff.cuni.cz

slide-2
SLIDE 2
  • Light bouncing around in a scene

Global illumination

www.photos-of-the-year.com

slide-3
SLIDE 3

Diffuse inter-reflection

  • May go unnoticed, but looks odd if missing

Slide credit: Michael Bunnell

3

slide-4
SLIDE 4

Why is GI important?

  • Architectural visualization
  • Interior design
  • Product design
  • Animated movies, special effects
  • Games
  • Quality criteria depend on the application

4

slide-5
SLIDE 5

Syllabus discussion

slide-6
SLIDE 6

6

Data-driven importance sampling

[Lawrence et al. 2004] Measured BRDF sampling Direct illumination sampling [Wang & Åkerlund 2009] Sampling various illumination effects [Cline et al. 2008]

slide-7
SLIDE 7

7

Many-light rendering methods

Basic formulation (VPLs) Speeding it up: Real-time methods Making it scalable Making it robust [Keller 1997] [Ritschel et al. 2008] [Walter et al. 2005] [Křivánek et al. 2010]

slide-8
SLIDE 8
  • No-precomputation

– Real-time many-light methods – Other stuff

  • Precomputed radiance transfer (PRT)

– Light transport as a linear operator – Spherical harmonics PRT – Wavelet PRT – Separable BRDF approximation – Direct-to-Indirect Transfer – Non-linear operator approximations

8

Real-time GI for Games & Other Apps

slide-9
SLIDE 9

9

Metropolis sampling & apps

Metropolis light transport [Veach & Guibas, 1997] Energy redistribution path tracing [Cline et al. 2005] Metropolis photon tracing [Hachisuka & Jensen 2011] Metropolis env. map sampling [Ghosh & Heindrich 2006]

slide-10
SLIDE 10
  • Radiative transport equation
  • Single scattering solutions
  • Multiple scattering solutions

– Volumetric (bidirectional) path tracing – Volumetric photon mapping – Volumetric radiance caching

10

Participating media

slide-11
SLIDE 11
  • Diffusion approximation
  • BSSRDF
  • Fast hierarchical computation
  • Multi-layered materials
  • Real-time solutions

11

Subsurface scattering

slide-12
SLIDE 12
  • Surface BRDF models
  • Hair

– Kajiya-Kay, Marschner reflection model – Multiple scattering in hair

  • Measurement & data-driven models

12

Appearance modeling

[d’Eon et al. 2011]

slide-13
SLIDE 13
  • Light transport measurement

– Nystrom kernel method – Compressed sensing – Separation of direct and indirect illumination

  • Fabrication

– Reflectance fabrication – Volumetric scattering fabrication

13

A little more exotic stuff

[Nayar et al. 2006]

slide-14
SLIDE 14

Rules & Organization

slide-15
SLIDE 15
  • Either

– Lecture notes

  • Prepare notes based on lectures given in the class

– Give a 45-minute lecture

  • Topic chosen by the student
  • Must be closely related to the class
  • Or

– Research / Implementation

  • Topic chosen by the student or assigned by the instructor
  • Preferably (but not necessarily) original, unpublished work

15

Student participation

slide-16
SLIDE 16
  • Student participation
  • Oral exam

– 2 questions from the lecture material – 1 out of 3 papers (must be different from the lecture material)

16

Student evaluation

slide-17
SLIDE 17
  • M. Pharr, G. Humphreys: Physically-based
  • rendering. Morgan-Kaufmann 2004 (2nd ed.

2010)

  • Dutre, Bala, Bekaert: Advanced Global
  • Illumination. AK Peters, 2006.
  • Szirmay-Kalos: Monte-Carlo Methods in Global

Illumination, Vienna University of Technology,

  • 2000. http://sirkan.iit.bme.hu/~szirmay/script.pdf
  • Paper references on the class page:

http://cgg.mff.cuni.cz/~jaroslav/teaching/2012-npgr031/index.html

17

Books & other sources

slide-18
SLIDE 18

A brief review of physically-based rendering

slide-19
SLIDE 19
  • Radiometry / light reflection (BRDF)
  • Rendering equation
  • Monte Carlo quadrature

– Primary estimator, Importance sampling, Stratified sampling, Multiple-importance sampling

  • Path / light tracing
  • Bidirectional path tracing
  • (Progressive) photon mapping
  • Irradiance caching

19

Required knowledge

slide-20
SLIDE 20

Rendering

  • For each visible point p in the scene

– How much light is reflected towards the camera

20

slide-21
SLIDE 21

Radiance

  • “Amount of light” transported by a ray

– To / from point p – To / from direction ω

  • L (p, ω) [W / m2 sr ]
  • Constant along a ray
  • Proportional to

perceived brightness

dω N θ p dA ω

slide-22
SLIDE 22

Direct vs. indirect illumination

  • Where does the light come from?

– Light sources (direct illumination) – Scene surfaces (indirect illumination)

p

22

slide-23
SLIDE 23

Where does the light go then?

  • Light reflection – material reflectance

p

23

slide-24
SLIDE 24

Light reflection

  • BRDF

– Bi-directional Reflectance Distribution Function

  • Implementation:

– Shader

Image courtesy Wojciech Matusik

24

slide-25
SLIDE 25

Light reflection – BRDF

  • Bi-directional Reflectance Distribution Function

p

25

ωi

i

  • i

i i i

  • i

r

d L dL f ω ω ω θ ω ω ω ω from coming light to reflected light cos ) ( ) ( ) , ( = =

slide-26
SLIDE 26

BRDF components

Images by Addy Ngan

Glossy / specular Diffuse 26

slide-27
SLIDE 27

Local reflection integral

  • Total amount of light reflected to ωo:

Lo (ωo) = Le (ωo) + ∫ Li(ωi) BRDF (ωi, ωo) cosθi dωi

p

Lo (ωo) Li(ωi)

27

slide-28
SLIDE 28

Light transport

  • Q: How much light is coming from ωi ?
  • A: Radiance constant along rays, so:

Li(p,ωi) = Lo(p’,−ωi) = Lo(r(p,ωi),−ωi)

p p’

Lo(p’,−ωi)

=

Li(p,ωi)

28

ray casting function

slide-29
SLIDE 29

Rendering equation

Lo (p, ωo) = Le (ωo) + ∫ Li(p, ωi) BRDF (p, ωi, ωo) cosθi dωi Lo (p, ωo) = Le (ωo) + ∫ Lo(r(p,ωi),−ωi) BRDF (p, ωi, ωo) cosθi dωi

p p’

Lo(p’,−ωi)

=

Li(p,ωi)

29

slide-30
SLIDE 30

Rendering eqn vs. reflection integral

  • Reflection Integral

– Local light reflection – Integral to compute Lo given that we know Li

  • Rendering Equation

– Condition on light distribution in the scene – Integral equation – the unknown, L, on both sides

slide-31
SLIDE 31

Solving RE – Recursion

Lo (p, ωo) = Le (ωo) + ∫ Lo(r(p,ωi),−ωi) BRDF (p, ωi, ωo) cosθi dωi

  • Q: How much light is reflected from p’ ?

Recursive application of RE at p’

p p’

Lo(p’,−ωi) = ?

31

slide-32
SLIDE 32
  • Recursive evaluation of illumination integral at

different points (p, p’, … )

Solving RE – Recursion

p’

32

p

slide-33
SLIDE 33

Monte Carlo integration

  • General approach for numerical estimation of

integrals

ξ1 f(x) 1 p(x) ξ2 ξ3 ξ4 ξ5 ξ6

= x x d ) ( f I ) ( ; ) ( ) ( 1

1

x p p f N I

i N i i i

∝ =

=

ξ ξ ξ

Integral to evaluate: Monte Carlo estimator:

slide-34
SLIDE 34

Monte Carlo integration

  • Estimator <I> gives an unbiased estimate of I:

[ ]

I f p p f N p f E N I E

N i N i i i

= = =       =

∫ ∑∫ ∑

= =

x x x x x x d ) ( d ) ( ) ( ) ( 1 ) ( ) ( 1

1 1

ξ ξ

slide-35
SLIDE 35

Lo (p, ωo) = Le (ωo) + ∫ Lo(r(p,ωi),−ωi) BRDF (p, ωi, ωo) cosθi dωi

Applying MC to rendering

p’

35

p integrand f(ωi)

random sample → cast a ray in a random direction

slide-36
SLIDE 36

Distribution Ray Tracing

  • Recursive nature – ray tracing
  • Direct illumination separated from indirect

p

slide-37
SLIDE 37

Distribution Ray Tracing

  • Cook ’84
  • Breakthrough at the time
  • Problem: Terribly slow!

– Number of rays exponential with recursion depth

  • Solution: Irradiance caching / path tracing / …
slide-38
SLIDE 38
  • Unbiased estimator

– No systematic error, only variance

  • Consistent estimator

– May has systematic error – Converges to the correct result

38

Unbiased vs. consistent estimator

slide-39
SLIDE 39
  • Path Tracing – unbiased
  • Light Tracing – unbiased
  • Bi-directional Path Tracing – unbiased
  • Metropolis Light Transport – unbiased
  • Photon Mapping – biased, not consistent
  • Progressive photon mapping – biased, consistent
  • Irradiance caching – biased, not consistent
  • Radiance caching – biased, not consistent

39

Unbiased / consistent GI algorithms

slide-40
SLIDE 40

40

GI Algorithms: Pros and Cons

Image credit: Toshiya Hachisuka

slide-41
SLIDE 41

41

GI Algorithms: Pros and Cons

Image credit: Toshiya Hachisuka

slide-42
SLIDE 42

Unbiased vs. consistent GI algorithm

  • Practice

– Prefer less noise at the cost of bias – Systematic error is more acceptable than noise if “looks good” is our only measure of image quality

slide-43
SLIDE 43
  • We’ve seen

– GI, i.e. Light transport simulation

  • There’s also

– Emission modeling

  • How do various objects emit light?

– Appearance modeling

  • What does light do after it hits a specific surface?

– Tone mapping

  • Radiance remapping for display

43

There’s more to realistic rendering