38
#7: Photorealism The High End

#7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

#7:Photorealism

TheHighEnd

Page 2: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

ElementsoftheFinalImage

•  Geometry•  Lights•  Materiality•  Viewpoints&focalpoints•  Cameras&op5cs•  Rendering:color&light

Page 3: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

SyntheAcCameraIssues

“thefamiliar”

VRay“EV”

Page 4: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

SyntheAcCamera

“beyondourscope”

Page 5: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Rendering:Color&Light

“it’saboutlight&surface”

Page 6: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Review:ClassicalRendering

“Top-down”(Phong,etal.)•  Assumesperfectlydiffusesurfaces•  Worksfromgeometrydatatoscreen•  Asidefromshadows,ignoresothergeometry•  DoesnotrenderindirectilluminaAon,colorbleed,ambientocclusion,causAcs,ormostspeculareffects(refracAonandreflecAon).

•  SoluAonisview-dependent

Page 7: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Wait!Whatdowemeanby…

•  IndirectilluminaAon•  Colorbleed•  Speculareffects:ReflecAon&RefracAon•  CausAcs•  Ambientocclusion•  View-independence

Page 8: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Indirectillumina5on

KimbellArtMuseum,LouisKahn,1972

Lightsourceinvisible.LightdistributedbydiffusereflecAonoffsurfaces.

Page 9: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

ColorBleed

Whatcoloristhiswall?

Whatcoloristhiswall?

Page 10: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

ColorBleed

Theresultofdiffuseinter-reflecAon.

DiffusereflecAonofcolorfromadjacentsurfaces.

Page 11: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

SpecularEffectsReflecAon

Specular(mirror-like)reflecAonofgeometryinasurface.

Page 12: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

SpecularEffectsRefracAon

Lightbentduringtransmissionthroughtransparentobjects.

Page 13: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Caus5csRefractedlight

DiffuseSurface

photograph

Earlyraytracing

DiffusereflecAonoflightAFTERspecularrefracAon.

Theshadowdoesn’tshowcausAcfromglass.

Thelightpa]ernonthetableisacaus.c.

Page 14: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

AmbientOcclusion

Closelyspacedsurfacesblock(occlude)ambientlightentry,makingdarkseamsandjoints.

Page 15: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

AmbientOcclusion

WithAmbientOcclusionWithoutAmbientOcclusion

Chaos-grou

pgraphic

Page 16: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Whatis“View-dependence”

•  LightdistribuAonintherealworlddoesnotdependonthecameraposiAon(noflash!).

•  Arenderingalwayshasgeometricaldependenciesonviewpoint/etc.

•  GiventhecostofcompuAnglightdistribuAon,itwouldbeniceifasinglelighAngsoluAoncouldbesharedbyaseriesofrenderings,asinananimaAon.

Page 17: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Now:ImprovingClassicalRendering

•  AnA-aliasbysuper-sampling@3:1or4:1•  AnA-aliastexturestoo•  Useextra“fill”lights(noshadows)

Page 18: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Let’stryadifferentapproachLightreflectsin“infinite”ways,butthereareafinitenumberofscreenpixelsand

modelsurfaces.

Page 19: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

RealLight:

Page 20: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

FirstApproximaAon:RayTracing“individualrays”AlmostRealLight

Page 21: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Ray-SurfaceInterac5ons

Chaos-grou

pgraphic

Page 22: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Lighttravelsinstraightlines

•  Toreachtheeye,itcamefromthepixel•  Toreachthepixelitcame“from”themodel•  Eachbounceisspecular•  Workbackwards•  Eachpixelisseparate

•  AddupthecontribuAonsofeachbounce.

Page 23: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

RayTracing“scorecard”

•  ReflecAon✔•  RefracAon✔•  IndirectIlluminaAon✖•  ColorBleed ✖

•  CausAcs✖

•  AmbientOcclusion✖

- View-dependentsoluAon

Page 24: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

GePngaGoodRay-tracing

•  AnA-aliasbysuper-sampling@3:1or4:1•  AnA-aliastexturestoo•  Set“maximum-bounces”higher(note,bounces=0/1->“hiddensurfaces”)

Page 25: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

TheFEM“energyexchange”model

Correctindiffuseenvironments

DevelopedatCornellUniversity

Page 26: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

DevelopedatCornellUniversity

Radiosityenergyexchange

Page 27: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Radiosity:energyexchange

•  Dividesurfaces•  Compute‘anglefactors’•  DistributedirectilluminaAon•  ComputebounceredistribuAon.

•  Subdividehigh-contrastedges.

•  SmoothresulAngimage

Page 28: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Radiosity“scorecard”•  ReflecAon✖•  RefracAon≈•  IndirectIlluminaAon✔•  ColorBleed✔

•  CausAcs✖

•  AmbientOcclusion✖

+ SoluAonisview-independent

Page 29: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

GePngGoodRadiosityResult

•  AnA-aliasbysuper-sampling@3:1or4:1•  AnA-aliastexturestoo•  Set“%energydistribuAon”tohighnumber(e.g.99%)

•  CombinewithRay-TracingforreflecAon&refracAoneffects

Page 30: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

GePngBothSpecularandDiffuseEffectsinOneRendering?

Path-Tracing:Enhancedray-tracingWorktheproblemfrombothends:

1.Tracelightfromsourcestosurfaces2.Back-tracelightfromeyeintoscene.

- AND-3.ComputediffusereflecAonsbyusingstaAsAcal(“sampling”)approach

Page 31: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

PathTracing:TwoPasses

Chaos-grou

pgraphic

Page 32: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

1.TraceForwardfromtheLights•  Send“photons”(lightrays)intothescene(distributeaccurately)

•  Wheneveraphotonstrikesasurface,recordwhere&inwhatdirecAonina“photonmap”

•  UsesurfacequaliAes(BRDF)tocomputeprobablebouncedirecAon.

•  Bounce•  Repeat

Page 33: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

2.TraceBackwardsfromtheEye

•  “Back-trace”rayintoscene•  Atsurfaces,searcharoundinphotonmap.•  Computeeffectofphotons.•  Ifsurfaceisspecular,followclassicalbounce

Page 34: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

Review…

Page 35: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

ImprovingPathTracing

•  AnA-aliasbysuper-sampling@3:1or4:1•  AnA-aliastexturestoo•  Increasenumberofphotonsinphase1•  Increasenumberofbouncesinphase2•  Decreasesearchradiustosharpenimage•  Increaseimagesamplestoimprovedetail

Page 36: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

…umm..BRDF?

Realsurfacesbouncelightincomplexwaysthatdependonthewavelengthofthelight,theangleofincidence,etc.ThefuncAonthatdescribeshowmuchlightgoeswhereiscalled…

Page 37: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

“BRDF”

BidirecAonalReflectanceDistribuAonFuncAon(wherereflectedlightreallygoes)

Thespecular-ishbounce

Thediffuse-ishbounce

Page 38: #7: Photorealism · Review: Classical Rendering “Top-down” (Phong, et al.) • Assumes perfectly diffuse surfaces • Works from geometry data to screen • Aside from shadows,

#7:Photorealism

NotTheEnd