Počítačová grafika III Globální osvětlení ve filmové produkci. Jaroslav Křivánek, MFF UK

Podobné dokumenty
Počítačová grafika III Přibližný výpočet globálního osvětlení. Jaroslav Křivánek, MFF UK

Počítačová grafika III Photon mapping. Jaroslav Křivánek, MFF UK

Počítačová grafika III Úvod

Počítačová grafika III Photon mapping. Jaroslav Křivánek, MFF UK

Počítačová grafika III Důležitost, BPT. Jaroslav Křivánek, MFF UK

X39RSO/A4M39RSO Vychýlené (biased) metody globálního osvětlení. Vlastimil Havran ČVUT v Praze CTU Prague Verze 2011

Počítačová grafika III Úvod

Počítačová grafika III Bidirectional path tracing. Jaroslav Křivánek, MFF UK

Fotonové mapy. Leonid Buneev

Počítačová grafika III Multiple Importance Sampling. Jaroslav Křivánek, MFF UK

Realistický rendering

Počítačová grafika III Monte Carlo rendering 2. Jaroslav Křivánek, MFF UK

Počítačová grafika III Multiple Importance Sampling. Jaroslav Křivánek, MFF UK

Photon-Mapping Josef Pelikán CGG MFF UK Praha.

Počítačová grafika III Všehochuť. Jaroslav Křivánek, MFF UK

Perception Motivated Hybrid Approach to Tone Mapping

Počítačová grafika III Monte Carlo integrování II. Jaroslav Křivánek, MFF UK

Počítačová grafika III Monte Carlo integrování II. Jaroslav Křivánek, MFF UK

Compression of a Dictionary

Zobrazování a osvětlování

Skupina počítačové grafiky: projekty. Prezentuje: Jaroslav Křivánek

Introduction to MS Dynamics NAV

Počítačová grafika III Path tracing II. Jaroslav Křivánek, MFF UK

Enabling Intelligent Buildings via Smart Sensor Network & Smart Lighting

Global illumination with many-light methods. Martin Kahoun (2011)

Pokročilé metody fotorealistického zobrazování

Radiometrie, radiační metody

Gymnázium, Brno, Slovanské nám. 7 WORKBOOK. Mathematics. Teacher: Student:

A4M39RSO. Sledování cest (Path tracing) Vlastimil Havran ČVUT v Praze CTU Prague Verze 2014

Fotonové mapy. Martin Bulant 21. března Fotonové mapy jsou podobné obousměrnému sledování cest, ale odlišují se tím,

Ing. Jan Buriánek. Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jan Buriánek, 2010

Why PRIME? 20 years of Erasmus Programme Over 2 million students in total Annually

Uvádění pixelového detektoru experimentu ATLAS do provozu

Air Quality Improvement Plans 2019 update Analytical part. Ondřej Vlček, Jana Ďoubalová, Zdeňka Chromcová, Hana Škáchová

Fotorealistická syntéza obrazu Josef Pelikán, MFF UK Praha

The Over-Head Cam (OHC) Valve Train Computer Model

NUR - Prototyping. Low Fidelity

Moderní fotorealistický rendering

Principy fotorealistického zobrazování

Dynamic programming. Optimal binary search tree

Geometry of image formation

Tento materiál byl vytvořen v rámci projektu Operačního programu Vzdělávání pro konkurenceschopnost.

Klepnutím lze upravit styl předlohy. nadpisů. nadpisů.

Transportation Problem

GUIDELINES FOR CONNECTION TO FTP SERVER TO TRANSFER PRINTING DATA

Pokročilé osvětlovací techniky Josef Pelikán, MFF UK Praha

EXACT DS OFFICE. The best lens for office work

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Database systems. Normal forms

Návrh a implementace algoritmů pro adaptivní řízení průmyslových robotů

WORKSHEET 1: LINEAR EQUATION 1

NEREALISTICKÉ ZOBRAZENÍ

Fotorealistická grafika

Czech Republic. EDUCAnet. Střední odborná škola Pardubice, s.r.o.

Image Analysis and MATLAB. Jiří Militky

2011 Jan Janoušek BI-PJP. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Vizualizace 3d designu ve strojírenství

18.VY_32_INOVACE_AJ_UMB18, Frázová slovesa.notebook. September 09, 2013

