This repository has been archived by the owner on Dec 10, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.tex
156 lines (122 loc) · 7.21 KB
/
main.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
\documentclass[pl]{minipw/minipw}
\usepackage{babel} % https://tex.stackexchange.com/a/166775
\usepackage{polski}
\usepackage{xltxtra}
\usepackage{siunitx}
\usepackage{enumitem}
\usepackage{diagbox}
\usepackage[toc,page]{appendix}
\renewcommand{\appendixtocname}{Załączniki}
\renewcommand{\appendixpagename}{Załączniki}
\usepackage{hyperref}
\usepackage{amsmath} % text in math
\usepackage{amssymb} % extended math symbol collection (Cap, Cup etc.)
\usepackage{listings} % code listings (lstlisting)
\usepackage{subfiles} % subfiles and selective compilation
\usepackage[disable,textsize=small]{todonotes}
\usepackage{fontspec}
\usepackage{fontawesome}
\usepackage{wrapfig} % wrapfigure enviroment
\usepackage{subcaption} % subfigures
\usepackage{tabularx}
\usepackage{physics}
\usepackage{siunitx}
\usepackage{color}
\usepackage[normalem]{ulem}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\usetikzlibrary{arrows.meta,angles,quotes}
\usetikzlibrary{intersections}
\usetikzlibrary{babel}
\usepackage{biblatex}
\addbibresource{source/references.bib}
\usepackage{graphicx}
\graphicspath{ {illustrations/} }
% Code listing configuration
\lstset{
basicstyle=\small\ttfamily,
columns=fullflexible,
keepspaces=true,
numbers=left,
frame=lines
}
%-------------------------------------------------------------------------------
% Konfiguracja klasy `minipw`
\setboolean{lady}{false} % kobiety wpisują true, mężczyźni - false
\title{Area lights in computer games}
\titleaux{Światła powierzchniowe w grach komputerowych}
\type{magisters}
\discipline{Informatyka}
\specjal{Projektowanie systemów CAD/CAM}
\author{Kamil Sienkiewicz}
\album{254210}
\supervisor{dr~inż. Joanna Porter-Sobieraj}
\date{2017}
\klucze{
grafika trójwymiarowa czasu rzeczywistego,
światła powierzchniowe,
oświetlenie,
oświetlenie bazowane na zjawiskach fizycznych,
liniowo transformowane konsinusy,
radiometria,
optymalizacja nieliniowa,
metoda pełzającego sympleksu
}
\keywords{
real-time 3D graphics,
area lights,
lighting,
physically based rendering,
physically based shading,
linearly transformed cosines,
radiometry,
non-linear optimization,
Nelder-Mead algorithm
}
%-------------------------------------------------------------------------------
\sisetup{
per-mode = fraction,
}
\begin{document}
\sloppy
\setcounter{page}{1}
\begin{streszczenie}
Praca magisterska poświęcona jest tematyce świateł powierzchniowych, czyli takich, które emitują światło na pewnej powierzchni. Każde źródło występujące w naturze jest światłem tego typu, stąd prawidłowa ich symulacja jest kluczem do uzyskania fotorealistycznych rezultatów. Praca wprowadza potrzebną teorię do zrozumienia prac naukowych, omawiających tę tematykę oraz przedstawia kilka metod generowania obrazu z oświetleniem tego typu.
Wytłumaczone zostają podstawowe pojęcia optyki i radiometrii w kontekście grafiki komputerowej, następnie bazujące na nich modele cieniowania nazywanymi modelami opartymi na zjawiskach fizycznych. W pierwszym rozdziale opisane są najprostsze metody symulacji obejmujące uproszczenie odległych lub niewielkich źródeł powierzchniowych punktowymi oraz technikę przybliżenia większych chmurami świateł punktowych.
W kolejnym rozdziale przypomniana została metoda Monte-Carlo wraz z jej wariantami, która może zostać wykorzystana, ze względu na swój bezpośredni związek z modelem fizycznym, jako metoda referencyjna do dalszych badań.
Następnie wprowadzono technikę liniowo transformowanych kosinusów, która opiera się na przybliżeniu problematycznych obliczeniowo wyrażeń całkowych takimi, które posiadają wzór jawny. Metoda ta działa w czasie rzeczywistym, ale wymaga przeprowadzenia kosztownego procesu wyznaczenia współczynników. Współczynniki te jednak mogą zostać zachowane i wykorzystane w aplikacji w formie tabel podglądowych.
Uzyskane rezultaty z wykorzystaniem metody liniowo transformowanych kosinusów są bardzo zbliżone do dokładnej metody referencyjnej opartej o Monte-Carlo, przy założeniu braku zjawiska rzucania cieni. Różnica w czasie wykonania jednak sprawia, że metoda ta jest bardzo obiecująca i może zostać wykorzystana z powodzeniem w wielu zastosowaniach już dziś.
Do tekstu pracy dołączone są aplikacje realizujące omówione algorytmy. Pierwsza z nich implementuje metody opisane w tej pracy i umożliwia ich podgląd w czasie rzeczywistym. Druga generuje współczynniki potrzebne do wykorzystania w metodzie liniowo transformowanych kosinusów poprzez optymalizację nieliniową. Struktura i architektura załączonych aplikacji jest opisana w pracy.
\vspace{0.5cm}
\end{streszczenie}
\begin{abstract}
The following master thesis covers the basics of area lights. Area light is a light source with noticeable area. Every light in nature is in fact an area light, hence correct simulation of lights of this type is the key to photo-realistic results. The thesis contains necessary theory required to understand authoritative reports discussing this subject and presents a few methods of simulation.
First chapter explains basic optics and radiometry concepts in context of computer graphics, physically based rendering models based on mentioned physics laws and simplest area light simulation methods: far or small area light approximation by point light and general technique for approximating bigger area lights with point light clusters.
In the next chapter Monte-Carlo algorithm is recalled along with a few variants for performance improvement. Due to the direct use of physically correct formulas this method can be used as a reference method in further research.
Afterwards, linearly transformed cosines method is introduced. It approaches the problem differently by finding good approximation of physically based integrals by integrals with closed-form expression. This method works well in real-time, but getting right coefficients required by the mathematical model is costly. However, those coefficients can be generated once in preprocessing stage and saved in lookup tables.
Under assumption, that shadows are not cast, results yielded by linearly transformed cosines method are very close to the reference generated by Monte-Carlo. This method is very promising and can be successfully applied today in many use-cases due to the low performance cost.
This thesis includes example applications implementing discussed algorithms. First one supports major methods introduced in this thesis and allows to inspect the results interactively. Second, generated the results required by linearly transformed cosines method. The structure and architecture of this application is included in the appendix.
\vspace{0.5cm}
\end{abstract}
\makestatement
\cleardoublepage
\tableofcontents
%\listoftodos
\cleardoublepage
\pagestyle{fancy}
\subfile{source/notation_table}
\subfile{source/ch01_introduction}
\subfile{source/ch02_pbr}
\subfile{source/ch03_montecarlo}
\subfile{source/ch04_ltc}
\subfile{source/ch05_results}
\subfile{source/ch07_summary}
\cleardoublepage
\renewcommand\appendixtocname{Dodatki}
\renewcommand\appendixpagename{Dodatki}
\begin{appendices}
\subfile{source/appendix_pdf_maxima}
\subfile{source/ch06_architecture}
\end{appendices}
\printbibliography
\end{document}