Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 9 » gi_ss22   (Übersicht)

Prüfer: Prof. Stamminger
Dauer: 30 min

Allgemein: Die Prüfungsatmossphere war sehr entspannt. Es lohnt sich aus meiner Sicht, viel selbst zu erzählen, wobei mach auch auf Formalität achten sollte. Für InCG muss man nicht unbedingt alle Formeln auswendig wissen, man sollte aber die Konzepte alle verstehen. In GlobIllum werden bspw. gerne die verschiedenen rendering Integrale gefragt, diese Formeln sollte man also wissen (wobei das eigentlich auch notwendig ist um die Konzepte dahinter zu verstehen). Vorbereitung bestand bei mir aus “Folien solange anstarren, bis man alles versteht” auch unter Nutzung von externen Materialen wie den entprechenden Papers. Die Aufgaben sind gut zum besseren Verstehen der Algorithmen, scheinen aber nicht explizit abgefragt zu werden.

Fangen wir mit Anti-Aliasing an. Was haben wir den hier kennengelernt?

⇒ Aliasing anhand verschiedener Beispiele erklärt, dann SSAA, MSAA, CSAA, FXAA, und TXAA vorgestellt. Bei MSAA wurde zudem noch genauer nach Centroid Sampling gefragt (warum sollte die Shading Position nicht außerhalb des Dreiecks liegen → Weil sonst von den Eckpunkten des Dreiecks extrapoliert werden würde)

Dann erklären sie doch einmal Shadow Maps (hier hatte ich die Wahl zwischen Normal, Environment und Shadow Maps).

⇒ Funktionsweise von Shadow Maps und Shadow Acne erklärt. Es wurde hier auch nachgefragt, was denn eigentlich glPolygonOffset tut (das Polygon wird je nach seiner Ausrichtung zur near/far clipping plan mehr oder weniger verschoben. Für Shadow Acne relevant, da diese schlimmer wird, wenn das Licht von einem Winkel auf das Polygon schaut). Danach Anti-Aliasing bei Shadow Maps vorgestellt, warum kann man nicht einfach depth Werte interpolieren, wie funktioniert PCF/Variance Shadow Maps/Convolution Shadow Maps.

Dann kommen wir doch mal zu GlobIllum. Stellen sie sich mal vor, sie haben einen Punkt in einer gewissen Szene gegeben. Wie können sie von diesem Punkt aus das Licht, welches in eine bestimme Richtung strahlt berechnen?

⇒ Einfaches Rendering Integral über die Hemisphere erklärt

Wie kann man dieses Integral berechnen?

⇒ Monte Carlo Integration erklärt

Wie funktioniert hier das Sampling über die Hemisphere

⇒ Wir wählen zuerst eine Höhe und dann eine Position auf dem entsprechenden Kreis. Einfache Polarkoordinaaten sind nicht uniform.

Wie könnte man das Berechnen des Integrals effizienter machen?

⇒ Importance Sampling erklärt. Frage nach der perfekten PDF für eine gegebene BRDF (⇒ normalisierte BRDF). Wo ist uniform Sampling dann am besten (⇒ bei einer diffusen BRDF, da diese Konstant ist).

Jetzt kommen wir noch zu Path Tracing. Wie funktioniert das?

⇒ Hier Idee + verschiedene Techniken wie Bidirectional Pathtracing, Many Lights, Next Event Estimation, etc. angeschnitten. Am Ende ging es aber hauptsächlich darum, wie die Verfolgung eines einzelnen Strahles aussieht. Zum Schluss kam dann nochmal kurz DoF dran und warum das so gut in das Framework von GlobIllum passt (⇒ der Effekt wird nicht durch irgenwelche Tricks wie in InCG erzielt, stattdessen entsteht er auf natürliche Weise durch Simulation der Linse + Rays).


Zusätzlich hier noch einige Fragen/Themen zum üben, die ich bei der Vorbereitung aufgeschrieben hatte:

InCG:

  • Normal Maps → Tangent Space erklären
  • Normal Maps → Mipmapping
  • Normal Maps → LEAN Mapping
  • Wie können wir mit Environment Maps natürliche Beleuchtung simulieren?
  • Was sind Light Probes?
  • Woher kommt Aliasing?
  • Shadow Maps: PCF vs. Variance Shadow Maps
  • Shadow Maps: Convolutional Shadow Maps
  • Wie funktionieren Alias-Free Shadow Maps?
  • Screen Space Effects: Wie kann man DOF simulieren?
  • Unterschied: SSR vs Specular SSR
  • Idee von AO? Wie kann man den Factor berechnen? Was ist Horizon Based AO?
  • Sphere Tracing: Wie könnte ein SDF für eine Plane und Cube aussehen?
  • Tesselation: Was sind Meshlets/Was ist Mesh Shading?
  • Was kann bei Z-Pass alles kaputt gehen?
  • Welche Faces braucht man bei Z-Pass/Z-Fail? Warum?

GlobIllum:

  • Warum haben wir Lens Models besprochen?
  • Physik: Unterschied zwischen Intensity, Irradiance, Radiance, …
  • Erklärung der Definition der BRDF ⇒ Warum eigentlich Differenziale?
  • Eigenschaften einer physically based BRDF?
  • Korrektur von Lambert/Phong?
  • Disney BRDF → Was ist die Idee?
  • Wie funktioniert Monte Carlo Estimation allgemein?
  • Lässt sich Importance Sampling mit dem Area Integeral vereinen?
  • Wie konvertiert der G Term im Area Integral zwischen den Spaces?
  • Sampling von einer PDF: Inversion Methode erklären
  • Multiple Importance Sampling: Wie sollte man gewichten?
  • Was sind many light methods? ⇒ Wie funktioniert Instant Radiosity?
  • Wie kann man Irradiance Caches, Photon Mapping, Path Tracing, etc. zusammen bringen?
  • Grob: Was ist Volume Rendering? Wie kann man diese Effekte modellieren?
  • Noise2Noise erklären.