TU Wien:Grundlagen der Computergraphik VU (Wimmer)/Prüfungsfragen

Aus VoWi
Zur Navigation springen Zur Suche springen

Graphics Programming[Bearbeiten | Quelltext bearbeiten]

Szenen Graph[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Aufbau
  • Extraknoten in Unity (Transform-Komponente, Mesh Filter, Mesh Renderer, Material-Komponente ...)

Was ist ein Vertex und Fragment Shader?[Bearbeiten | Quelltext bearbeiten]

  • Wofür braucht man sie?
  • Wie viele Aufrufe von Vertex und Fragment Shader braucht man, wenn man einen Ausschnitt von 800x600px hat?

Data Structures[Bearbeiten | Quelltext bearbeiten]

Octree[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Vorteile / Nachteile
  • Unterschied zu einem

Grid[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Vorteile / Nachteile ("teapot in the stadium problem")
  • Multilevel Grid

BSP-Tree? (Transformationen, Kombinationen, Vor- und Nachteile, Unterschied zu kDTree)[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Affine Transformationen auf BSP-Bäumen
  • Kombination von BSP-Bäumen
  • Wie kann man BSP-Bäume rendern? (Painters Algorithm)
  • Vorteile / Nachteile
  • Unterschied zu kd-Tree

Point Clouds[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Woher bekommt man Point Clounds? , Erzeugung
  • Herausforderungen: Rauschen / Unvollständigkeit, Umwandlung zu einer Polygon-Oberfläche ist kompliziert.

Boundary Representation (B-REPs)[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung (Vertices, Efges, Faces). B-Reps verwenden in der Praxis Indices und *nicht* Pointer.
  • Vorteile / Nachteile
  • Kann man damit runde Objekte repräsentieren (z.B. runde Tasse) ?
  • Kombination skizzieren und beschreiben
  • Wie bestimmt man, ob ein Dreieck innerhalb oder außerhalb liegt ? (Raytracing und Vorzeichen des Skalarprodukts von den beiden Normalen).

Winged Edge[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung und Skizze (wie in den Folien)
  • Wo wird diese Datenstruktur verwendet? (Algorithmen, die direkt auf Geometrie arbeiten und diese verändern: z.B. Tesselation)
  • Vorteile gegenüber B-Reps

Modelling[Bearbeiten | Quelltext bearbeiten]

Höhenlinien[Bearbeiten | Quelltext bearbeiten]

  • Erklärung
  • Wie werden sie generiert? (Funktion, Noise, gemessen (vgl. Google Maps Höhenlinien))

Partikelsysteme[Bearbeiten | Quelltext bearbeiten]

  • Wie funktionieren sie? (Schritte: Initiierung, Simulation, Rendering, Recycling)
  • Was kann man damit modellieren? (Feuer, Rauch ...)

Prozedurale Modellierung[Bearbeiten | Quelltext bearbeiten]

  • Warum prozedurale Modellierung? (Komplexe Objekte mit wenigen Parametern erstellen)
  • Führen die gleichen Parameter immer zu dem gleichen Modell? (Nein, manche prozedurale Systeme sind stochastisch)
  • Fünf Arten von prozeduraler Modellierung aufzählen und kurz erläutern (L-Systeme, Shape Grammars, Sweeps, Terrain / Noise, Vegetation, Simulation ...)

Unterschied zwischen implizite, explizite und parametrische Modellierung[Bearbeiten | Quelltext bearbeiten]

Sweeps[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung. Wie werden sie erzeugt ?
  • Was lässt sich damit besonders gut modellieren?
  • Rendering

Cellular Texture Generation[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung (Particle System, wo Particles Auskunft über andere Particles haben)
  • Welche Attribute haben Particles
  • Systeme werden mit Differential Gleichungen und nicht mit Code beschrieben
  • Was kann man damit modellieren ?

Terrain Simulation[Bearbeiten | Quelltext bearbeiten]

  • Erklärung
  • Methoden (Fraktale, Geographische Daten aufzeichnen, Noise, Simulationen: Erosion, Self-Thinning)

Bezier Kurven[Bearbeiten | Quelltext bearbeiten]

  • Was lässt sich damit gut modellieren ?
  • Bernstein Polynome
  • Eigenschaften
  • De Casteljau Algorithmus beschreiben und skizzieren
  • Horner Schema

B-Splines[Bearbeiten | Quelltext bearbeiten]

  • Kontrollpunkte und Knot-Vector
  • Vorteil gegenüber Bezier Kurven
  • Kann man damit einen Kreis repräsentieren? (Nein, Kreisgleichung ist keine polynomielle Funktion)
  • Kann man Bezier Kurven mit B-Splines darstellen ?
  • NURBS

Subdivision Surfaces[Bearbeiten | Quelltext bearbeiten]

  • Was ist das, wie funktioniert das
  • Welche Algorithmen gibt es
  • Was sind die Funktionsweisen (Vertex insertion, Corner cutting)
  • Unterschiede (Triangular vs. Quadrilateral und Approximating vs. Interpolating)

Sampling and Reconstruction[Bearbeiten | Quelltext bearbeiten]

Sampling[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung und Unterschied zu Reconstruction
  • Comb-Funktion
  • Dirac-Funktion
  • Wie entsteht Aliasing ? (Überlagerungen im Frequenzraum)
  • Spectrale replicas

Faltungstheorem[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Wie passiert bei Faltung ?
  • Anwendung
  • Was ist der Frequenzraum?
  • Box-Filter und Tent-Filter

Dirac Impulis (Dirac-Function)[Bearbeiten | Quelltext bearbeiten]

  • Anwendung (Einzelne Punkte aus der Funktion "rausziehen")
  • Wie sieht es auch?
  • Fläche unter der Kurve ist eins

Texturing[Bearbeiten | Quelltext bearbeiten]

Parametrisierung[Bearbeiten | Quelltext bearbeiten]

  • Wie werden Texturen Parametrisiert (UV-Koordinaten)
  • Cylindrical parametrization
  • Spherical parametrization
  • Probleme bei nicht-konvexen Objekten

Perspective Correct Interpolation[Bearbeiten | Quelltext bearbeiten]

Aliasing im Kontext von Texturierung[Bearbeiten | Quelltext bearbeiten]

  • Wann tritt es auf?
  • Lösungen: Präfilterung, Mip-Mapping, Summed Area Tables

Mip-Mapping[Bearbeiten | Quelltext bearbeiten]

  • Erklärung
  • Speicherbedarf
  • Trilinear Filtering (Was ist das und welches Problem wird damit gelöst?)

Summed Area Table[Bearbeiten | Quelltext bearbeiten]

  • Beschreibung
  • Welche Problem bei großen Texturen?
  • Wie kann man damit einen beliebigen Bereich herauslesen?

Cube Mapping[Bearbeiten | Quelltext bearbeiten]

  • Funktionsweise und Anwendungen (Skybox)
  • Annahmen (Umgebung ist unendlich weit entfernt)
  • Seamless Textures

Unterschied zwischen Bump, Parallax, Horizon und Relief Mapping[Bearbeiten | Quelltext bearbeiten]

Beleuchtung und Physically-Based Shading[Bearbeiten | Quelltext bearbeiten]

Unterschied Diffuse / Specular Beleuchtung[Bearbeiten | Quelltext bearbeiten]

  • Diffuse: Farbe gleich aus jedem Winkel
  • Specular: Hängt von dem Betrachtungswinkel ab
  • Formel erklären

Phong and Blinn-Phong[Bearbeiten | Quelltext bearbeiten]

  • Welche Vektoren werden benötigt?
  • Die Formeln kurz erklären
  • Welche Paraeter gibt es bei der Specular-Licht Formel?
  • Unterschied zwischen Phong und Blinn-Phong

Ambient Illumination[Bearbeiten | Quelltext bearbeiten]

  • "Hack", um globale Beleuchtung in der Echtzeitgraphik zu bekommen
  • Einschränkungen

BRDF[Bearbeiten | Quelltext bearbeiten]

  • Was beschreibt es? (Verhältnis von Incoming/Outgoing Licht)
  • Vier Winkel (zwei Vektoren) als Eingabe
  • Hauptprinzip von physically-based Rendering (Energieerhaltung)