Global Illumination Adapted from Thomas Funkhouser Princeton - - PowerPoint PPT Presentation

global illumination
SMART_READER_LITE
LIVE PREVIEW

Global Illumination Adapted from Thomas Funkhouser Princeton - - PowerPoint PPT Presentation

Global Illumination Adapted from Thomas Funkhouser Princeton University C0S 526, Fall 2002 Additional material from H.W. Jensen, Realistic Image Synthesis Using Photon Mapping, A.K. Peters Ltd., 2001 Overview Global illumination


slide-1
SLIDE 1

Global Illumination

Adapted from… Thomas Funkhouser Princeton University C0S 526, Fall 2002 Additional material from…

H.W. Jensen, Realistic Image Synthesis Using Photon Mapping, A.K. Peters Ltd., 2001

slide-2
SLIDE 2

Overview

  • Global illumination
  • Rendering equation
  • Overview of solution methods
slide-3
SLIDE 3

Direct Illumination

n

  • '

x ω

  • '

ω

  • ω
  • d

Light Camera

  • +

=

L

d n x L x f x L x L

i r e

  • ω

ω ω ω ω ω ω

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

slide-4
SLIDE 4

Direct Illumination

Philip Dutré

slide-5
SLIDE 5

Global Illumination

n

  • '

x ω

  • '

ω

  • ω
  • d

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

Surface Surface Light

slide-6
SLIDE 6

Global Illumination

Jensen

Ray tracing

Henrik Wann Jensen

slide-7
SLIDE 7

Global Illumination

Jensen

+ soft shadows

Henrik Wann Jensen

slide-8
SLIDE 8

Global Illumination

Jensen

+ caustics

Henrik Wann Jensen

slide-9
SLIDE 9

Global Illumination

Jensen

+ indirect diffuse illumination

Henrik Wann Jensen

slide-10
SLIDE 10

Rendering Equation

n

  • '

x ω

  • '

ω

  • ω
  • d

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

Surface Surface

Kajiya 1986

slide-11
SLIDE 11

Rendering Equation (2)

n

  • '

x x " x

i

Θ′

ω

  • '

ω

  • dA

' dA

  • Θ

→ → + → = →

S r e

dA x x G x x V x x L x x x f x x L x x L ) ' , ( ) ' , ( ) ' ( ) " ' ( ) " ' ( ) " ' (

2

' cos cos ) ' , ( x x x x G

  • i

− Θ Θ′ =

Kajiya 1986

slide-12
SLIDE 12

Solution Methods

  • OpenGL
  • Radiosity
  • Ray tracing
  • Distribution ray tracing
  • Path tracing
slide-13
SLIDE 13

Path Types

slide-14
SLIDE 14

Path Types?

Henrik Wann Jensen

slide-15
SLIDE 15

Path Types?

Paul Debevec

slide-16
SLIDE 16

Path Types?

Henrik Wann Jensen

slide-17
SLIDE 17

Path Types?

RenderPark

slide-18
SLIDE 18

Path Type Notation

  • Introduced by [Heckbert, 1990]
  • Vertices of the light path can be:

L – a light source E – the eye S – a specular reflection D – a diffuse reflection

  • Combinations of paths:

(k)+

  • ne or more of k events

(k)* zero or more of k events (k)? zero or one k event (k|k’) a k or a k’ event

  • Examples:

Radiosity: LD*E Ray Tracing: LD?S*E Path Tracing: L(D|S)*E Caustics: LS+DE

slide-19
SLIDE 19

Path Types

  • OpenGL

LDE

  • Ray tracing

LD?S*E

  • Radiosity

LD*E

  • Path tracing

L(D|S)*E

John Hart

slide-20
SLIDE 20

OpenGL

Assume direct illumination from point lights and ignore visibility Assume direct illumination from point lights and ignore visibility

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' ( n

  • '

x ω

  • '

ω

  • Light

Camera

  • =
  • +

=

nlights i i r e

  • n

x L x f x L x L

1

) )( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

  • ω

ω ω ω ω ω

slide-21
SLIDE 21

Ray Tracing

Assume specular reflection is only significant indirect illumination Assume specular reflection is only significant indirect illumination

n

  • '

x ω

  • '

ω

  • Camera

Surface Light

specular n x L x f x L x L

nlights i i r e

  • +
  • +

=

  • =1

) )( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

  • ω

ω ω ω ω ω

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

slide-22
SLIDE 22

Ray Tracing Algorithm

slide-23
SLIDE 23

Radiosity

→ → + → = →

S r e

dA x x G x x V x x L x x x f x x L x x L ) ' , ( ) ' , ( ) ' ( ) " ' ( ) " ' ( ) " ' (

  • +

