Computergrafik Flashcards
Ray Tracing definieren.
- Konzentriert sich vor allem auf die spekulare Lichtinteraktion
- kann fotorealistische Bilder aus 3D-Szenen mit sehr genauen Reflexionen und Brechungen erzeugen
- es erzeugt einen Strahl für jeden Pixel, der auf dem Bildschirm angezeigt wird, dann wird der Weg jedes Strahls von der Kamera aus durch die Szene bis zur ursprünglichen Lichtquelle verfolgt
Radiosity definieren
Die Radisosity Methode basiert auf dem Ansatz der Energieerhaltung, bzw. des Energiegleichgewichts zwischen allen Licht empfangenden und Licht sendenden Flächen.
- Konzentriert sich vor allem auf die Diffuse Lichtinteraktion
- Es ist eine gute Methode, um natürlichen Schattierungen nachzubilden
- Zur Berechnung werden die Oberflächen in sog. Patches unterteilt, die gegenseitig auf Lichtwirkung untersucht werden
Was ist ein LightMap?
Eine Textur die Lichtwerte speichert, damit sie real time nicht berechnet werden müssen.
Was sind die globalen Beleuchtungsmodelle?
- Berücksichtigen für die Reflexion des Lichtes an einem Punkt
- nicht nur das Licht, welches von Lichtquellen direkt an diesem Punkt ankommt, sondern auch all das Licht , das von anderen Oberflächen reflektiert wird und zu diesem Punkt gelangt.
- zwei Methoden davon sind Ray-Tracing und Radiosity
Erkläre das rekursives Ray Tracing nach Whitted?
- Dabei werden weitere Lichtstrahlen von den Schnittpunkten ausgesendet.
- die Strahverfolgung beginnt am Auge und nicht nicht an der Lichtquelle
- Damit werden alle Strahlen die nicht das Auge treffen von vorne hinein vermieden
Wann wird die Rekursion abgebrochen?
- wenn der Strahl eine diffuse Oberfläche schneidet
- wenn eine zuvor festgelegte Verfolgungstiefe erreicht wird
- wenn die Energie des Strahle unter einen Schwellwert fällt
Welche Informationen müssen die Struktur des Strahles mindestens enthalten?
- den Ursprung des Strahls
- seine Richtung
- seinen Schnittpunkt
- den Abstand des Schnittpunkts vom Ursprung des Strahls
- die aktuelle Tiefe der Verfolgung
- die Anzahl der Objekte in denen sich der Strahl gerade befindet
Wieso sind Schatten wichtig?
Schatten sind sehr wichtig für das realistische Aussehen von Szenen, da sie noch Informationen:
- über die räumlichen Beziehungen von Objekten zueinander
- über die Position von Lichtquellen, die Orientierung geben beim navigieren durch die Szene, geben
Schritte zur vollständigen Radiosity Lösung
- Ändern der Szenengeometrie
- Diskretisieren der Szenengeometrie
- Berechnung Formfaktoren
- Iteratives Lösen des Gleichungssystems
- Rendern aus Blickwinkel
Was ist der Unterschied zwischen Intrinsische Drehung und Extrinsische Drehung?
Intrinsische Drehung: Es wird um die zuvor gedrehten Achsen weitergedreht
Extrinsische Drehung: Es wird immer um die ursprünglichen Achsen gedreht
Eigentliche Euler Winkel: Die erste und dritte Drehung findet um die gleiche Koordinatenachse statt
Was sind die Vor- und Nachteile des Euler-Winkels?
Vorteile:
nur 3 Werte zur Beschreibung der Rotation
Nachteile:
- nicht eindeutig
- es kann Gimbal Lock entstehen
- nicht intuitiv - Drehachsen ändern sich
Was sind die Vor- und Nachteile der Quaterionen?
Vorteile:
- kein Gimbal Lock
- gut geeignet zur “Spherical Linear Interpolation”
Nachteile:
- mathematisch anspruchsvoll
- nicht eindeutig
- nur Rotationen
Was sind die Vor- und Nachteile der Rotationsmatrizen?
Vorteile:
- kein Gimbal Lock
- eindeutig
Nachteile:
- 9 Werte statt 3(Euler) oder 4(Quaterionen)
- schwer interpretierbar
Warum sind die homogene Koordinaten für die Computergrafik wichtig?
Mit ihrer Hilfe können Transformationsmatrizen für Translationen konstruiert werden, obwohl Translationen im R2 oder R3 keine linearen Abbildungen sind.
Welche 3 Kategorien gibt es bei der Beschreibung von 3D Modellen?
- Diskret (Digital)
- Volumen
- Oberflächen
- Kontinuierlich (Analog)
- Mathematisch (Logisch)
Beschreiben Sie Diskretes Volumen. Was ist der Unterschied zwischen einem Voxel und einem Pixel?
- Modellierung über Normzellen
- Raum wird in gleich große Zellen aufgeteilt
- häufig für physikalische Simulationen verwendet
Voxel ist analog zu Pixel in 2D-Raum
steht für Volumenelement
Was ist eine Bezierkurve?
Ist eine Kurve, die durch einen Laufparameter und mehrere Kontrollpunkte bestimmt wird.
(die 3 verschiedene Bezierkurvenzeichnungen lernen)
Was ist ein B-Spline?
B-Spline (Basis Spline) vermeiden die 2 Nachteile der Bezierkuven
1. die mangelnde örtliche Beschränkung
2. das Verhältnis zwischen dem Grad der Kurve und der Anzahl der Kontrollpunkte
Welchen Nachteile von uniformen B-Splines kompensieren die nicht uniformen B-Splines?
- Uniform B-Spline interpolieren nicht die Anfangs- und Endpunkte
- mehrere Kontrollpunkte an die selben Stelle führt zu Unstetigkeit
Lösung: nicht uniform B-Splines
passt die Basisfunktion über einen Knotenvektor
Was sind NURBS?
- Non Uniform Rational B-Spline
- erlauben eine Gewichtung der Kontrollpunkte auf Basis der rationalen Bezierkurven
- wie bei den homogen Koordinaten
Erkläre die vier Graßmannsche Gesetze.
Erstes graßmannsches Gesetz::
Jeder Farbeindruck kann mit genau drei Grundgrößen vollständig beschrieben werden. (RGB)
Zweites graßmannsches Gesetz::
Mischt man eine Farbe mit sich veränderndem Farbton mit einer Farbe, bei der der Farbton immer gleich bleibt, so entstehen Farben mit sich veränderndem Farbton, wie es durch die Schnittmengen der Farbflächen im Begleitbild illustriert wird.
Drittes graßmannsches Gesetz::
Der Farbton einer durch additive Farbmischung entstandenen Farbe hängt nur vom Farbeindruck der Ausgangsfarben, nicht jedoch von deren physikalischen (spektralen) Zusammensetzungen ab.
Viertes graßmannsches Gesetz::
Die Intensität (bzw. Totalintensität) einer additiv gemischten Farbe (T3) entspricht der Summe der Intensitäten der Ausgangsfarben
(im Schema beschränkt auf T1 und T2).
Was sind Texturen?
Texturen sind ein-, zwei- oder dreidimensionale Datenfelder (arrays), die genutzt werden können um Visualisierung von Oberflächen von dreidimensionalen Objekten zu beeinflussen
Wie sind Texturen aufgebaut?
- Die Rohdaten einer Textur liegen immer als eine lange Reihe von Bytes im Speicher vor, egal ob es 1D, 2D, oder 3D Texturen sind
- jedes einzelnen Datenfeld (aka Texel) kann aus mehreren Komponenten(nc) bestehen.
nc = 1 –> intensity
nc = 2 –> intensity - alpha(transparenz)
nc = 3 –> rgb
nc = 4 –> rgba (rgb + transparenz)
Wofür kann man Texturen verwenden?
- Farbe (Color mapping)
- Spekulare Farbe (Reflektion/Mapping mapping)
- Manipulation des Normalenvektors (Bump mapping)
- Veränderung der Vertices (Displacement mapping)
- Veränderung der Transparenz (Transparency mapping)
- Light Map