The Rendering Equation - Dynamic Graphics Project

21
The Rendering Equation Kajiya ’86 Michael Tao University of Toronto

Transcript of The Rendering Equation - Dynamic Graphics Project

Page 1: The Rendering Equation - Dynamic Graphics Project

The Rendering Equation

Kajiya ’86

Michael Tao

University of Toronto

Page 2: The Rendering Equation - Dynamic Graphics Project

Introduction

Since Derek made slides. . .

1

Page 3: The Rendering Equation - Dynamic Graphics Project

The Rendering Equation

I (x , x ′) = g(x , x ′)

[ε(x , x ′) +

∫S

ρ(x , x ′, x ′′)I (x ′, x ′′)dx ′′]

• I : intensity of light from x to x ′

• g : geometry

• ε: emission

• ρ: intensity of light from x ′′ to x from x ′

2

Page 4: The Rendering Equation - Dynamic Graphics Project

Limitations

• Time-averaged transport intensity

• No phasees

• No diffraction

• Homogeneous refractive index of base medium

• Could let g handle this (single scattering)

• Could solve this equation volumetrically (Eikonal)

• Could solve this equation with sparse paths (path integration)

3

Page 5: The Rendering Equation - Dynamic Graphics Project

Stoichiometry?

• How should we set I (that didn’t exist before this paper)?

• Isn’t it more natural to talk about angles around a point?

• Use stoichiometry to connect with standard radiometic intensity!

4

Page 6: The Rendering Equation - Dynamic Graphics Project

Stoichiometry

dE = I (x , x ′)dtdxdx ′

• dE ∼ joule

• dx , dx ′ ∼ m2

• dt ∼ sec

• ⇒ I (x , x ′) ∼ joulem4sec

5

Page 7: The Rendering Equation - Dynamic Graphics Project

Stoichiometry

g(x , x ′) ∼ Visible(x , x ′)

r2

• Unitless!

6

Page 8: The Rendering Equation - Dynamic Graphics Project

Stoichiometry

dE =1

r2ε(x , x ′)dtdxdx ′

• dE ∼ joule

• dx , dx ′ ∼ m2

• dt ∼ sec

• ⇒ I (x , x ′) ∼ joulem2sec

7

Page 9: The Rendering Equation - Dynamic Graphics Project

Stoichiometry

dE =1

r2ρ(x , x ′, x ′′)I (x ′, x ′′)dtdxdx ′dx ′′

• dE ∼ joule

• dx , dx ′, dx ′′ ∼ m2

• dt ∼ sec

• I (x , x ′) ∼ joulem4sec

• ⇒ unitless!

8

Page 10: The Rendering Equation - Dynamic Graphics Project

Radiometric Intensity

• i(θ, φ)

• per time (dt)

• per unit projected area (dx ′p)

• per unit of solid angle (dω)

dE = i(θ′, φ′)dωdx ′pdt

9

Page 11: The Rendering Equation - Dynamic Graphics Project

Radiometric Intensity

• After defining maps between points and angles. . .

r = ‖x − x′‖

dx′p = dx′ cos θ

cos θ =1

r〈n, x − x′〉

cos θ′ =1

r〈n′, x − x′〉

cosφ′ =1

r〈t′, x − x′〉

dE = i(θ′, φ′)cos θ cos θ′

r2dtdxdx ′

10

Page 12: The Rendering Equation - Dynamic Graphics Project

Radiometric Intensity to Intensities

• After defining maps between points and angles. . .

I (x , x ′)dtdxdx ′ = dE = i(θ′, φ′)cos θ cos θ′

r2dtdxdx ′

I (x , x ′) = i(θ′, φ′)cos θ cos θ′

r2

11

Page 13: The Rendering Equation - Dynamic Graphics Project

And everything else

• After some more boring algebraic manipulation with several

variables. . .

ε(x , x ′) = ε(θ′, φ′) cos θ cos θ′

ρ(x , x ′, x ′′) = ρ(θ′, φ′, ψ′, σ′) cos θ cos θ′

12

Page 14: The Rendering Equation - Dynamic Graphics Project

So what?

• The basic rendering equation is really elegant and now we have a

bunch of cos everywhere, which is important

• Now we can try solving it maybe?

13

Page 15: The Rendering Equation - Dynamic Graphics Project

Neumann Series

• As the equation is an affine transformation we can rewrite it as

I = gε+ gMI

• We can solve a steadystate by. . .

(1− gM)I = gε

• Taylor expansion of hte above provides

(1− gM)−1gε = g

( ∞∑i=0

[Mg ]i)ε

• Intuitively,

• i = 0 is light directly emitted

• i = 1 is light bounced once

• i = n is what?

14

Page 16: The Rendering Equation - Dynamic Graphics Project

Utah Approximation

• If we have a precomputed illumination ε0

I = gε+ gMε0

• this is too easy?

• Well Whitted proposed something slightly more general

I = gε+ g

( ∞∑i=1

[M0g ]i)ε0

• M0 is delta functions with a cosine. . .

15

Page 17: The Rendering Equation - Dynamic Graphics Project

Radiosity

• What if there is no angular dependence?

ρ(θ′, φ′, ψ′, σ′) = ρ0

• Well radiosity dBr (x) (a reduced I turns into

dBr (x′) = dx ′ρ0πH(x ′)

• for H hemispherical incident energy per time per area

• With emission we get

dBr (x′) = π[ε0 + ρ0H(x ′)]dx ′

16

Page 18: The Rendering Equation - Dynamic Graphics Project

MCMC

• By energy conservation, ‖M‖ ≤ 1.

• Consider

x + a +∞∑k=1

Mka

• We can construct a probability of a path of length n, ω ∈ Sn to

obtain the contribution from σ1 to x` by

x` =

(∏̀i=0

mσi−1,σi

)aσi

1

p(ω)

• Apply splitting to say

p(ω) = p(ω0)∏̀

0

p(ωi , ωi+1)

17

Page 19: The Rendering Equation - Dynamic Graphics Project

Hierarchy

• To not oversample they construct a hierarchy with one sample per

cell

18

Page 20: The Rendering Equation - Dynamic Graphics Project

Results?

19

Page 21: The Rendering Equation - Dynamic Graphics Project

Results?

20