Non Diffuse Point Based Global Illumination Karsten Daemen Thesis voorgedragen tot het behalen van de graad van Master of Science in de ingenieurswetenschappen: computerwetenschappen Promotor: Prof. dr. ir. Phil Dutre Assessoren: Ir. Kn. Owsmuch K. Nowsrest Begeleiders: Dr. ir. A. Lagae ir. J. Baert Academiejaar 2012 2013
c Copyright KU Leuven Zonder voorafgaande schriftelijke toestemming van zowel de promotor als de auteur is overnemen, kopiëren, gebruiken of realiseren van deze uitgave of gedeelten ervan verboden. Voor aanvragen tot of informatie i.v.m. het overnemen en/of gebruik en/of realisatie van gedeelten uit deze publicatie, wend u tot het Departement Computerwetenschappen, Celestijnenlaan 200A bus 2402, B-3001 Heverlee, +32-16- 327700 of via e-mail info@cs.kuleuven.be. Voorafgaande schriftelijke toestemming van de promotor is eveneens vereist voor het aanwenden van de in deze masterproef beschreven (originele) methoden, producten, schakelingen en programma s voor industrieel of commercieel nut en voor de inzending van deze publicatie ter deelname aan wetenschappelijke prijzen of wedstrijden.
Voorwoord TODO: Bedank Promotor Phil Dutre voor de kans en vertrouwen. Bedank begeleiders Jeroen Baert en Ares Lagae voor goede raad. Bedank ouders voor constant aansporen tot schrijven. Bedank Peter Moxon van Pixar voor de Renderman software. Bedank jury om de tekst te lezen. Karsten Daemen i
Inhoudsopgave Voorwoord Samenvatting Lijst van figuren en tabellen List of Abbreviations and Symbols 1 Introductie 1 1.1 Snelle Global Illumination........................ 1 1.2 Bijdrage.................................. 1 1.3 Overzicht................................. 1 2 PBGI 3 2.1 Algoritme................................. 3 2.2 Approximated PBGI........................... 4 2.3 Rendering vergelijking.......................... 4 3 Non Diffuse PBGI 7 3.1 Het idee.................................. 7 3.2 Rendering vergelijking.......................... 7 3.3 Previous work............................... 7 4 Implementatie 9 4.1 Non Diffuse Points............................ 9 4.2 Clustering................................. 9 5 Conclusion 11 A Figuren 15 i iii iv v ii
Samenvatting The abstract environment contains a more extensive overview of the work. But it should be limited to one page. iii
Lijst van figuren en tabellen Lijst van figuren 2.1 Artifacten veroorzaakt door te kleine cubemap resolutie.......... 3 2.2 Projectie van puntenwolk op een hemisfeer................. 4 2.3 Clustering van de puntwolk.......................... 4 2.4 Clusters benaderd door sferische harmonische................ 5 A.1 Weergave cubemap van verscheidene niet diffuse surfels.......... 15 A.2 Artifacten veroorzaakt door te kleine cubemap resolutie.......... 16 A.3 Artifacten veroorzaakt door te kleine microbuffer resolutie........ 17 A.4 Decompositie totale belichting....................... 18 Lijst van tabellen iv
List of Abbreviations and Symbols Abbreviations GI PBGI BRDF PRT Global Illumination Point Based Global Illumination Bidirection Reflection Function Precomputed Radiance Transfer Symbols L L e s i s o V (p, q) Radiantie Zelf uitgezonden radiantie Richting van een binnenkomende straal Richting van een uitgaande straal Visibiliteits functie, kunnen punten p en q elkaar zien. v
Hoofdstuk 1 Introductie Better is the enemy of good. Voltaire 1.1 Snelle Global Illumination TODO: Inleiding over waarom het belangrijk is om snelle Globale Illumination te hebben. 1.2 Bijdrage TODO: Welke problemen lost mijn thesis op? 1.3 Overzicht Deze thesis is georganiseerd als volgt: Hoofdstuk 2 illustreert de gedetailleerde werking het PBGI algoritme en de relatie van dit algoritme met de rendering vergelijking. Hoofdstuk 3 beschrijft de voorgestelde extensie aan het PBGI algoritme zodat er ook wordt rekening gehouden met niet diffuse oppervlakken. Hoofdstuk 4 beschrijft de resultaten die we bekomen zijn met de implementatie van het Non Diffuse PBGI algoritme. Hoofdstuk 5 concludeert deze thesis en verwijst naar eventuele mogelijkheden voor verder onderzoek. 1
Hoofdstuk 2 PBGI If I have seen further it is by standing on the shoulders of giants. Isaac Newton Zoals de naam het zegt is Point Based Global Illumination (PBGI) een algoritme om de Global Illumination in een scene te berekenen. (Zie verder inleiding "Out of Core"). 2.1 Algoritme Two pass algorithm 2.1.1 First Pass Figuur 2.1: Artifacten veroorzaakt door te kleine cubemap resolutie. 3
2. PBGI Figuur 2.2: Projectie van puntenwolk op een hemisfeer. 2.1.2 Second Pass 2.2 Approximated PBGI Figuur 2.3: Clustering van de puntwolk. TODO: Uitleggen in woorden en figuren wat we proberen te doen met Non Diffuse PBGI. Dit komt neer op het uitschrijven van mijn eerdere presentatie, afbeeldingen kunnen vandaar gebruikt worden. 2.3 Rendering vergelijking TODO: Vertalen naar het nederlands van een stuk uit mijn eerdere tekst over de rendering vergelijking. 4
2.3. Rendering vergelijking Figuur 2.4: Clusters benaderd door sferische harmonische. 5
Hoofdstuk 3 Non Diffuse PBGI It is not an idea until you ve written it down. Ivan Sutherland 3.1 Het idee TODO: Uitleggen in woorden en figuren wat we proberen te doen met Non Diffuse PBGI. Dit komt neer op het uitschrijven van mijn eerdere presentatie, afbeeldingen kunnen vandaar gebruikt worden. 3.2 Rendering vergelijking TODO: Vertalen naar het nederlands van een stuk uit mijn eerdere tekst over de rendering vergelijking. 3.3 Previous work 7
Hoofdstuk 4 Implementatie C makes it easy to shoot yourself in the foot. C++ makes it harder, but when you do, you blow away your whole leg! TODO: Uitleg Aqsis, Renderman, etc... Bjarne Stroustrup 4.1 Non Diffuse Points 4.1.1 Cubemaps Invloed op niet diffuse belichting Zie A.2 4.1.2 Spherish Harmonische 4.2 Clustering 9
Hoofdstuk 5 Conclusion TODO 11
Bijlagen 13
Bijlage A Figuren Figuur A.1: Weergave cubemap van verscheidene niet diffuse surfels. 15
A. Figuren (a) 15 15 (b) 20 20 (c) 25 25 (d) 30 30 Figuur A.2: Artifacten veroorzaakt door te kleine cubemap resolutie. 16
(a) 10 10 (b) 20 20 (c) 40 40 (d) 80 80 Figuur A.3: Artifacten veroorzaakt door te kleine microbuffer resolutie. 17
A. Figuren (a) directe belichting (b) indirecte diffuse belichting (c) indirecte niet diffuse belichting Figuur A.4: Decompositie totale belichting (d) Totale belichting 18
KU Leuven Faculteit Ingenieurswetenschappen 2012 2013 Fiche masterproef Student: Karsten Daemen Titel: Non Diffuse Point Based Global Illumination UDC: 621.3 Korte inhoud: TODO Thesis voorgedragen tot het behalen van de graad van Master of Science in de ingenieurswetenschappen: computerwetenschappen Promotor: Prof. dr. ir. Phil Dutre Assessoren: Ir. Kn. Owsmuch K. Nowsrest Begeleiders: Dr. ir. A. Lagae ir. J. Baert