Syntactic annotation of a second-language learner corpus

B1 MORE THAN THE CITY

Britské společenství národů. Historie Spojeného království Velké Británie a Severního Irska ročník gymnázia (vyšší stupeň)

Litosil - application

Eurogranites 2015 Variscan Plutons of the Bohemian Massif

USING VIDEO IN PRE-SET AND IN-SET TEACHER TRAINING

Mikrokvadrotor: Návrh,

DC circuits with a single source

SEZNAM PŘÍLOH. Příloha 1 Dotazník Tartu, Estonsko (anglická verze) Příloha 2 Dotazník Praha, ČR (česká verze)... 91

Vliv metody vyšetřování tvaru brusného kotouče na výslednou přesnost obrobku

Číslo projektu: CZ.1.07/1.5.00/ Název projektu: Inovace a individualizace výuky

Stojan pro vrtačku plošných spojů

Škola: Střední škola obchodní, České Budějovice, Husova 9. Inovace a zkvalitnění výuky prostřednictvím ICT

Progressive photon mapping na GPU

Nová éra diskových polí IBM Enterprise diskové pole s nízkým TCO! Simon Podepřel, Storage Sales

Project Life-Cycle Data Management

Počítačové simulace a statistická mechanika

Střední průmyslová škola strojnická Olomouc, tř.17. listopadu 49

On large rigid sets of monounary algebras. D. Jakubíková-Studenovská P. J. Šafárik University, Košice, Slovakia

Fire Control. T 3 - Determining the elements for fire due to of substitute instruments

Distribuované sledování paprsku

Analytický model pro rozptyl světla v mlze. Jan Ondřej

SPECIAL THEORY OF RELATIVITY

Vektorový formát SVG

Social Media a firemní komunikace

Gymnázium, Brno, Slovanské nám. 7, SCHEME OF WORK Mathematics SCHEME OF WORK. cz

místo, kde se rodí nápady

Efektivní využití SSD v produktech Dell: SSD za cenu HDD. Ondřej Bajer Storage Systems Engineer

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Enterprise Content Management IBM Corporation

Využití hybridní metody vícekriteriálního rozhodování za nejistoty. Michal Koláček, Markéta Matulová


Zdeňka Lipovská. This project is implemented through the CENTRAL EUROPE Programme co-financed by the ERDF.

CZ.1.07/1.5.00/

X39RSO/A4M39RSO. Integrace a syntéza obrazu pomocí metody Monte Carlo. Vlastimil Havran, ČVUT v Praze

Aktivita CLIL Chemie I.

Co vím o Ázerbájdžánu?

Hierarchický model Josef Pelikán CGG MFF UK Praha. 1 / 16

Aktivita CLIL Chemie III.

Svět v pohybu. Rizika a příležitosti.

Textury v real-time grafice Josef Pelikán, MFF UK Praha Josef.Pelikan@mff.cuni.cz

Angličtina v matematických softwarech 2 Vypracovala: Mgr. Bronislava Kreuzingerová

Transkript:

Počítačová grafika III Globální osvětlení ve filmové produkci Jaroslav Křivánek, MFF UK Jaroslav.Krivanek@mff.cuni.cz

Opakování

Kvíz 1 F. Suykens Path tracing Light tracing Bidirectional path tracing Kvíz: Proč je skleněná koule černá? PG III (NPGR010) - J. Křivánek 2011 3

Kvíz 2 Proč BPT neumí zobrazit kaustiku na dně bazénu (bodové světlo, pinhole kamera)? PG III (NPGR010) - J. Křivánek 2011 4

Fotonové mapy SDS cesty H.W.Jensen Wojciech Jarosz

Fotonové mapy Fáze výpočtu 1. Rozmístění fotonů 2. Rendering s využitím fotonových map

Final gathering? přímé použití final gathering 500 5000 paprsků informace v globální mapě příliš nepřesná PG III (NPGR010) - J. Křivánek 2012 nepřesnost v globální mapě se zprůměruje 7

Progresivní fotonové mapy

Globální osvětlení ve filmové produkci

Irradiance caching Jaroslav Křivánek Charles University, Prague Jaroslav.Krivanek@mff.cuni.cz

Motivation Distribution path tracing (DPT) Final gathering (FG) Estimate illumination integral at a point by tracing many rays (500-5000) Costly computation Irradiance caching accelerates DPT/FG for diffuse indirect illumination