=

S d r e

dA x x G x x V x B x f x B x B ) ' , ( ) ' , ( ) ( ) ' ( ) ' ( ) ' (

,

  • +

=

S d e

dA x x G x x V x B x x B x B ) ' , ( ) ' , ( ) ( ) ' ( ) ' ( ) ' ( π ρ

  • =

+ =

N j ij j i i e i

F B B B

1 ,

ρ

i j A A i ij

dA dA x x G x x V A F

i j

= π ) ' , ( ) ' , ( 1

Assume everything is Lambertian Assume everything is Lambertian

n

  • i

Θ′

j

dA

i

dA

  • Θ

' x

x

where

slide-24
SLIDE 24

Path Tracing

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

Perform Neumann series expansion Perform Neumann series expansion

TL L L

e +

=

  • =

ω ω ω ω ω ω

  • d

n x g x f g x T

r

) )( , ' ( ) ' , , ' ( ) ' , ' (

where

...

3 2

+ + + + =

e e e e

L T L T TL L L

  • Convergent approximation
  • Also suggested by [Kajiya, 1986]
slide-25
SLIDE 25

Path Tracing

Le TLe T2Le T3Le Le +TLe Le +TLe+T2Le Le+…+T3Le Le

Philip Dutré

slide-26
SLIDE 26

Path Tracing Algorithm

slide-27
SLIDE 27

Distribution Ray Tracing

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' ( n

  • '

x

1

ω

  • '

ω

Estimate integral for each reflection by random sampling Estimate integral for each reflection by random sampling

2

ω

  • 3

ω

  • 4

ω

  • 5

ω

  • 6

ω

  • Also:
  • Depth of field
  • Motion blur
  • etc.
slide-28
SLIDE 28

Distribution Ray Tracing

  • Random direction

is computed as follows.

  • Given two uniformly distributed random variables,
slide-29
SLIDE 29

Monte Carlo Path Tracing

  • +

= ω ω ω ω ω ω ω

  • d

n x L x f x L x L

i r e

  • )

)( , ' ( ) ' , , ' ( ) ' , ' ( ) ' , ' (

Estimate integral for each pixel by random sampling Estimate integral for each pixel by random sampling Also:

  • Depth of field
  • Motion blur
  • etc.
slide-30
SLIDE 30

Ray Tracing vs. Path Tracing

Ray tracing Path tracing

Jim Kajiya

slide-31
SLIDE 31

Bidirectional Path Tracing

  • Role of source and receiver can be switched,

flux does not change

  • Exploiting duality can increase convergence rate

Philip Dutré

slide-32
SLIDE 32

Bidirectional Path Tracing

Philip Dutré

slide-33
SLIDE 33

Tracing From Eye

Philip Dutré

slide-34
SLIDE 34

Tracing from Lights

Philip Dutré

slide-35
SLIDE 35

Bidirectional Path Tracing

Philip Dutré

slide-36
SLIDE 36

Bidirectional Path Tracing Algorithm

slide-37
SLIDE 37

Bidirectional Path Tracing

(RenderPark 98)

Philip Dutré

slide-38
SLIDE 38

Summary

  • Global illumination

Rendering equation

  • Overview of solution methods

OpenGL Radiosity Ray tracing Distribution ray tracing Path tracing