44
computer graphics & visualization How to make a PIXAR movie Global Illumination Effects

Computer graphics & visualization Global Illumination Effects

Embed Size (px)

Citation preview

Page 1: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

How to make a PIXAR movie

Global Illumination Effects

Page 2: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Motivation• Realistic illumination of the scene

Page 3: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Motivation• Soft shadows

Page 4: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Motivation• Subsurface scattering

Page 5: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Motivation• Many algorithms exist– Photon mapping– Ambient Occlusion– …

• Common goal: Solving parts of the Rendering Equation

Page 6: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Problems• Scene changes -> New computation• Still not possible in real-time• Uses Raytracing or Radiosity

Already explainedGoing to be explained now

Page 7: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Photons• Have energy

• h: Planck constant• v: Frequency of light

hvE

Page 8: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiometric QuantitiesRadiant energy J

Radiant power W

Irradiance W/m²

Radiosity W/m²

Radiant intensity W/sr

dt

dQ

dA

dE

dA

dB

d

dI

Q

Page 9: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiance

cos²

dAd

dL

• θ: angle between surface‘s normal and ω• cosθ: Lambertian law• Constant along a ray

Page 10: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Irradiance

Page 11: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

BRDF

iiii

rrrir dxL

xdLxf

cos),(

),(),,(

Bidirectional reflectance distribution function

How much light is reflected

Page 12: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Reflection Equation

iiiirirrr dxLxfxL

cos),(),,(),(

Integrate over the hemisphere

Page 13: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Rendering Equation

Sy

yirirrer dAyxGyxVyLxfxLxL

),(),(),(),,(),(),(

Radiance

Emitted light

Surfaces

BRDF

Visibility

Geometry factor

Page 14: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity• Ideal diffuse reflection can be simulated with

Radiosity• Uses finite elements• Introduced by Goral et al.

Page 15: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity• Origin: Thermal heat transfer• Developed in 1984, still in use• Modelling of diffuse lighting– Doesn‘t account for specular lighting– Independent of viewer– Therefore: Stays constant in constant scene

Page 16: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity Equation

j

ijjieii FBBB

RadiosityEmissivity

Reflectivity Form factor

Sy

yirirrer dAyxGyxVyLxfxLxL

),(),(),(),,(),(),(

constant

Page 17: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Form Factors

i jA A

ijji

iij dAdA

rAF

²

coscos1

Page 18: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Form Factors

Page 19: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Nusselt Analog• Simple geometric analog for calculating form

factors

B B

AFij

A

Page 20: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Hemicube Algorithm• Hemicube instead of hemisphere

Page 21: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Hemicube Algorithm• Idea:– Precompute delta form factors analytically– Count covered pixels– Sum up covered delta form factors to the true form

factor

q

qij FF

Page 22: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Hemicube Example

Page 23: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Hemicube Algorithm on GPU• Use projection center as viewport• Use current face as viewing plane• Do the rendering• Grab the colour buffer (IDs of patches)• Count coloured pixels• Visibility test performed by depth test

Page 24: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity Algorithm• Compute form factors• Solve linear equation system

for i = 1, … , nj

ijjieii FBBB

nnnnnnnnn

n

n

E

E

E

B

B

B

FFF

FFF

FFF

2

1

2

1

21

22222212

11121111

1

1

1

)1( T

Page 25: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Von Neumann Series

...

...

...

²

)3()2()1()0(

3210

BBBB

ETETETET

BTTEETBEB

0 Bounces 1 Bounce 2 Bounces 3 Bounces

Page 26: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Jacobi Iteration

Page 27: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Shooting / Gathering

N

j

kjijii

ki BFEB

X

X

X

XXXXX

1

)()1( )(

N

j

kj ij i i

kiB F E B

X

X

X

X

X

X

X

X

X

X

1

) ( ) 1 () (

Page 28: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity Result

Page 29: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity vs. Ray Tracing

Page 30: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Radiosity Conclusion• Old, but still in use• Used for simulating diffuse lighting• Result can be used in combination with other GI

algorithms

Page 31: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Ambient Occlusion Motivation• Ambient term constant in Phong model• Not very realistic• Idea: Compute occlusion of each face

Page 32: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Ambient Occlusion• Result: Occluded areas appear darker than

brigther ones• Multiply with usual Phong model• 2 possibilities:– Screen space– Object space

Page 33: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Screen Space Ambient Occlusion• Can be completely done on GPU• No preprocessing• Independent of scene complexity• Idea: Instead of performing full raytracing use

occlusion information from z-buffer

Page 34: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Screen Space Ambient Occlusion• Take 3D samples around each point• Determine occlusion of each point by testing

against the depth buffer• Far samples with less influence• Use blurring for smooth results

Page 35: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Screen Space Ambient Occlusion

Page 36: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Object Space Ambient Occlusion• Define surface element as an oriented disk• Use Heron‘s formula ,• Store position, normal and area in texture for

pixel shader

))()(( csbsass 2

cbas

Page 37: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Object Space Ambient Occlusion• Compute accessibility value ateach element (% of hemisphere)• Approximation based on thesolid angle of an oriented disk

• Strongly dependent on scenecomplexity

²

)cos4,1max(cos1

rA

r RE

Page 38: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Object Space Ambient Occlusion

Page 39: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Ambient Occlusion Results

Page 40: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Ambient Occlusion Results

Page 41: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Ambient Occlusion Conclusion• Can be preprocessed for each object• Used in the current version of PIXAR‘s

RenderMan

Page 42: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Outlook• Faster computation– Cheaper– Artists can see results faster

• More realistic lighting

Page 43: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Conclusion• Very important for any animated movie• Computation time not too important

Page 44: Computer graphics & visualization Global Illumination Effects

computer graphics & visualization

Global Illumination EffectsChristian A. Wiesner

Thanks for your attention!