Motivation Spatial coherence Diffuse indirect illumination changes slowly over surfaces Indirect irradiance changes slowly

Irradiance caching Sparse locations for full DRT computation Resulting irradiance stored in a cache Most pixels interpolated from cached records Image credit: Okan Arikan

Irradiance caching Faster computation of the diffuse component of indirect illumination Diffuse reflection L o (p) = E(p) * r d (p) / p View-independence Outgoing radiance independent of view direction Total irradiance is all we need => cache irradiance

Irradiance caching Lazy evaluation of new irradiance values Only if cannot be interpolated from existing ones Example: Values E1 and E2 already stored Interpolate at A (fast) Extrapolate at B (fast) Add new record at C (slow) B A E2 E1 C E3

Irradiance caching pseudocode GetIrradiance(p): Color E = InterpolateFromCache(p); if( E == invalid ) E = SampleHemisphere(p); InsertIntoCache(E, p); return E;

Indirect irradiance calculation E = SampleHemisphere(p); Cast 500-5000 secondary rays (user-specified) Compute illumination at intersection Direct illumination only, or Path tracing, or Photon map radiance estimate, or Query in (another) irradiance cache No emission taken into account!

Indirect irradiance calculation E = SampleHemisphere(p); Stratified Monte Carlo hemisphere sampling Subdivide hemisphere into cells Choose a random direction in each cell and trace ray

Indirect irradiance calculation E = SampleHemisphere(p); Estimating irradiance at p: E(p) = L i (p, wi) cosqi dwi General form of the stratified estimator

Indirect irradiance calculation E = SampleHemisphere(p); For irradiance calculation, the integrand is: PDF: 20

Indirect irradiance calculation Irradiance estimator for IC: L j,k radiance sample from direction: M, N number of divisions along q and f random numbers from R(0,1) 21

Irradiance caching pseudocode GetIrradiance(p): Color E = InterpolateFromCache(p); if( E == invalid ) E = SampleHemisphere(p); InsertIntoCache(E, p); return E;

Record spacing If E(p) changes slowly => interpolate more If E(p) changes quickly => interpolate less What is the upper bound on rate of change (i.e. gradient) of irradiance? Answer from the worst case analysis (omitted)

Record spacing Near geometry dense spacing Geometry = source of indirect illumination Open spaces sparse sampling

Record spacing

Irradiance interpolation E = InterpolateFromCache(p) Weighted average: Records used for interpolation:

Weighting function [Tablellion and Lamorlette 04] w i ( p) 1 p p max clamp(2 Ri, R i min, R max ), 1 n n 1 cos10 i p i R i

Heuristic behind test Record at p i rejected from interpolation at p if p is behind p i

Irradiance caching pseudocode GetIrradiance(p): Color E = InterpolateFromCache(p); if( E == invalid ) E = SampleHemisphere(p); InsertIntoCache(E, p); return E;

