diff --git a/pytania.txt b/pytania.txt
index 61bde54..d6f7d8b 100644
--- a/pytania.txt
+++ b/pytania.txt
@@ -1,358 +1,358 @@
-// BAZA PYTAŃ - GRAFIKA I WIZUALIZACJA
-
-// Plik: Grafika 2021 dysk INF PP'19
-
-Dwuwymiarowe współrzędne homogeniczne składają się z:
-- 2 liczb
--| 3 liczb
-- 4 liczb
-
-Współrzędne trójwymiarowe otrzymuje się z homogenicznych przez:
-- rozwiązanie problemu Rungego-Kutty w przestrzeni homogenicznej
--| podzielenie $x$, $y$ i $z$ przez $w$
-- podzielenie $x/w$, $y/w$ i $z/x$
-
-Czy współrzędne homogeniczne mogą mieć współrzędną $w = 0$?
--| tak, tylko to nie są wtedy współrzędne punktu, tylko wektora
-- nie, bo nie wolno dzielić przez zero
-- nie, bo zgodnie z definicją $w$ musi być różne od 0
-
-Niech $n$ będzie wektorem normalnym w przestrzeni modelu, $a$ współrzędną wierzchołka modelu, a $p$ współrzędną źródła światła w przestrzeni oka. Dane są również macierze $P$, $V$ i $M$. Które wzory są poprawne?
--| $I = p - VMa$, $v = [0,0,0,1]^T - VMa$
-- $I = V^{-1}p - Ma$, $v = V^{-1}[0,0,0,1]^T - Ma$
-- $I = PVp - PVMa$, $v = P[0,0,0,1]^T - PVMa$
-
-Przestrzeń oka to przestrzeń:
--| wspólna przestrzeń dla wszystkich modeli, w której kamera znajduje się w początku układu współrzędnych
-- w której model znajduje się na początku układu współrzędnych, a jego położenie, rozmiar i orientacja są opisane lokalnie
-- wspólna przestrzeń dla wszystkich modeli, w której kamera nie musi znajdować się w początku układu współrzędnych
-
-Kolejność przetwarzania przestrzeni to:
-- modelu, oka, świata, przycięcia
-- oka, świata, przycięcia, modelu
--| modelu, świata, oka, przycięcia
-
-Za pomocą procedury glm::lookAt można wyliczyć macierz:
-- rotacji
-- rzutowania
--| widoku
-
-Które z poniższych zdań jest prawdziwe?
-- Dowolnych dwóch operacji obrotu nie można zamieniać kolejnością, bo wynik zawsze będzie inny
--| Dwóch operacji obrotu nie można zamieniać w większości wypadków kolejnością, bo wynik będzie inny
-- Dwie operacje obrotu można wykonać w dowolnej kolejności i wynik będzie taki sam
-
-Z-Fighting to — zaznacz błędną odpowiedź:
-- Błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze zbyt małej precyzji bufora głębokości.
-- Błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający z nieliniowego odwzorowania współrzędnej $Z$ przy przejściu z przestrzeni oka do znormalizowanej przestrzeni urządzenia.
--| Błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze źle zdefiniowanych wektorów normalnych powierzchni.
-
-Wektor styczny:
-- jest wektorem łączącym dwa wybrane wierzchołki na modelu
--| jest prostopadły do wektora normalnego
-- jest styczny do wektora normalnego
-
-Wektor prostopadły do powierzchni pomnożony razy macierz $M$ jest prostopadły do powierzchni poddanej tej samej transformacji:
-- zawsze
-- tylko jeśli macierz nie zawiera skalowania
--| tylko jeśli macierz nie zawiera skalowania nieproporcjonalnego
-
-Kość w animacji szkieletowej to:
--| abstrakcyjny obiekt reprezentowany przez rotację oraz przesunięcie względem kości wyżej w hierarchii; wierzchołki modelu są powiązane z kością i podlegają tym samym transformacjom co kość
-- model w postaci walca lub stożka, do którego przyczepione są wybrane wierzchołki animowanego modelu
-- kształt reprezentujący fragment modelu podczas symulacji fizyki
-
-Inverse kinematics to:
-- odtwarzanie animacji szkieletowej od tyłu
--| obliczanie układu kości szkieletu na podstawie oczekiwanego efektu końcowego
-- obliczanie współrzędnych wierzchołków na podstawie układu kości
-
-Światło punktowe to:
--| idealne źródło światła zajmujące dokładnie jeden punkt w przestrzeni, które świeci z jednakową intensywnością w każdym kierunku
-- mocno skupione światło, na przykład laser
-- światło o ograniczonym zakresie kierunków świecenia, oświetlające tylko kilka punktów
-
-Światło stożkowe to:
-- światło promieniowe lub powierzchniowe o kształcie stożka
--| światło punktowe, które świeci tylko w obrębie stożka, a nie w każdym kierunku
-- światło odbite od powierzchni i rozproszone w ramach stożka dookoła wybranego wektora
-
-Miękkie cienie są:
-- efektem symulacji fizycznej obiektów plastycznych
-- błędem wynikającym z tego, że modele oświetlenia są tylko przybliżeniem faktycznego zachowania światła
--| efektem wynikającym z zastosowania powierzchniowych źródeł światła
-
-Zgodnie z modelem Phonga światło odbite w kierunku obserwatora jest proporcjonalne do:
-- kąta między wektorem odbitym i wektorem do obserwatora
-- odwrotności kąta między wektorem odbitym i wektorem do obserwatora
--| kosinusa kąta pomiędzy wektorem odbitym i wektorem do obserwatora
-
-Model Phonga-Blinna różni się od modelu Phonga, gdyż:
-- zastąpiono w nim iloczyn skalarny wektorów normalnego i w pół drogi iloczynem skalarnym wektorów obserwatora i odbitego
--| zastąpiono w nim iloczyn skalarny wektorów do obserwatora i odbitego iloczynem skalarnym wektorów normalnego i w pół drogi
-- zastąpiono w nim iloczyn skalarny wektorów do obserwatora i odbitego iloczynem skalarnym wektorów normalnego i do światła
-
-Powierzchnia izotropowa to powierzchnia:
-- radioaktywna; uwzględnienie interferencji promieniowania gamma z widzialnymi częstotliwościami świetlnymi pozwala na uzyskanie bardziej realistycznych wyników
--| rozpraszająca światło jednakowo w każdym kierunku
-- rozpraszająca światło różnie w różnych kierunkach
-
-Ray tracing:
--| to algorytm generowania obrazów scen trójwymiarowych poprzez śledzenie promieni świetlnych odbijających się i załamujących się w scenie
-- to algorytm rysowania voxeli
-- to algorytm rysowania promieni słonecznych
-
-Promień załamany to promień:
-- zaczynający się w punkcie cieniowanym o kierunku wyznaczonym przez dowolny wektor spełniający prawo Snella
--| zaczynający się w punkcie cieniowanym o kierunku wyznaczonym przez wektor leżący w tej samej płaszczyźnie co promień padający i normalna oraz spełniający prawo Snella
-- zaczynający się w punkcie cieniowanym o kierunku wyznaczonym przez wektor leżący w tej samej płaszczyźnie co wektor do światła i spełniający prawo Snella względem wektora odbitego
-
-Promień główny to:
-- dowolny promień przechodzący przez środek piksela
-- pierwszy promień z wielu wystrzelony z piksela przy antyaliasingu statystycznym
--| promień reprezentujący ścieżkę, którą podróżował promień świetlny trafiający w oko obserwatora
-
-Liczba zwojów w punkcie $P$ wynosi:
-- 2
--| 0
-- -2
-
-Fragment shader to:
-- program wyliczający wszystkie kolory pikseli wchodzących w rysunek modelu
--| program wyliczający kolor jednego piksela, uruchamiany w wielu instancjach, po jednej dla każdego wygenerowanego fragmentu
-- program wyliczający kolory wszystkich widocznych pikseli modelu
-
-Potrójne buforowanie pozwala na:
--| ukrycie procesu rysowania sceny
-- lepsze wykorzystanie pamięci cache karty graficznej
-- synchronizację odświeżania ekranu z procesem rysowania sceny
-
-Trójkąt na rysunku oświetlony jest punktowym źródłem światła w sposób przedstawiony na rysunku i cieniowany zgodnie z modelem Phonga zaimplementowanym w vertex shaderze. Czy na trójkącie, po narysowaniu go na ekranie, pojawi się plamka odbicia światła?
-- Nie, ale to tylko kwestia mocy obliczeniowej; kiedy pojawią się mocniejsze karty graficzne, to wtedy na pewno plamka się pojawi
-- Tak, gdyż stosowana jest nieliniowa interpolacja oświetlenia pomiędzy wierzchołkami
--| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
-
-Otoczkowanie w kontekście ray tracingu to:
-- rysowanie krawędzi obiektów w cieniowaniu kreskówkowym
-- tworzenie wypukłej otoczki bryły
--| metoda optymalizacji testowania przecięcia promienia z obiektem
-
-Z-bufor służy do:
--| rozwiązania problemu niewidocznych powierzchni
-- buforowania sekwencji operacji wykonywanych przez OpenGL w celu optymalizacji czasu renderowania obrazu
-- buforowania danych odczytywanych z tekstur w celu przyspieszenia czasu renderowania obrazu
-
-Trójkąt na rysunku
oświetlony jest punktowym źródłem światła w sposób przedstawiony na rysunku i ocieniowany zgodnie z modelem Phonga zaimplementowanym w vertex shaderze. Czy na trójkącie, po narysowaniu go na ekranie, pojawi się plamka odbicia światła czy nie?
-- Nie, ale to tylko kwestia mocy obliczeniowej. Kiedy pojawi się GeForce 12000GRTX, to wtedy na pewno okrąg się pojawi
-- Tak, gdyż stosowana jest nieliniowa interpolacja oświetlenia pomiędzy wierzchołkami
--| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
-
-Z-Buffer służy do:
--| rozwiązania problemu niewidocznych powierzchni
-- buforowania sekwencji operacji wykonywanych przez OpenGL w celu optymalizacji czasu renderowania obrazu
-- buforowania danych odczytywanych z tekstur w celu przyspieszenia czasu renderowania obrazu
-
-Współrzędne w przestrzeni trójwymiarowej wyrażone za pomocą współrzędnych homogenicznych, jednorodnych, składają się z:
--| 4 liczb
-- 3 liczb
-- 2 liczb
-
-Jaką macierz $X$ przenosi współrzędne z przestrzeni oka do przestrzeni modelu? Ze względu na kolejność operacji mnożenia, przyjmij że współrzędne są wyrażone za pomocą wektorów pionowych.
--| $X = M^{-1}V^{-1}$
-- $X = V^{-1}P^{-1}$
-- $X = P^{-1}M$
-
-Vertex shader to:
--| program przetwarzający jeden wierzchołek modelu, uruchamiany w wielu instancjach, po jednej na każdy wierzchołek modelu
-- program przetwarzający wszystkie widoczne wierzchołki modelu
-- program przetwarzający wszystkie wierzchołki modelu w pętli
-
-Efektu screen-tearing można uniknąć poprzez:
-- zastosowanie Z-Bufora, w celu rysowania tylko obiektów widocznych
-- zastosowanie specjalnego monitora
--| synchronizację odświeżania ekranu z procesem rysowania sceny
-
-Wektor normalny to:
-- wektor o długości jednostkowej
--| wektor prostopadły do powierzchni
-- wektor określający normalne współrzędne w przestrzeni trójwymiarowej przeliczony ze współrzędnych homogenicznych
-
-Raytracing to:
-- algorytm śledzący promienie świetlne wychodzące od źródła światła
-- algorytm generowania efektów świetlnych w grafice czasu rzeczywistego
--| algorytm generowania obrazów
-
-Tekstura to:
-- fragment tekstu
-- fragment opakowania kartonowego
--| obrazek nakładany na wielokąt
-
-Model Phonga Blinna różni się od modelu Phonga, bo:
-- wykorzystuje iloczyn skalarny wektorów normalnego $\vec{n}$ i "w pół drogi" $\vec{h}$ zamiast iloczynu skalarnego wektorów do obserwatora $\vec{v}$ i normalnego $\vec{n}$
--| wykorzystuje iloczyn skalarny wektorów normalnego $\vec{n}$ i "w pół drogi" $\vec{h}$ zamiast iloczynu skalarnego wektorów do obserwatora $\vec{v}$ i odbitego $\vec{r}$
-- wykorzystuje iloczyn skalarny wektorów do obserwatora $\vec{v}$ i odbitego $\vec{r}$ zamiast iloczynu skalarnego wektorów normalnego $\vec{n}$ i "w pół drogi" $\vec{h}$
-
-Przestrzeń konfiguracji w Inverse Kinematics to:
-- przestrzeń zawierająca wiele różnych wersji tego samego szkieletu (w różnych konfiguracjach)
-- dopuszczalna przestrzeń, w której może poruszać się model
--| przestrzeń, w której każdy punkt reprezentuje jakiś układ szkieletu
-
-Dana jest macierz $M_A$ reprezentująca układ współrzędnych (położenie obiektu A na scenie). Obiekt B orbituje wokół obiektu A. W danym momencie czasowym kąt obrotu zapisany jest w zmiennej $\alpha$, a promień w zmiennej $r$. Jak wyliczyć $M_B$ — macierz modelu dla obiektu B? Ze względu na kolejność mnożenia macierzy załóż, że wektory określające współrzędne homogeniczne są pionowe. Poprzez $R(\alpha)$ oznaczono macierz obrotu o kąt $\alpha$, a poprzez $T(r)$ oznaczono macierz przesunięcia o odległość $r$ prostopadle do osi obrotu.
-- $M_B = T(r) \cdot R(\alpha) \cdot M_A$
--| $M_B = M_A \cdot R(\alpha) \cdot T(r)$
-- $M_B = M_A \cdot T(r) \cdot R(\alpha)$
-
-Z-Fighting to:
-- błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający z nieczyszczenia Z bufora pomiędzy klatkami
-- błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze źle zbudowanego drzewa BSP
--| błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze zbyt małej dokładności Z Bufora
-
-Które z poniższych zdań jest prawdziwe?
-- Sprzętowe wsparcie istnieje tylko dla modelu oświetlenia Phonga (standardowo używanego w OpenGL)
-- Każdy istniejący model oświetlenia został zaimplementowany sprzętowo. To dzięki temu OpenGL jest tak wydajny
--| Każdy istniejący model oświetlenia może być wspierany sprzętowo, ale trzeba go najpierw zaimplementować w specjalnym języku
-
-Jaka macierz $X$ przenosi współrzędne z przestrzeni oka do przestrzeni modelu? Ze względu na kolejność operacji mnożenia, przyjmij że współrzędne są wyrażone za pomocą wektorów pionowych.
--| $X = M^{-1} \cdot V^{-1}$
-- $X = P^{-1} \cdot M$
-- $X = V^{-1} \cdot P^{-1}$
-
-Radiancja to:
--| moc promieniowania emitowanego przez jednostkę powierzchni w kierunku reprezentowanym przez różnicowy kąt bryłowy
-- moc promieniowania emitowanego w kierunku reprezentowanym przez różnicowy kąt bryłowy
-- moc promieniowania przechodzącego przez jednostkę powierzchni
-
-Trójkąt na rysunku
oświetlony jest punktowym źródłem światła w sposób przedstawiony na rysunku i ocieniowany zgodnie z modelem Phonga zaimplementowanym w vertex shaderze. Czy na trójkącie (po narysowaniu go na ekranie) pojawi się plamka odbicia światła czy nie?
-- Nie, ale to tylko kwestia mocy obliczeniowej. Kiedy pojawi się Geforce 12080GRTX to wtedy na pewno okrąg się pojawi
-- Tak, gdyż stosowana jest nieliniowa interpolacja oświetlenia pomiędzy wierzchołkami
--| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
-
-Dana jest macierz $M_A$ reprezentująca układ współrzędnych (położenie obiektu A na scenie). Obiekt B orbituje wokół obiektu A. W danym momencie czasowym kąt obrotu zapisany jest w zmiennej $\alpha$, a promień w zmiennej $r$. Jak wyliczyć $M_B$ — macierz modelu dla obiektu B? Ze względu na kolejność mnożenia macierzy załóż, że wektory określające współrzędne homogeniczne są pionowe. Poprzez $R(\alpha)$ oznaczono macierz obrotu o kąt $\alpha$ (oś nieistotna), a poprzez $T(r)$ oznaczono macierz przesunięcia o odległość $r$ prostopadle do osi obrotu.
--| $M_B = M_A \cdot R(\alpha) \cdot T(r)$
-- $M_B = T(r) \cdot R(\alpha) \cdot M_A$
-- $M_B = M_A \cdot T(r) \cdot R(\alpha)$
-
-Współrzędne w przestrzeni dwuwymiarowej wyrażone za pomocą współrzędnych homogenicznych (jednorodnych) składają się z:
-- 2 liczb
-- 4 liczb
--| 3 liczb
-
-Nazwa Z-bufora pochodzi od tego, że:
-- jest buforem służącym do posortowania wierzchołków według ich współrzędnej Z
--| składuje on współrzędną Z każdego piksela
-- poprzez Z oznaczono numer sekwencyjny operacji wykonywanej przez OpenGL, a numery kolejnych operacji są składowane w Z-Buforze
-
-Koordynaty barycentryczne to:
--| koordynaty, które pozwalają na podstawie współrzędnych wierzchołków trójkąta określić położenie punktu wewnątrz trójkąta
-- koordynaty wyrażone względem położenia obserwatora w przestrzeni oka
-- koordynaty barów szybkiej obsługi na mapie
-
-Atrybut programu cieniującego to:
-- parametr wejściowy programu cieniującego, który dla każdego fragmentu ma inną wartość
-- parametr wejściowy programu cieniującego, który dla każdego wierzchołka ma taką samą wartość
--| parametr wejściowy programu cieniującego, który dla każdego wierzchołka może mieć inną wartość
-
-Punktowe źródło światła to:
--| źródło światła zajmujące dokładnie jeden punkt w przestrzeni, które świeci z jednakową intensywnością w każdym kierunku
-- źródło światła o ograniczonym zakresie kierunków świecenia (oświetla tylko kilka punktów)
-- mocno skupione źródło światła (np. laser)
-
-Powierzchniowe źródło światła to:
--| źródło światła, które nie jest punktem
-- punktowe źródło światła ograniczone pewną powierzchnią (np. światło stożkowe)
-- światło odbite od powierzchni
-
-Program cieniujący to:
--| program powstały przez połączenie vertex shadera i fragment shadera
-- inna nazwa fragment shadera
-- program używający OpenGL API, rysujący ocieniowany model
-
-Gęstość strumienia promieniowania (irradiancja/emitancja) to:
-- moc promieniowania emitowanego w kierunku reprezentowanym przez różnicowy kąt bryłowy
-- moc promieniowania emitowanego przez jednostkę powierzchni w kierunku reprezentowanym przez różnicowy kąt bryłowy
--| moc promieniowania przechodzącego przez jednostkę powierzchni
-
-W modelu Phonga-Blinna wprowadzono tzw. wektor w połowie drogi $\vec{h}$. Wektor ten jest obliczany jako:
-- znormalizowana suma wektorów odbitego $\vec{r}$ i normalnego $\vec{n}$
--| znormalizowana suma wektorów do światła $\vec{l}$ i do obserwatora $\vec{v}$
-- znormalizowana suma wektorów do światła $\vec{l}$ i normalnego $\vec{n}$
-
-Funkcja BRDF (Bidirectional Reflectance Distribution Function) opisuje:
-- stosunek radiancji przychodzącego promieniowania do gęstości emitowanego promieniowania (emitancji)
--| stosunek radiancji uchodzącego promieniowania do gęstości przychodzącego promieniowania (irradiancji)
-- stosunek gęstości przychodzącego promieniowania (irradiancji) do intensywności uchodzącego promieniowania
-
-Promień cienia to:
-- promień przeciwny do kierunku do światła (w kierunku krawędzi cienia)
-- promień przechodzący przez pixel generowanego obrazu, wychodzący z oka obserwatora
--| promień do światła
-
-Kierunkowe źródło światła to:
-- źródło światła emitujące światło o różnej intensywności w zależności od kierunku świecenia
-- mocno skupione źródło światła (np. laser) świecące w konkretnym kierunku
--| źródło światła świecące z określonego kierunku
-
-Czy współrzędne homogeniczne mogą mieć współrzędną $w = 0$?
-- Nie, bo zgodnie z definicją $w$ musi być różne od 0
-- Nie, bo nie wolno dzielić przez zero
--| Tak, w takiej sytuacji są to współrzędne wektora (przesunięcia) a nie pozycji
-
-Czy współrzędne homogeniczne mogą mieć współrzędną $w = 10$?
-- Nie, mogą mieć tylko $w = 1$ lub $w = 0$
--| Tak, w takiej sytuacji współrzędne te reprezentują pozycję a nie przesunięcie
-- Tylko wtedy, gdy 10 jest wspólnym dzielnikiem $x$, $y$ i $z$
-
-Trójkąt
oświetlony jest światłem stożkowym w sposób przedstawiony na rysunku. Model światła stożkowego został zaimplementowany w vertex shaderze. Czy na trójkącie, po narysowaniu go na ekranie pojawi się jasny okrąg?
--| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
-- Tak, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
-- Tak, w najnowszych kartach graficznych np. w Geforce NVidia 2080RTX to już jest możliwe
-
-Animacja szkieletowa polega na:
--| interpolacji transformacji geometrycznych związanych z kośćmi w szkielecie
-- interpolacji współrzędnych wierzchołków modelu pomiędzy keyframe'ami
-- wyświetlaniu kolejnych keyframe'ów w odpowiednią szybkością (podobnie jak w animacji poklatkowej, ale rysowane są modele 3D)
-
-Przestrzeń modelu to przestrzeń:
-- wspólna przestrzeń dla wszystkich modeli, w której kamera nie musi się znajdować w początku układu współrzędnych
--| w której model znajduje się na początku układu współrzędnych a jego położenie, rozmiar i obrót nie mają związku z innymi obiektami na scenie
-- wspólna przestrzeń dla wszystkich modeli, w której kamera zawsze znajduje się w początku układu współrzędnych
-
-Wektor znormalizowany to:
-- wektor prostopadły do powierzchni
-- wektor określający normalne współrzędne w przestrzeni trójwymiarowej przeliczony ze współrzędnych homogenicznych
--| wektor o długości jednostkowej
-
-Niech $\vec{n}$ będzie wektorem normalnym w przestrzeni modelu, $a$ będzie współrzędną wierzchołka w przestrzeni modelu, a $p$ współrzędną źródła światła w przestrzeni oka. Dane są również macierze $P$, $V$ i $M$. Wektory do światła $\vec{l}$ i do obserwatora $\vec{v}$ w przestrzeni oka można wyliczyć następująco:
--| $\vec{l} = p - V \cdot M \cdot a$ oraz $\vec{v} = [0,0,0,1]^T - V \cdot M \cdot a$
-- $\vec{l} = P \cdot p - P \cdot V \cdot M \cdot a$ oraz $\vec{v} = P \cdot [0,0,0,1]^T - P \cdot V \cdot M \cdot a$
-- $\vec{l} = V^{-1} \cdot p - M \cdot a$ oraz $\vec{v} = V^{-1} \cdot [0,0,0,1]^T - M \cdot a$
-
-Zmienna jednorodna programu cieniującego to:
--| parametr wejściowy programu cieniującego, który dla każdego wierzchołka i każdego fragmentu ma taką samą wartość
-- parametr wejściowy programu cieniującego, który dla każdego wierzchołka może mieć inną wartość
-- parametr wejściowy programu cieniującego, który dla każdego fragmentu ma inną wartość
-
-Jaka macierz $X$ przenosi współrzędne z przestrzeni przycięcia do przestrzeni świata? Ze względu na kolejność operacji mnożenia, przyjmij że współrzędne są wyrażone za pomocą wektorów pionowych.
-- $X = M^{-1} \cdot V^{-1}$
--| $X = V^{-1} \cdot P^{-1}$
-- $X = (V M)^{-1}$
-
-Intensywność strumienia promieniowania to:
-- moc promieniowania przechodzącego przez jednostkę powierzchni
--| moc promieniowania emitowanego w kierunku reprezentowanym przez różnicowy kąt bryłowy
-- moc promieniowania emitowanego przez jednostkę powierzchni w kierunku reprezentowanym przez różnicowy kąt bryłowy
-
-Podwójne buforowanie pozwala na:
-- unikanie problemu Z-fighting poprzez alokację dwóch Z-Buforów
--| ukrycie procesu rysowania sceny
-- synchronizację odświeżania ekranu z procesem rysowania sceny
-
-Stożkowe źródło światła to:
-- powierzchniowe źródło światła o kształcie stożka
-- światło odbite od powierzchni i rozproszone w ramach stożka dookoła wektora odbicia
--| punktowe źródło światła, które świeci tylko w obrębie stożka a nie w każdym kierunku
-
-Zjawisko Fresnela to:
--| zjawisko polegające na tym, że ilość światła odbitego od powierzchni zależy od kąta patrzenia; odbicie jest silniejsze przy patrzeniu pod małym kątem do powierzchni
-- zjawisko polegające na zmianie koloru światła podczas przechodzenia przez teksturę
+// BAZA PYTAŃ - GRAFIKA I WIZUALIZACJA
+
+// Plik: Grafika 2021 dysk INF PP'19
+
+Dwuwymiarowe współrzędne homogeniczne składają się z:
+- 2 liczb
+-| 3 liczb
+- 4 liczb
+
+Współrzędne trójwymiarowe otrzymuje się z homogenicznych przez:
+- rozwiązanie problemu Rungego-Kutty w przestrzeni homogenicznej
+-| podzielenie $x$, $y$ i $z$ przez $w$
+- podzielenie $x/w$, $y/w$ i $z/x$
+
+Czy współrzędne homogeniczne mogą mieć współrzędną $w = 0$?
+-| tak, tylko to nie są wtedy współrzędne punktu, tylko wektora
+- nie, bo nie wolno dzielić przez zero
+- nie, bo zgodnie z definicją $w$ musi być różne od 0
+
+Niech $n$ będzie wektorem normalnym w przestrzeni modelu, $a$ współrzędną wierzchołka modelu, a $p$ współrzędną źródła światła w przestrzeni oka. Dane są również macierze $P$, $V$ i $M$. Które wzory są poprawne?
+-| $I = p - VMa$, $v = [0,0,0,1]^T - VMa$
+- $I = V^{-1}p - Ma$, $v = V^{-1}[0,0,0,1]^T - Ma$
+- $I = PVp - PVMa$, $v = P[0,0,0,1]^T - PVMa$
+
+Przestrzeń oka to przestrzeń:
+-| wspólna przestrzeń dla wszystkich modeli, w której kamera znajduje się w początku układu współrzędnych
+- w której model znajduje się na początku układu współrzędnych, a jego położenie, rozmiar i orientacja są opisane lokalnie
+- wspólna przestrzeń dla wszystkich modeli, w której kamera nie musi znajdować się w początku układu współrzędnych
+
+Kolejność przetwarzania przestrzeni to:
+- modelu, oka, świata, przycięcia
+- oka, świata, przycięcia, modelu
+-| modelu, świata, oka, przycięcia
+
+Za pomocą procedury glm::lookAt można wyliczyć macierz:
+- rotacji
+- rzutowania
+-| widoku
+
+Które z poniższych zdań jest prawdziwe?
+- Dowolnych dwóch operacji obrotu nie można zamieniać kolejnością, bo wynik zawsze będzie inny
+-| Dwóch operacji obrotu nie można zamieniać w większości wypadków kolejnością, bo wynik będzie inny
+- Dwie operacje obrotu można wykonać w dowolnej kolejności i wynik będzie taki sam
+
+Z-Fighting to — zaznacz błędną odpowiedź:
+- Błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze zbyt małej precyzji bufora głębokości.
+- Błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający z nieliniowego odwzorowania współrzędnej $Z$ przy przejściu z przestrzeni oka do znormalizowanej przestrzeni urządzenia.
+-| Błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze źle zdefiniowanych wektorów normalnych powierzchni.
+
+Wektor styczny:
+- jest wektorem łączącym dwa wybrane wierzchołki na modelu
+-| jest prostopadły do wektora normalnego
+- jest styczny do wektora normalnego
+
+Wektor prostopadły do powierzchni pomnożony razy macierz $M$ jest prostopadły do powierzchni poddanej tej samej transformacji:
+- zawsze
+- tylko jeśli macierz nie zawiera skalowania
+-| tylko jeśli macierz nie zawiera skalowania nieproporcjonalnego
+
+Kość w animacji szkieletowej to:
+-| abstrakcyjny obiekt reprezentowany przez rotację oraz przesunięcie względem kości wyżej w hierarchii; wierzchołki modelu są powiązane z kością i podlegają tym samym transformacjom co kość
+- model w postaci walca lub stożka, do którego przyczepione są wybrane wierzchołki animowanego modelu
+- kształt reprezentujący fragment modelu podczas symulacji fizyki
+
+Inverse kinematics to:
+- odtwarzanie animacji szkieletowej od tyłu
+-| obliczanie układu kości szkieletu na podstawie oczekiwanego efektu końcowego
+- obliczanie współrzędnych wierzchołków na podstawie układu kości
+
+Światło punktowe to:
+-| idealne źródło światła zajmujące dokładnie jeden punkt w przestrzeni, które świeci z jednakową intensywnością w każdym kierunku
+- mocno skupione światło, na przykład laser
+- światło o ograniczonym zakresie kierunków świecenia, oświetlające tylko kilka punktów
+
+Światło stożkowe to:
+- światło promieniowe lub powierzchniowe o kształcie stożka
+-| światło punktowe, które świeci tylko w obrębie stożka, a nie w każdym kierunku
+- światło odbite od powierzchni i rozproszone w ramach stożka dookoła wybranego wektora
+
+Miękkie cienie są:
+- efektem symulacji fizycznej obiektów plastycznych
+- błędem wynikającym z tego, że modele oświetlenia są tylko przybliżeniem faktycznego zachowania światła
+-| efektem wynikającym z zastosowania powierzchniowych źródeł światła
+
+Zgodnie z modelem Phonga światło odbite w kierunku obserwatora jest proporcjonalne do:
+- kąta między wektorem odbitym i wektorem do obserwatora
+- odwrotności kąta między wektorem odbitym i wektorem do obserwatora
+-| cosinusa kąta pomiędzy wektorem odbitym i wektorem do obserwatora
+
+Model Phonga-Blinna różni się od modelu Phonga, gdyż:
+- zastąpiono w nim iloczyn skalarny wektorów normalnego i w pół drogi iloczynem skalarnym wektorów obserwatora i odbitego
+-| zastąpiono w nim iloczyn skalarny wektorów do obserwatora i odbitego iloczynem skalarnym wektorów normalnego i w pół drogi
+- zastąpiono w nim iloczyn skalarny wektorów do obserwatora i odbitego iloczynem skalarnym wektorów normalnego i do światła
+
+Powierzchnia izotropowa to powierzchnia:
+- radioaktywna; uwzględnienie interferencji promieniowania gamma z widzialnymi częstotliwościami świetlnymi pozwala na uzyskanie bardziej realistycznych wyników
+-| rozpraszająca światło jednakowo w każdym kierunku
+- rozpraszająca światło różnie w różnych kierunkach
+
+Ray tracing:
+-| to algorytm generowania obrazów scen trójwymiarowych poprzez śledzenie promieni świetlnych odbijających się i załamujących się w scenie
+- to algorytm rysowania voxeli
+- to algorytm rysowania promieni słonecznych
+
+Promień załamany to promień:
+- zaczynający się w punkcie cieniowanym o kierunku wyznaczonym przez dowolny wektor spełniający prawo Snella
+-| zaczynający się w punkcie cieniowanym o kierunku wyznaczonym przez wektor leżący w tej samej płaszczyźnie co promień padający i normalna oraz spełniający prawo Snella
+- zaczynający się w punkcie cieniowanym o kierunku wyznaczonym przez wektor leżący w tej samej płaszczyźnie co wektor do światła i spełniający prawo Snella względem wektora odbitego
+
+Promień główny to:
+- dowolny promień przechodzący przez środek piksela
+- pierwszy promień z wielu wystrzelony z piksela przy antyaliasingu statystycznym
+-| promień reprezentujący ścieżkę, którą podróżował promień świetlny trafiający w oko obserwatora
+
+Liczba zwojów w punkcie $P$ wynosi:
+- 2
+-| 0
+- -2
+
+Fragment shader to:
+- program wyliczający wszystkie kolory pikseli wchodzących w rysunek modelu
+-| program wyliczający kolor jednego piksela, uruchamiany w wielu instancjach, po jednej dla każdego wygenerowanego fragmentu
+- program wyliczający kolory wszystkich widocznych pikseli modelu
+
+Potrójne buforowanie pozwala na:
+-| ukrycie procesu rysowania sceny
+- lepsze wykorzystanie pamięci cache karty graficznej
+- synchronizację odświeżania ekranu z procesem rysowania sceny
+
+Trójkąt na rysunku oświetlony jest punktowym źródłem światła w sposób przedstawiony na rysunku i cieniowany zgodnie z modelem Phonga zaimplementowanym w vertex shaderze. Czy na trójkącie, po narysowaniu go na ekranie, pojawi się plamka odbicia światła?
+- Nie, ale to tylko kwestia mocy obliczeniowej; kiedy pojawią się mocniejsze karty graficzne, to wtedy na pewno plamka się pojawi
+- Tak, gdyż stosowana jest nieliniowa interpolacja oświetlenia pomiędzy wierzchołkami
+-| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
+
+Otoczkowanie w kontekście ray tracingu to:
+- rysowanie krawędzi obiektów w cieniowaniu kreskówkowym
+- tworzenie wypukłej otoczki bryły
+-| metoda optymalizacji testowania przecięcia promienia z obiektem
+
+Z-bufor służy do:
+-| rozwiązania problemu niewidocznych powierzchni
+- buforowania sekwencji operacji wykonywanych przez OpenGL w celu optymalizacji czasu renderowania obrazu
+- buforowania danych odczytywanych z tekstur w celu przyspieszenia czasu renderowania obrazu
+
+Trójkąt na rysunku
oświetlony jest punktowym źródłem światła w sposób przedstawiony na rysunku i ocieniowany zgodnie z modelem Phonga zaimplementowanym w vertex shaderze. Czy na trójkącie, po narysowaniu go na ekranie, pojawi się plamka odbicia światła czy nie?
+- Nie, ale to tylko kwestia mocy obliczeniowej. Kiedy pojawi się GeForce 12000GRTX, to wtedy na pewno okrąg się pojawi
+- Tak, gdyż stosowana jest nieliniowa interpolacja oświetlenia pomiędzy wierzchołkami
+-| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
+
+Z-Buffer służy do:
+-| rozwiązania problemu niewidocznych powierzchni
+- buforowania sekwencji operacji wykonywanych przez OpenGL w celu optymalizacji czasu renderowania obrazu
+- buforowania danych odczytywanych z tekstur w celu przyspieszenia czasu renderowania obrazu
+
+Współrzędne w przestrzeni trójwymiarowej wyrażone za pomocą współrzędnych homogenicznych, jednorodnych, składają się z:
+-| 4 liczb
+- 3 liczb
+- 2 liczb
+
+Jaką macierz $X$ przenosi współrzędne z przestrzeni oka do przestrzeni modelu? Ze względu na kolejność operacji mnożenia, przyjmij że współrzędne są wyrażone za pomocą wektorów pionowych.
+-| $X = M^{-1}V^{-1}$
+- $X = V^{-1}P^{-1}$
+- $X = P^{-1}M$
+
+Vertex shader to:
+-| program przetwarzający jeden wierzchołek modelu, uruchamiany w wielu instancjach, po jednej na każdy wierzchołek modelu
+- program przetwarzający wszystkie widoczne wierzchołki modelu
+- program przetwarzający wszystkie wierzchołki modelu w pętli
+
+Efektu screen-tearing można uniknąć poprzez:
+- zastosowanie Z-Bufora, w celu rysowania tylko obiektów widocznych
+- zastosowanie specjalnego monitora
+-| synchronizację odświeżania ekranu z procesem rysowania sceny
+
+Wektor normalny to:
+- wektor o długości jednostkowej
+-| wektor prostopadły do powierzchni
+- wektor określający normalne współrzędne w przestrzeni trójwymiarowej przeliczony ze współrzędnych homogenicznych
+
+Raytracing to:
+- algorytm śledzący promienie świetlne wychodzące od źródła światła
+- algorytm generowania efektów świetlnych w grafice czasu rzeczywistego
+-| algorytm generowania obrazów
+
+Tekstura to:
+- fragment tekstu
+- fragment opakowania kartonowego
+-| obrazek nakładany na wielokąt
+
+Model Phonga Blinna różni się od modelu Phonga, bo:
+- wykorzystuje iloczyn skalarny wektorów normalnego $\vec{n}$ i "w pół drogi" $\vec{h}$ zamiast iloczynu skalarnego wektorów do obserwatora $\vec{v}$ i normalnego $\vec{n}$
+-| wykorzystuje iloczyn skalarny wektorów normalnego $\vec{n}$ i "w pół drogi" $\vec{h}$ zamiast iloczynu skalarnego wektorów do obserwatora $\vec{v}$ i odbitego $\vec{r}$
+- wykorzystuje iloczyn skalarny wektorów do obserwatora $\vec{v}$ i odbitego $\vec{r}$ zamiast iloczynu skalarnego wektorów normalnego $\vec{n}$ i "w pół drogi" $\vec{h}$
+
+Przestrzeń konfiguracji w Inverse Kinematics to:
+- przestrzeń zawierająca wiele różnych wersji tego samego szkieletu (w różnych konfiguracjach)
+- dopuszczalna przestrzeń, w której może poruszać się model
+-| przestrzeń, w której każdy punkt reprezentuje jakiś układ szkieletu
+
+Dana jest macierz $M_A$ reprezentująca układ współrzędnych (położenie obiektu A na scenie). Obiekt B orbituje wokół obiektu A. W danym momencie czasowym kąt obrotu zapisany jest w zmiennej $\alpha$, a promień w zmiennej $r$. Jak wyliczyć $M_B$ — macierz modelu dla obiektu B? Ze względu na kolejność mnożenia macierzy załóż, że wektory określające współrzędne homogeniczne są pionowe. Poprzez $R(\alpha)$ oznaczono macierz obrotu o kąt $\alpha$, a poprzez $T(r)$ oznaczono macierz przesunięcia o odległość $r$ prostopadle do osi obrotu.
+- $M_B = T(r) \cdot R(\alpha) \cdot M_A$
+-| $M_B = M_A \cdot R(\alpha) \cdot T(r)$
+- $M_B = M_A \cdot T(r) \cdot R(\alpha)$
+
+Z-Fighting to:
+- błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający z nieczyszczenia Z bufora pomiędzy klatkami
+- błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze źle zbudowanego drzewa BSP
+-| błąd występujący przy ukrywaniu niewidocznych powierzchni wynikający ze zbyt małej dokładności Z Bufora
+
+Które z poniższych zdań jest prawdziwe?
+- Sprzętowe wsparcie istnieje tylko dla modelu oświetlenia Phonga (standardowo używanego w OpenGL)
+- Każdy istniejący model oświetlenia został zaimplementowany sprzętowo. To dzięki temu OpenGL jest tak wydajny
+-| Każdy istniejący model oświetlenia może być wspierany sprzętowo, ale trzeba go najpierw zaimplementować w specjalnym języku
+
+Jaka macierz $X$ przenosi współrzędne z przestrzeni oka do przestrzeni modelu? Ze względu na kolejność operacji mnożenia, przyjmij że współrzędne są wyrażone za pomocą wektorów pionowych.
+-| $X = M^{-1} \cdot V^{-1}$
+- $X = P^{-1} \cdot M$
+- $X = V^{-1} \cdot P^{-1}$
+
+Radiancja to:
+-| moc promieniowania emitowanego przez jednostkę powierzchni w kierunku reprezentowanym przez różnicowy kąt bryłowy
+- moc promieniowania emitowanego w kierunku reprezentowanym przez różnicowy kąt bryłowy
+- moc promieniowania przechodzącego przez jednostkę powierzchni
+
+Trójkąt na rysunku
oświetlony jest punktowym źródłem światła w sposób przedstawiony na rysunku i ocieniowany zgodnie z modelem Phonga zaimplementowanym w vertex shaderze. Czy na trójkącie (po narysowaniu go na ekranie) pojawi się plamka odbicia światła czy nie?
+- Nie, ale to tylko kwestia mocy obliczeniowej. Kiedy pojawi się Geforce 12080GRTX to wtedy na pewno okrąg się pojawi
+- Tak, gdyż stosowana jest nieliniowa interpolacja oświetlenia pomiędzy wierzchołkami
+-| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
+
+Dana jest macierz $M_A$ reprezentująca układ współrzędnych (położenie obiektu A na scenie). Obiekt B orbituje wokół obiektu A. W danym momencie czasowym kąt obrotu zapisany jest w zmiennej $\alpha$, a promień w zmiennej $r$. Jak wyliczyć $M_B$ — macierz modelu dla obiektu B? Ze względu na kolejność mnożenia macierzy załóż, że wektory określające współrzędne homogeniczne są pionowe. Poprzez $R(\alpha)$ oznaczono macierz obrotu o kąt $\alpha$ (oś nieistotna), a poprzez $T(r)$ oznaczono macierz przesunięcia o odległość $r$ prostopadle do osi obrotu.
+-| $M_B = M_A \cdot R(\alpha) \cdot T(r)$
+- $M_B = T(r) \cdot R(\alpha) \cdot M_A$
+- $M_B = M_A \cdot T(r) \cdot R(\alpha)$
+
+Współrzędne w przestrzeni dwuwymiarowej wyrażone za pomocą współrzędnych homogenicznych (jednorodnych) składają się z:
+- 2 liczb
+- 4 liczb
+-| 3 liczb
+
+Nazwa Z-bufora pochodzi od tego, że:
+- jest buforem służącym do posortowania wierzchołków według ich współrzędnej Z
+-| składuje on współrzędną Z każdego piksela
+- poprzez Z oznaczono numer sekwencyjny operacji wykonywanej przez OpenGL, a numery kolejnych operacji są składowane w Z-Buforze
+
+Koordynaty barycentryczne to:
+-| koordynaty, które pozwalają na podstawie współrzędnych wierzchołków trójkąta określić położenie punktu wewnątrz trójkąta
+- koordynaty wyrażone względem położenia obserwatora w przestrzeni oka
+- koordynaty barów szybkiej obsługi na mapie
+
+Atrybut programu cieniującego to:
+- parametr wejściowy programu cieniującego, który dla każdego fragmentu ma inną wartość
+- parametr wejściowy programu cieniującego, który dla każdego wierzchołka ma taką samą wartość
+-| parametr wejściowy programu cieniującego, który dla każdego wierzchołka może mieć inną wartość
+
+Punktowe źródło światła to:
+-| źródło światła zajmujące dokładnie jeden punkt w przestrzeni, które świeci z jednakową intensywnością w każdym kierunku
+- źródło światła o ograniczonym zakresie kierunków świecenia (oświetla tylko kilka punktów)
+- mocno skupione źródło światła (np. laser)
+
+Powierzchniowe źródło światła to:
+-| źródło światła, które nie jest punktem
+- punktowe źródło światła ograniczone pewną powierzchnią (np. światło stożkowe)
+- światło odbite od powierzchni
+
+Program cieniujący to:
+-| program powstały przez połączenie vertex shadera i fragment shadera
+- inna nazwa fragment shadera
+- program używający OpenGL API, rysujący ocieniowany model
+
+Gęstość strumienia promieniowania (irradiancja/emitancja) to:
+- moc promieniowania emitowanego w kierunku reprezentowanym przez różnicowy kąt bryłowy
+- moc promieniowania emitowanego przez jednostkę powierzchni w kierunku reprezentowanym przez różnicowy kąt bryłowy
+-| moc promieniowania przechodzącego przez jednostkę powierzchni
+
+W modelu Phonga-Blinna wprowadzono tzw. wektor w połowie drogi $\vec{h}$. Wektor ten jest obliczany jako:
+- znormalizowana suma wektorów odbitego $\vec{r}$ i normalnego $\vec{n}$
+-| znormalizowana suma wektorów do światła $\vec{l}$ i do obserwatora $\vec{v}$
+- znormalizowana suma wektorów do światła $\vec{l}$ i normalnego $\vec{n}$
+
+Funkcja BRDF (Bidirectional Reflectance Distribution Function) opisuje:
+- stosunek radiancji przychodzącego promieniowania do gęstości emitowanego promieniowania (emitancji)
+-| stosunek radiancji uchodzącego promieniowania do gęstości przychodzącego promieniowania (irradiancji)
+- stosunek gęstości przychodzącego promieniowania (irradiancji) do intensywności uchodzącego promieniowania
+
+Promień cienia to:
+- promień przeciwny do kierunku do światła (w kierunku krawędzi cienia)
+- promień przechodzący przez pixel generowanego obrazu, wychodzący z oka obserwatora
+-| promień do światła
+
+Kierunkowe źródło światła to:
+- źródło światła emitujące światło o różnej intensywności w zależności od kierunku świecenia
+- mocno skupione źródło światła (np. laser) świecące w konkretnym kierunku
+-| źródło światła świecące z określonego kierunku
+
+Czy współrzędne homogeniczne mogą mieć współrzędną $w = 0$?
+- Nie, bo zgodnie z definicją $w$ musi być różne od 0
+- Nie, bo nie wolno dzielić przez zero
+-| Tak, w takiej sytuacji są to współrzędne wektora (przesunięcia) a nie pozycji
+
+Czy współrzędne homogeniczne mogą mieć współrzędną $w = 10$?
+- Nie, mogą mieć tylko $w = 1$ lub $w = 0$
+-| Tak, w takiej sytuacji współrzędne te reprezentują pozycję a nie przesunięcie
+- Tylko wtedy, gdy 10 jest wspólnym dzielnikiem $x$, $y$ i $z$
+
+Trójkąt
oświetlony jest światłem stożkowym w sposób przedstawiony na rysunku. Model światła stożkowego został zaimplementowany w vertex shaderze. Czy na trójkącie, po narysowaniu go na ekranie pojawi się jasny okrąg?
+-| Nie, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
+- Tak, gdyż stosowana jest liniowa interpolacja oświetlenia pomiędzy wierzchołkami
+- Tak, w najnowszych kartach graficznych np. w Geforce NVidia 2080RTX to już jest możliwe
+
+Animacja szkieletowa polega na:
+-| interpolacji transformacji geometrycznych związanych z kośćmi w szkielecie
+- interpolacji współrzędnych wierzchołków modelu pomiędzy keyframe'ami
+- wyświetlaniu kolejnych keyframe'ów w odpowiednią szybkością (podobnie jak w animacji poklatkowej, ale rysowane są modele 3D)
+
+Przestrzeń modelu to przestrzeń:
+- wspólna przestrzeń dla wszystkich modeli, w której kamera nie musi się znajdować w początku układu współrzędnych
+-| w której model znajduje się na początku układu współrzędnych a jego położenie, rozmiar i obrót nie mają związku z innymi obiektami na scenie
+- wspólna przestrzeń dla wszystkich modeli, w której kamera zawsze znajduje się w początku układu współrzędnych
+
+Wektor znormalizowany to:
+- wektor prostopadły do powierzchni
+- wektor określający normalne współrzędne w przestrzeni trójwymiarowej przeliczony ze współrzędnych homogenicznych
+-| wektor o długości jednostkowej
+
+Niech $\vec{n}$ będzie wektorem normalnym w przestrzeni modelu, $a$ będzie współrzędną wierzchołka w przestrzeni modelu, a $p$ współrzędną źródła światła w przestrzeni oka. Dane są również macierze $P$, $V$ i $M$. Wektory do światła $\vec{l}$ i do obserwatora $\vec{v}$ w przestrzeni oka można wyliczyć następująco:
+-| $\vec{l} = p - V \cdot M \cdot a$ oraz $\vec{v} = [0,0,0,1]^T - V \cdot M \cdot a$
+- $\vec{l} = P \cdot p - P \cdot V \cdot M \cdot a$ oraz $\vec{v} = P \cdot [0,0,0,1]^T - P \cdot V \cdot M \cdot a$
+- $\vec{l} = V^{-1} \cdot p - M \cdot a$ oraz $\vec{v} = V^{-1} \cdot [0,0,0,1]^T - M \cdot a$
+
+Zmienna jednorodna programu cieniującego to:
+-| parametr wejściowy programu cieniującego, który dla każdego wierzchołka i każdego fragmentu ma taką samą wartość
+- parametr wejściowy programu cieniującego, który dla każdego wierzchołka może mieć inną wartość
+- parametr wejściowy programu cieniującego, który dla każdego fragmentu ma inną wartość
+
+Jaka macierz $X$ przenosi współrzędne z przestrzeni przycięcia do przestrzeni świata? Ze względu na kolejność operacji mnożenia, przyjmij że współrzędne są wyrażone za pomocą wektorów pionowych.
+- $X = M^{-1} \cdot V^{-1}$
+-| $X = V^{-1} \cdot P^{-1}$
+- $X = (V M)^{-1}$
+
+Intensywność strumienia promieniowania to:
+- moc promieniowania przechodzącego przez jednostkę powierzchni
+-| moc promieniowania emitowanego w kierunku reprezentowanym przez różnicowy kąt bryłowy
+- moc promieniowania emitowanego przez jednostkę powierzchni w kierunku reprezentowanym przez różnicowy kąt bryłowy
+
+Podwójne buforowanie pozwala na:
+- unikanie problemu Z-fighting poprzez alokację dwóch Z-Buforów
+-| ukrycie procesu rysowania sceny
+- synchronizację odświeżania ekranu z procesem rysowania sceny
+
+Stożkowe źródło światła to:
+- powierzchniowe źródło światła o kształcie stożka
+- światło odbite od powierzchni i rozproszone w ramach stożka dookoła wektora odbicia
+-| punktowe źródło światła, które świeci tylko w obrębie stożka a nie w każdym kierunku
+
+Zjawisko Fresnela to:
+-| zjawisko polegające na tym, że ilość światła odbitego od powierzchni zależy od kąta patrzenia; odbicie jest silniejsze przy patrzeniu pod małym kątem do powierzchni
+- zjawisko polegające na zmianie koloru światła podczas przechodzenia przez teksturę
- zjawisko polegające na liniowej interpolacji normalnych pomiędzy wierzchołkami trójkąta
\ No newline at end of file