Physically based shading Ats Kurvet MTAT.03.296 Computer Graphics - - PowerPoint PPT Presentation

physically based shading
SMART_READER_LITE
LIVE PREVIEW

Physically based shading Ats Kurvet MTAT.03.296 Computer Graphics - - PowerPoint PPT Presentation

Physically based shading Ats Kurvet MTAT.03.296 Computer Graphics Seminar Tartu 2014 1 Why use PBS? Consistency - across materials and lighting conditions. Speed - of authoring content (better tools, less variables, intuitive


slide-1
SLIDE 1

Physically based shading

Ats Kurvet

MTAT.03.296 Computer Graphics Seminar

Tartu 2014

1

slide-2
SLIDE 2

Why use PBS?

  • Consistency - across materials and

lighting conditions.

  • Speed - of authoring content (better tools,

less variables, intuitive parameters, easier troubleshooting).

  • Easier to achieve “hyperrealism”
  • Cheaper.

2

slide-3
SLIDE 3

Examples of PBS in action

3

slide-4
SLIDE 4

4

http://atskurvet.com/portfolio.html

slide-5
SLIDE 5

5

http://www.unrealengine.com/files/downloads/2013SiggraphPresentationsNotes.pdf

slide-6
SLIDE 6

6

http://www.fxguide.com/wp-content/uploads/2013/04/blueumbrella1.jpg

slide-7
SLIDE 7

7

http://www.cgmag.at/index.php?page=Attachment&attachmentID=5113&h=47ccf5d3bb8c3aad a9c32a34d63f957f506ae0a9

slide-8
SLIDE 8

8

https://www.fxguide.com/featured/gravity/

slide-9
SLIDE 9

Also check out

  • Unreal Infiltrator demo:

https://www.youtube.com/watch?v=dO2rM

  • l-vdQ
  • Order 1886:

https://www.youtube.com/watch?v=2FK8d gzW0o8

  • And probably anything else that looks

good*

9

slide-10
SLIDE 10

PBS needs a strong base

  • HDR and Tone mapping
  • Anti-aliasing (also accounting for specular)
  • Per object motion blur
  • Depth of field (if using a realistic camera

model)

  • PostFX

10

slide-11
SLIDE 11

Physics

11

slide-12
SLIDE 12

Optics

  • Geometrical/ray optics

– Basic reflections – Basic refractions

  • Physical/wave optics

– Interference – Diffraction – Polarization

  • Electromagentic wave optics

– Maxwell equations

  • Quantum optics

– Photons: the atomic principle – Wave-particle duality

12

slide-13
SLIDE 13

?

  • http://isites.harvard.edu/fs/docs/icb.topic186199.files/images/EdgeDiffraction2-800x533.jpg

13

slide-14
SLIDE 14

Visible spectrum

  • http://hyperphysics.phy-astr.gsu.edu/hbase/vision/imgvis/specol.gif
  • http://upload.wikimedia.org/wikipedia/commons/1/1f/Light_dispersion_of_a_mercury-

vapor_lamp_with_a_flint_glass_prism_IPNr%C2%B00125.jpg

14

slide-15
SLIDE 15

Lights interaction with matter

15

slide-16
SLIDE 16

Refraction and absorption

  • The refractive index

– Describes how light interacts with the medium it is travelling in. – Spectral quantity – The complex refractive index:

  • The real part describes

the affect to the speed and thus angle of deviation.

  • The imaginary part

describes the amount

  • f absorption and color.

http://www.topwallpaperphoto.com/wp-content/uploads/2013/09/Whiskey-Drink.jpg

16

slide-17
SLIDE 17

Scattering

  • Light splits

into multiple directions due to abrupt micro scale changes in refraction.

  • http://blog.selfshadow.com/pu

blications/s2013-shading- course/hoffman/s2013_pbs_p hysics_math_slides.pdf

17

slide-18
SLIDE 18

Absorption, scattering and emission

  • http://blog.selfshadow.com/publications/s2013-shading-

course/hoffman/s2013_pbs_physics_math_slides.pdf

18

slide-19
SLIDE 19

Emission

  • Many different

sources and ways

  • f generation
  • There is a

difference between white light and white light

http://www.ni.com/cms/image s/devzone/tut/image4_200801 09201025.png

19

slide-20
SLIDE 20

Reflections on a planar surface

20

slide-21
SLIDE 21

Non-Optically-Flat Surfaces

  • http://blog.selfshadow.com/publications/s2013-shading-

course/hoffman/s2013_pbs_physics_math_notes.pdf original source: “Real-Time Rendering, 3rd edition"

21

slide-22
SLIDE 22

Subsurface scattering

  • http://blog.selfshadow.com/publications/s2013-shading-

course/hoffman/s2013_pbs_physics_math_notes.pdf original source: “Real-Time Rendering, 3rd edition"

22

slide-23
SLIDE 23

SSS and the diffuse term

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

23

slide-24
SLIDE 24

Math

24

slide-25
SLIDE 25

Radiance - L

  • Radiance is the

measurement of the quantity of radiation that passes through

  • r is emitted from a

surface and falls within a given solid angle in a specified

  • direction. In our

case “a single ray of light”.

  • Radiance is a

spectral quantity.

http://upload.wikimedia.org/wikipedia/en/thu mb/6/63/Etendue-Definition.png/400px- Etendue-Definition.png

25

slide-26
SLIDE 26

Bidirectioanl Reflectance Distribution Function

f(l,v)

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

26

slide-27
SLIDE 27

?

  • BTDF
  • BSDF
  • BSSRDF

27

slide-28
SLIDE 28

Reversability

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

28

slide-29
SLIDE 29

Reciprocity & energy conservation

29

slide-30
SLIDE 30

Reflectance equation

30

slide-31
SLIDE 31

Diffuse and specular term

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

31

slide-32
SLIDE 32

Splitting diffuse and specular in the real world

  • Check out the tutorial at:

http://filmicgames.com/archives/233

32

slide-33
SLIDE 33

Real world examples

33

http://filmicgames.com/archives/547

slide-34
SLIDE 34

Real world examples

34

http://filmicgames.com/archives/547

slide-35
SLIDE 35

Real world examples

35

http://filmicgames.com/archives/547

slide-36
SLIDE 36

Surface Reflectance (Specular Term)

36

slide-37
SLIDE 37

Microfacet theory

  • Microgeometry
  • Light only reflected when, h=m, where h is

the half angle vector and m is the microgeometry normal.

– But only when the surface point is not shadowed

  • r masked by neighboring geometry.
  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

37

slide-38
SLIDE 38

Shadowing & masking

  • Shadowing (left) – accounted for.
  • Masking (middle) – accounted for.
  • Interreflections (right) – not accounted for.
  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

38

slide-39
SLIDE 39

Microfacet BRDF

  • D(h) – microgeometry normal distribution

function

  • G(l, v, h) - the geometry function
  • F(l, h) - Fresnel reflectance
  • 4(n.l)(n.v) – correction factor for transforms

between micogeometry space and the macrosurface

39

slide-40
SLIDE 40

Fresnel reflectance

  • The Fresnel reflectance function computes

the fraction of light reflected from an

  • ptically flat surface.
  • Depends on the incomoing angle of the

light and the index of refraction.

  • Spectral quality.
  • Values between 0 and 1

40

slide-41
SLIDE 41

Fresnel reflectance for a variety of substances

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

41

slide-42
SLIDE 42

Characteristic specular reflectance – F0

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

42

slide-43
SLIDE 43
  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

43

slide-44
SLIDE 44

The Schlick Approximation to Fresnel

  • For microfacet BRDFs (otherwise replace h with n):

44

slide-45
SLIDE 45

Microgeometry normal distribution function - D(m)

  • Describes the amount of

microgeometry normals m having the same direction as the surface normal n.

  • Values must me greater than 0.
  • Scalar.
  • Determines the size, brightness,

and shape of the specular highlight.

  • Isotropic and anisotropic surfaces.

https://lva.cg.tuwien.ac.at/ecg/wiki/lib/exe/fetch.php?hash=ac8b26&media=http%3A%2F%2Fwww.cs.utexas.edu%2F~fussell%2Fcourses%2Fcs3 84g%2Fprojects%2Fraytracing%2Fray_examples%2Fanisotropy_ball.jpg & http://blog.selfshadow.com/publications/s2013-shading-course/karis/s2013_pbs_epic_notes_v2.pdf 45

slide-46
SLIDE 46

Examples of NDFs

  • http://blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
  • riginal source: “Real-Time Rendering, 3rd edition"

46

slide-47
SLIDE 47

Geometry function - G(l, v, m)

  • Represents the probability that surface

points with a given microgeometry normal m will be visible from both the light direction l and the view direction v.

  • Scalar.
  • Values between 0 and 1.

47

slide-48
SLIDE 48

Limitations of the Microfacet model

  • Does not account for pronounced wave
  • ptics effects (such as diffraction and

interference), those are usually solved with ad hoc methods.

  • Geometry features in the scale range of

wavelength of light, or larger features becoming smaller due to foreshortening at grazing angles.

  • More complex microgeometry.

48

slide-49
SLIDE 49

Subsurface Reflectance (Diffuse Term)

49

slide-50
SLIDE 50

Diffuse Term

  • Gets the left over light that is not reflected

straight off the surface(specular term).

  • Spectral.
  • Values between 0 and 1.
  • Extra considerations to look at:

– Specular reflectance increases at grazing angles so the diffuse value must decrease. – Affect of roughness (microgeometry features larger than that of the sub-surface scattering distance)

50

slide-51
SLIDE 51

Lambert

  • Most widely used. A constant value.

51

slide-52
SLIDE 52

Other terms

  • Subsurface single-scattering.
  • Multiple-bounce surface reflectance.
  • Might want to account for these in some

ways no.

52

slide-53
SLIDE 53

Illumination model

53

slide-54
SLIDE 54

General Lighting

  • Integrate BRDF against all incoming light

from all directions.

  • Solving this requires global illumination

models such as Monte Carlo ray tracing.

54

slide-55
SLIDE 55

Image-Based Lighting

  • Typically represented as environment maps,

can also be represented by spherical harmonics for example.

  • Works well for smooth surfaces, needs to be

sampled for arbitrary BRDFs.

  • Perceptually flexible.

55

http://www.randomcontrol.com/images/products/arion2/importance_sampling.gif

slide-56
SLIDE 56

Area Lights

  • Have both intensity and area
  • In reality all light sources have

dimensions, this avoids issues like specular intensity reaching inifinity.

  • Faster shadow calculations than

environment maps.

  • Physically more correct.

56

slide-57
SLIDE 57

Area light examples

57

http://blog.selfshadow.com/publications/s2013-shading- course/pixar/s2013_pbs_pixar_notes.pdf

slide-58
SLIDE 58

Punctual Light Sources

  • Infinitely small, infinitely bright, physically not

correct.

  • Computationally convenient.
  • Effects are defined by:

– Clight - intenisty of light in RGB. – lc – light direction vector

  • More common used variants of punctual

lights are: point, directional, and spot lights.

  • Unbound range

58

slide-59
SLIDE 59

Energy conservation.

59

http://www.guerrilla- games.com/presentations/Drobot_Lighting_of_Killzone_Shadow_Fall.pdf

slide-60
SLIDE 60

Ambient light

  • Low-frequency lighting.
  • Can be represented by a constant or more

complex structures such as lower order spherical harmonics.

  • Mostly used by games
  • Often breaks materials

60

slide-61
SLIDE 61

Extra 0: material blending & layering

  • http://blog.selfshadow.com/publications/s2013-shading-

course/rad/s2013_pbs_rad_slides.pdf

61

slide-62
SLIDE 62

Extra 1: Disney BRDF explorer.

  • http://www.disneyanimation.com/technolog

y/brdf.html

  • Can load GLSL code as an arbitrary

BRDF.

  • Can load reference data to compare your

model to real world measurements.

62

slide-63
SLIDE 63

Extra 2: Crytek & Ryse things.

  • My lighting portfolio:

http://atskurvet.com/portfolio.html

  • PBS article about Ryse:

http://www.makinggames.de/index.php/ma gazin/2391_ryse__the_transition_to_physi cally_based_shading

  • Cryengine presentations:

http://crytek.com/cryengine/presentations

63

slide-64
SLIDE 64

Thank you!

64

slide-65
SLIDE 65

Reference

  • http://blog.selfshadow.com/publications/s2013-shading-

course/hoffman/s2013_pbs_physics_math_notes.pdf

  • http://www.makinggames.de/index.php/magazin/2391_ryse__the_transition_to_physically_based_

shading

  • https://www.fxguide.com/featured/game-environments-parta-remember-me-rendering/
  • http://interplayoflight.wordpress.com/2013/12/30/readings-on-physically-based-rendering/
  • http://www.disneyanimation.com/technology/brdf.html
  • http://wiki.nuaj.net/index.php?title=BRDF
  • http://www.cs.princeton.edu/~smr/papers/brdf_change_of_variables/brdf_change_of_variables.pdf
  • http://renderwonk.com/publications/s2010-shading-

course/snow/sigg2010_physhadcourse_ILM.pdf

  • http://www.guerrilla-games.com/presentations/Drobot_Lighting_of_Killzone_Shadow_Fall.pdf

65