Irradiance cache record InsertIntoCache(E, p); Vector3 position Vector3 normal float R Color E Color dedp[3] Color dedn[3] Position in space Normal at `position Validity radius Stored irradiance Gradient w.r.t. translation Gradient w.r.t. rotation

Irradiance cache data structure InsertIntoCache(E, p); Requirements Fast incremental updates (records stored on the fly) Fast query for all records (spheres) overlapping a given point p

Data structure: Octree InsertIntoCache(E, p);

Data structure: Octree back to E = InterpolateFromCache(p)

Irradiance gradients no gradients with gradients

Irradiance gradients Essential for smooth interpolation Calculated during hemisphere sampling i.e. no extra rays, little overhead Stored as a part of the record in the cache Used in interpolation

Rotation gradient 36

Rotation gradient formula 37

Translation gradient 38

Translation gradient formula 39

Irradiance interpolation w/ grads E = InterpolateFromCache(p) Weighted average:

Irradiance caching examples

Image credit: Eric Tabellion, PDI DreamWorks Irradiance caching examples 42

Image credit: Eric Tabellion, PDI DreamWorks Irradiance caching examples 43

Ambient occlusion 44

Ambient occlusion x = 45

Ambient occlusion caching 46

Conclusion Fast indirect illumination of diffuse surfaces Sparse sampling & fast interpolation Biased Not consistent Tons of implementation details that I did not discuss here 47

Further reading Practical Global Illumination with Irradiance Caching SIGGRAPH Course: 2008, Křivánek et al. Book, 2009, Křivánek & Gautron Both give references to further resources 48

Bodové globální osvětlení (Point-based Global Illumination)

Bodové globální osvětlení Původní myšlenka M. Bunnell, Dynamic ambient occlusion and indirect lighting, GPU Gems 2 Aplikace pro rendering ve filmu P. Christensen, Point-based approximate color bleeding, Pixar tech memo #08-01 Real-time implementace (CUDA) T. Ritschel et al, Micro-rendering for scalable, parallel final gathering, SIGGRAPH Asia 2009 PG III (NPGR010) - J. Křivánek 2011 50

Bodové globální osvětlení Slide credit: Tobias Ritschel 51

Bodové globální osvětlení Slide credit: Per Christensen 52

Materiály Křivánek et al.: Global Illumination Across Industries, SIGGRAPH 2010 course. http://cgg.mff.cuni.cz/~jaroslav/gicourse2010/ Point-based Global Illumination for Film Production (Per Christensen, PIXAR) Ray Tracing vs. Point-based GI for Animated Films (Eric Tabellion, PDI Dreamworks) Ritschel et al. Microrendering for Scalable, Parallel Final Gathering, SIGGRAPH Asia 2009. http://www.mpi-nf.mpg.de/~ritschel/microrendering/ PG III (NPGR010) - J. Křivánek 2011 53

Path Tracing

Materiály Křivánek et al.: Global Illumination Across Industries, SIGGRAPH 2010 course. http://cgg.mff.cuni.cz/~jaroslav/gicourse2010/ Ray Tracing Solution in Film Production Rendering (Marcos Fajardo, SolidAngle) PG III (NPGR010) - J. Křivánek 2011 55

Co jsme nestihli

Letem světem Metropolis Light Transport Virtuální světla + škálovatelné metody Předpočítaný přenos radiance Opticky aktivní média + subsurface scattering Real-Time GI Zobrazování vlasů Modelování vzhledu PG III (NPGR010) - J. Křivánek 2011 57

Metropolis Light Transport Aplikace vzorkovací metody Metropolis-Hastings na vzorkování funkce příspěvku světelné cesty Mutace cest [Veach 1997] PG III (NPGR010) - J. Křivánek 2011 58

Image credit: Eric Veach (a) Bidirectional path tracing with 40 samples per pixel.

(b) Metropolis light transport with an average of 250 mutations per pixel [the same computation time as (a)]. Image credit: Eric Veach

Metropolis Photon Tracing Image credit: Toshiya Hachisuka PG III (NPGR010) - J. Křivánek 2011 61

Instant radiosity (VPL rendering) [Keller 1997] Approximate indirect illumination by 1. Generate VPLs 2. Render with VPLs 62

Předpočítaný přenos radiance P P P P 1 2 3 N

Opticky aktivní média PG III (NPGR010) - J. Křivánek 2011 64

Subsurface scattering examples Real Simulated

Real-time GI Techniky založené na VPL Screen-space techniky Implicitní viditelnost & anti-radiance PG III (NPGR010) - J. Křivánek 2011 66

Zobrazování vlasů PG III (NPGR010) - J. Křivánek 2011 67

Modelování vzhledu PG III (NPGR010) - J. Křivánek 2011 68

Závěr

Research challenges in rendering Existing algorithms are inherently bad for some practical scenes More work to do for rendering researchers

What else in CG Main general CG conferences SIGGRAPH (ACM Transactions on Graphics TOG) SIGGRAPH Asia (ACM TOG) Eurographics (Computer Graphics Forum) http://kesen.realtimerendering.com/

What else in CG Computational photography Appearance modeling & capture Animation (& capture) Dynamic simulation (hair, cloth, water, smoke, solids ) Visual perception Natural phenomena Non-photorealistic rendering Sound simulation Display technology Interaction technology Geometry modeling

General challenges in CG Making CG usable: UI design, collaboration Robust and efficient lighting simulation Virtual human Hair modeling Animation Cloth Managing complexity Natural environments etc Virtual Worlds (shared 3D graphics) and more (the above is my random choice of grand challenges )