Sie sind auf Seite 1von 31

egiraffe.htugraz.

at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
Altfragenmix CG

Seite 1/31

Computergrafik Vo Seite 1
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 2/31

Computergrafik Vo Seite 2
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 3/31

Computergrafik Vo Seite 3
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 4/31

Computergrafik Vo Seite 4
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 5/31

Computergrafik Vo Seite 5
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

• Image-Order vs. Object-Order/Rendering-Verfahren:


• Beschreiben Sie die grundlegenden Unterschiede zwischen Image-Order und Object-Order Bild-Synthese. Nennen Sie jeweils ein Rendering-
Verfahren, das diese Konzepte verwendet. Beschreiben Sie den Vorgang beim genannten Object -Order-Verfahren im Detail. [6 Punkte]

Sowohl Image-Order- als auch Object-Order-Verfahren werden genutzt, um aus einer virtuellen Szene ein Bild zu erstellen (=Rendering). Dabei ist die
Position/Orientierung des visuellen Betrachters bekannt und das Bild der Szene, das der visuelle Betrachter sehen würde ist gesucht.

Dafür gibt es zwei Möglichkeiten in der Bildsynthese, um ein Abbild zu erzeugen, diese unterscheiden sich vor allem in der Reihenfolge der Vorgehensweise:

• Object-Order:
"was sehe ich wo" => Ein Objekt wird nach dem anderen gezeichnet.

In einem Raster wird das erste Objekt der Szene betrachtet und in eine Menge von Pixeln umgewandelt.

Das nächste Objekt wird betrachtet und ebenfalls in eine Menge von Pixeln umgewandelt.

Der Rechenaufwand ist abhängig von der Anzahl der Objekte


Anwendung: (Triangle-Rasterization)
Seite 6/31

Computergrafik Vo Seite 6
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
Anwendung: (Triangle-Rasterization)

Object-Order Renderingverfahren:

Rasterization:
– Verwendung zur Objektrepräsentation – Im Grunde wird ein Objekt abgetastet und projiziert, sodass festgelegt wird, wo das Objekt im Bild zu finden ist.
Einteilen des Raumes in Objekte z.B. mit Regular Grid, Octree oder Bounding Box Volume, dann wenn das Objekte eingeteilt ist, wird das Objekt abgetastet und
die Stelle im Bild gespeichert. Zur Tiefendarstellung wird ein Z-Buffer verwendet.

• Image-Order:
"wo sehe ich was" => Reihenfolge des Bildes wird befolgt, ein Pixel nach dem anderem im Raster wird betrachtet.

Die Pixel werden der Reihenfolge nach durchwandert, bis ein Objekt getroffen wird.

Wird ein Objekt getroffen, wird es umgewandelt.

Der Rechenaufwand ist abhängig von der Anzahl der Pixel


Anwendung: Raytracing/Raycasting

• Beschreiben Sie den Vorgang beim Raytracing/Raycasting (Image-Order-Renderingverfahren) im Detail bis zur Shading-Ebene.
• Verwenden sie folgende Begriffe in ihrer Antwort Pixel als Punkt in der Bildebene und Oberflächenpunkt als Punkt auf Objekten in der 3D-Szene:

Raytracing:
○ Sampling
Beim Raytracing handelt es sich um einen digitalen Samplingvorgang
Das Bild wird pixelweise abgetastet; für jeden Bildpunkt werden diese Schritte befolgt:

▪ Es wird ein Strahl in die virtuelle Szene geschossen.

▪ Der Schnittpunkt mit dem nächsten Objekt wird berechnet.


▪ Auf Basis dieses Schnittpunktes werden Reflexion und Brechung ausgewertet
▪ Damit wird das Aussehen des Objektes berechnet.
▪ Die Farbe für das Pixel wird in den Bildspeicher geschrieben
○ Abtastung
▪ Für jeden Pixel werden Strahlen durch die Sampleposition(en) in die Szene geschossen. Die Samplepositionen sind durch das Pixelraster bestimmt.
▪ Die Pixel werden erst durch den Rekonstruktionsfilter des Displays quadratisch, dafür werden Samplepunkte , die die Farbe enthalten benutzt. Die
Strahlen werden durch den Mittelpunkt des Pixels geschossen.

Seite 7/31

Computergrafik Vo Seite 7
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

○ Kamera
▪ Es wird eine vereinfachte Form der Pinhole Kamera verwendet, bei der die Bildebene vorne liegt. Verwendet wir die perspektivische Projektion, die
Bildebene steht dabei normal auf die Sichtrichtung. Damit ergeben sich unterschiedliche Bilder je nach Field of View und Verzerrung.
▪ Field of View:
Das Field of View kann durch den Öffnungswinkel α=2arcustan(h/2d) beschrieben werden.

Wie groß ein Objekt im Bild erscheint ist abhängig von der Distanz des Objektes und der Distanz der Bildebene.
○ Strahlen
▪ Es wird ein Strahl wird mit der Formel ( ) = + beschrieben
• P beschreibt den Ursprung
• D beschreibt die Richtung
• T ist der Strahlparemeter

○ Virtuelle Kamera:
• Die Position der Kamera im Raum ist angegeben durch den Punkt e
• die Ausrichtung im Raum lässt sich durch die Basis -Vektoren u,v und w herleiten
• die Bildebene ist parallel zur u/v-Ebene mit w = -d.
• Die Bildebene ist definiert als l,r,b,t (left, right, top, bottom), wobei meist gilt l = -r, b = -t.
▪ Strahlerzeugung:

○ Orthographische vs. perspektivische Projektion:


Bei der orthografischen Projektion werden parallele Linien verwendet, wodurch man keinen Größenunterschied zwischen Objekten durch Entfernung erhält.
Die Kamera ist hier unendlich weit entfernt.

Bei der perspektivischen Projektion ist hingegen die Größe über die Entfernung definiert, da sich die parallelen Linien in den Fluchtpunkten treffen.

○ Beschleunigungsdatenstruktur:
Raytracing ist sehr rechenintensiv daher ist dies notwendig.
Zur Schnittpunktfindung müssen alle Objekte gegen den Strahl getestet werden. Für jeden gefundenen Schnittpunkt muss die Schnittpunktdistanz t
gespeichert werden und ein Größenvergleich stattfinden, um den kleinsten Schnittpunkt zu finden.
▪ Beschleunigungsdatenstruktur betrachtet nur jene Objekte, die potentiell getroffen werden können, was die Berechnung erheblich beschleunigt.
Octree => Bounding Volumes können für weitere Beschleunigung verwendet werden.

○ Lichtquellen:
▪ Flächenlichtquelle:
Licht tritt in jeden Punkt aus verschiedensten Richtungen auf => weiche Schatten
Sehr aufwendig und nur in trivialen Fällen analytisch zu lösen => Vereinfachungen notwendig
▪ Punktlichtquelle:
Lichtquelle wird infinitesimal klein => Nachteil harte Schattenbildung
▪ Spotlight:
Kegelförmiger Lichtbereich ähnlich Punktlichtquelle, selbe Nachteile
▪ Gerichtete Lichtquellen:
▪ Lichtquelle unendlich weit entfernt => Licht kommt in jedem Punkt aus derselben Richtung

○ Shading:
Bestimmung der Farbe des ausgesandten Strahls, wobei die Beleuchtung am getroffenen Punkt ausgewertet und die zur Kamera reflektierte Farbe
berechnet wird.

Im Gegensatz zur Natur wird in der Computer Grafik die Reflexion des Lichts beim Auftreffen auf ein Objekt statistisch angenähert (alle Richtungen sind
gleichverteilt):
Natur vs. Computergrafik

▪ Reflexion:
Seite 8/31

Computergrafik Vo Seite 8
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
▪ Reflexion:

▪ Brechung:

▪ Lambert Shading:
Beim Lambert Shading geht man davon aus, dass man perfekt diffuse Reflektoren hat, welche das einfallende Licht gleichmäßig in alle Richtungen
streuen, unabhängig von der Blickrichtung, nur abhängig von der Orientierung der Oberfläche zum Licht. Die auf die Oberfläche einfallende
Strahlendichte ergibt sich dann zu cos . Es gilt dann = ° ° max( ∙ , 0) , wobei der diffusen Farbe entspricht, der Lichtfarbe und n
dem Normalvektor auf die Ebene und l dem Richtungsvektor zur Lichtquelle.

Man erhält mit dem Lambert Shading Abbildungen wie hier zu sehen, bei welchen klar erkennbar ist um welche Typen von Körper es sich handelt und
von woher das Licht kommt.

▪ Phong Shading:
▪ Die Idee ist, die Richtung des reflektierten Lichts zu berechnen und daraus Highlights abzuleiten, je direkter die reflektierte Lichtrichtung zum
Betrachter, desto stärker das Highlight.
▪ Als Maß für die Stärke des Highlights wird (cos( )) verwendet, der Winkel gibt dabei den Winkel zwischen reflektierter Lichtrichtung und
Blickrichtung an.

▪ Auch Superposition mehrerer Lichtquellen ist möglich:, zum ambienten Anteil wird die Summe der spekulären und diffusen Anteile addiert.

Phong-Shading Modell:
• Aus welchen Termen setzt sich das Phong-BeleuchtungsmodeII zusammen und
• wie werden diese üblicherweise berechnet? 2) Welche Parameter des Modells werden
• dabei normalerweise pro Oberfläche definiert? 3) Beschreiben Sie die Parameter des
• Modells und ihren Einfluss auf das Ergebnis. [6 Punkte]

Terme des Beleuchtungsmodells:


Das Phong-Beleuchtungsmodell setzt sich aus ambientem Term, der für ein konstantes Lichtlevel zuständig ist, diffusem Term, der angibt wie stark die Strahlen
von dem Objekt gestreut werden, und
der Specular Reflexion zusammen, die beschreibt, wie stark die Lichtquelle reflektiert wird (weiß für Spiegel, Matt für unebene Flächen).

Ambient Term: Farbe/Form, umgebungsabhängig, lichtquellenabhängig


Diffuser Term: Schatten, abhängig vom Ort der Lichtquelle/Lichteinfall
Specular Reflexion: Highlights/Glanzeffekt

Folgende Formel dient zur Berechnung:

Parameter pro Oberfläche:


Pro Oberfläche wird normalerweise nur die Normale N definiert, die restliche Geometrie wird nicht beeinflusst.

Bedeutung der einzelnen Parameter:


l Einfallender Lichtstrahl
n Oberflächennormale
v Blickrichtung der Kamera (viewer direction)
r Richtung des reflektierten Lichts (reflecting light ray direction)
ka Materialkonstante (ambient color)
kd Zerstreute Reflexion (diffuse color)
ks Spiegelnde Reflexion (specular color)
m Oberflächenbeschaffenheit/Rauheit/Glanz (specular Power) rau: n<32, glatt: n>32, perfekter Spiegel n=∞
Seite 9/31

Computergrafik Vo Seite 9
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
m Oberflächenbeschaffenheit/Rauheit/Glanz (specular Power) rau: n<32, glatt: n>32, perfekter Spiegel n=∞
IL Lichtfarbe
Ia Ambiente Lichtfarbe
L Ausgehende Lichtintensität

Terme:
Siehe oben für die enthaltenen Terme

Visuelle Phänomene:
Nur das Phong Modell ist in der Lage Highlights zu reproduzieren, für diese wird nämlich spiegelnde Reflexion benötigt, welche nur im Phong Modell umgesetzt
sind.
Um die Highlights zu erhalten berechnet man die Richtung des reflektierten Lichts. Je stärker die reflektierte Richtung zum Betrachter zeigt, desto stärker ist das
Highlight zu sehen.

Ein Maß für die Stärke des Highlights ist (cosαr)m


αr Winkel zwischen reflektierter Licht- und Blickrichtung

Phong Shading mit mehreren Lichtquellen:


Bei mehreren Lichtquellen wird die Superposition betrieben, zum ambienten Anteil wird die Summe der spekulären und diffusen Anteile addiert.

• Wie unterscheidet sich Gouraud-Shading von Phong-Shading? Was ist Flat Shading? Wann wird welches von beiden benutzt?
Gouraud-Shading:
Berechnet Beleuchtung pro Vertex und interpoliert diese über ein Polygon bzw. betreibt Interpolation der Farbe.
Wird verwendet wenn gute Performance wichtig ist, liefert schlechtere Qualität als Phong -Shading.

Phong-Shading:
Interpolation der Normalvektoren. Die Beleuchtung wird pro Pixel berechnet.
Wird verwendet, wenn gute Qualität wichtig ist. Ist rechenaufwendiger als das Gouraud -Shading, liefert aber auch bessere Ergebnisse.

Flat-Shading:
Bei Flat Shading erfolgt eine Beleuchtung pro Polygon, während aber keine Interpolation stattfindet. Schlechteste Darstellung , aber schnellste.
Früher verwendet.

• Was ist der Unterschied zwischen diffuse und specular Reflexion?


Die Reflexion setzt sich zusammen aus der specular Reflexion (spiegelnde Reflexion/spiegelnde Richtung) und einer diffusen Reflexion (mit nicht genau
bestimmbarer Abstrahlrichtung annähernde Gleichverteilung bei der Ausbreitungsrichtung). Das spekuläre Licht kann z.B. mittels Polarisationsfilter rausgefiltert
werden, der nur eine einzelne Polarisationsebene durchlässt. Stimmt die specular Reflexion nicht mit der polarisationseben überein, so wird jener Anteil nicht
durch den Filter durchgelassen. Die Natur selbst erzeugt eine Überlagerung aus specularen und diffusen Effekten. Die Objektfarbe wirkt sich insgesamt eher auf
die diffuse Reflexion aus.

Bildschirme:

• Beschreiben Sie die Funktionsweise eines LCD-Bildschirmes. Wie wird die Darstellung eines Farbbildes auf einem LCD erreicht?
Seite 10/31

Computergrafik Vo Seite 10
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
• Beschreiben Sie die Funktionsweise eines LCD-Bildschirmes. Wie wird die Darstellung eines Farbbildes auf einem LCD erreicht?
• Beschreiben Sie die wesentlichen Komponenten des LCD-Bildschirmes?

Ein Liquid Crystal Display kontrolliert die Menge des durchgelassenen Lichtes durch die Polarisation von Flüssigkristallen.
Farben können ohne die Hintergrundbeleuchtung nicht dargestellt werden. Für die unterschiedliche Polarisation sind lange orga nische Moleküle
zuständig, die mithilfe eines elektrischen Feldes oder mithilfe von Wärme ausgerichtet werden können.

Wie aus der Skizze zu entnehmen, tritt das Licht durch den ersten Polarisator in den mit Flüssigkeitskristallen gefüllten Rau m über. Dort wird es um
90 Grad gedreht, falls die Flüssigkeitskristalle mit Spannung angeregt wurden. Erst, wenn das Licht um 90 Grad gedreht wurde, kann es die Kammer
über den zweiten um 90 Grad gedrehten Polarisationsfilter verlassen. Sind die Flüssigkeitskristalle nicht durch Spannung ange regt, tritt kein Licht
aus. Bei LCD-Bildschirmen kommen unterschiedliche Farbschemen, die Variationen von RGB sind (RGBW, RGBG, RGB Delta Triade) bzw. durch 3
farbige Subpixel.
Die Hintergrundbeleuchtung ist mithilfe eines Rasters aus weißen LEDs verwirklicht.

• Beschreiben Sie die Funktionsweise eines OLED-Bildschirmes? Wie wird die Darstellung eines Farbbildes auf einem OLED -Bildschirm erreicht?
• Beschreiben Sie die wesentlichen Komponenten des OLED-Bildschirmes?
• Was sind die Unterschiede zwischen OLED und LCD?

OLED bedeutet Organic Light Emitting Diod. Solche Bildschirme sind sehr teuer (meist im Smartphone -Bereich eingesetzt). Das Display funktioniert
mithilfe von organischen Verbindungen zwischen den Elektroden, welche selbstleuchtend sind. Dabei kommen für unterschiedliche Farben
unterschiedliche Elemente zum Einsatz, wobei die Helligkeit über die zugeführte Spannung geregelt wird.
Auch Krümmungen der Bildschirme sind möglich.

Der große Unterschied zwischen OLED und LCD ist, dass OLED selbstleuchtend ist und deshalb im Gegensatz zu LCD über keine
Hintergrundbeleuchtung verfügt. Weiters ist OLED in der Lage die besseren Schwarzwerte zu liefen, da einzelne Pixel über die Spannung angesteuert
werden .

Eine kostengünstigere Variante zum OLED ist der Mikro-LED-Bildschirm, bei dem der Hintergrund mit winzigen LEDs ausgeleuchtet wird.

• Beschreiben Sie die Funktionsweise eines Plasma-Monitors.


• Was sind die wesentlichen Unterschiede zu einem -Monitor?
Plasma Bildschirme werden meist für größere sehr helle Displays benutzt. Es wird ein Glühgas benutzt. Dieses ist in Gaskammer n umschlossen und
wird mithilfe von Elektroden zum Leuchten gebracht. Farben werden mithilfe einer Phosphorschicht erzeugt. Die Helligkeit wird über temporal
dissering bzw. Schnelles Ein-und Ausschalten geregelt. Dabei ist die Einschaltfrequenz sehr viel höher als die Abbildungsrate. Dabei die Ein und
Ausschaltraten betragen bis zu 1000 HZ während die Bildrate meist bei 60 Hz liegt

• Beschreiben Sie die Funktionsweise von einem CRT-Monitor. Was sind die wesentlichen Komponenten?
Cathode Ray Tube Bildschirme haben ein ähnliches Prinzip wie Vektorbildschirme. Der Bildschirm besitzt beim CRT -Monitor eine fluoreszierende
Schicht aus Phosphor. Diese wird mithilfe eines Elektronenstrahles erregt, welcher magnetisch abgelenkt wird, wodurch man qua si mit einem Strahl
auf der Bildoberfläche Farbreize erzeugen kann. Phosphor leuchtet nach, somit bleibt eine kurze Leuchtspur bestehen. Untersch iedliche
Phosphortypen wurden für Farbe verwendet. Farbdarstellung in RGB wurde somit realisiert. Die Ablenkung durch den Magneten kan n beliebig
gesteuert werden, indem das Magnetfeld verändert wird, kann auch der Elektronenstrahl gezielt gelenkt werden.

○ Diese Technologie wurde für Vektorbildschirme verwendet.


○ Nur eine Umrissdarstellung war möglich.

In Rasterbildschirmen war der Elektronenstrahl dann schnell genug, um zeilenweise den gesamten Bildschirm abtasten zu können. Auch eine
Farbdarstellung ist somit realisierbar. Die Rasterauflösung führt den Term Pixel = Picture Element ein.

Projektoren:

• Beschreiben Sie die Funktionsweise eines LCD-Projektors.


Seite 11/31

Computergrafik Vo Seite 11
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
• Beschreiben Sie die Funktionsweise eines LCD-Projektors.
• Wie kann mit LCD ein Farbbild projiziert werden?
Im Wesentlichen besteht der LCD-Projektor aus drei LCD-Panels, wobei eines davon von einer Lichtquelle angeleuchtet wird. Dies führt zu einer
Aufspaltung des Lichtes. Dieses wird mithilfe von Spiegeln auf ein Prisma umgeleitet, in dem sich 3 LCD Chips befinden, die d ie Lichtpunkte
verstärken oder abschwächen. Über eine Linsenoptik wird dann ein Bild in den Raum geworfen, trifft auf eine Bildwand auf und erzeugt dort dann
eine Abbildung.

• Beschreiben Sie die Funktionsweise eines DLP-Projektors. Wie kann mit DLP ein Farbbild projiziert werden?
DLP = Digital Light Processing diese werden vor allem für leistungsstarke Projektoren verwendet.
Ein DLP-Projektor nutzt einen Chip, der auf der Oberfläche kleine Spiegel besitzt. Diese kleinen Spiegel können magnetisch ein - und ausgeschaltet
werden (programmierbar). Man wirft ein starkes Licht auf diesen Chip. Von diesen parallelen Lichtstrahlen werden einige zur L insenoptik
weiterbefördert und der Rest zur Seite abgestrahlt. Somit kann pro Bildpunkt das Licht ein -und ausgeschaltet werden. Der Ein-
Ausschaltmechanismus arbeitet sehr schnell (bis zu 1000-Mal pro Sekunde). Um Farbe zu erzeugen kommen dieselben Mechanismen wie beim LCD -
Projektor zum Einsatz. Es werden entweder ein Farbrad oder 3 DLP-Chips verwendet, die über eine Prismenoptik kombiniert werden.

Vorteile:
○ Besserer Schwarzpegel als die LCD-Projektoren (abgelenktes Licht kommt nicht mehr durch die Linse auf die Bildleinwand => bessere
Schwarzwerte als bei LCD, wo es immer ein Residuallicht gibt, also ein Teil des Lichts tritt immer durch. Der Flüssigkeitskristall kann dieses
abgestrahlte Licht nicht durchlassen, wodurch ein schwarz eher zu einem dunklen Grau wird. )

Dreiecksnetzrepräsentationen:

• Listen Sie drei Dreiecksnetzrepräsentationen auf.


• Welche dieser Repräsentationen würden Sie wählen, wenn sie auf dem Dreiecksnetz einen Weg zwischen zwei gegebenen Faces finde n müssten?
• Begründen Sie ihre Wahl!
• Vergleichen Sie die drei Dreiecksnetzrepräsentationen in Bezug auf Speicherverbrauch?
• Welche dieser Repräsentationen würden sie wählen, um ein zusammenhängendes Dreiecksnetz in einer Datei speichern zu können, w enn die
Dateigröße möglichst klein gehalten werden sollte?
• Nennen Sie jeweils ein Beispiel in welchem Bereich genau sie die unterschiedlichen Repräsentationen wählen würden.

Gängige Dreiecksnetzrepräsentationen:
○ Unabhängige Dreiecke => (Triangle Soup) Sammelsurium aus Dreiecken
○ Indiziertes Dreiecksset => Vertices die miteinander referenziert sind
○ Triangle Strip und Triangle Fan => Kompressionsschemas für Grafikhardware
○ Datenstrukturen mit Nacharschaftsinfos => Ermöglicht effiziente Nachbarschaftsabfragen
○ Winged-Edge => Effiziente Abfrage und Speicherung

Weg zwischen zwei Faces finden:


Um einen Weg zwischen zwei Faces finden zu können, würde ich die Datenstruktur mit Nachbarschaftsinformationen verwenden, da dort jedes
Dreieck die Referenz zu seinen drei Nachbardreiecken enthält, was die Suche erheblich erleichtert und vor allem beschleunigt. Ein effizientes
Durchlaufen des Dreiecksnetzes ist damit ermöglicht.

Vergleich im Bezug auf den Speicherverbrauch:


○ Triangle soup: 72 Bytes pro Dreiecksnetz-Vertex sowie zusätzliche Speicherverschwendung, da jeder Vertex 6 mal vorkommt.
○ Indiziertes Dreiecksset: 36 Bytes pro Vertex wobei Topologie und Geometrie separat abgespeichert werden.
○ Triangle Strips/Triangle Fan: 20 Bytes pro Vertex
○ Nachbarschaftsstruktur: 64 Bytes pro Vertex

Speichern eines zusammenhängenden Dreieck-Netzes in eines Datei bei möglichst kleiner Dateigröße:
Ich würde die Triangle Strips verwenden.
Dabei werden die Eigenschaften des Dreiecks verwendet, um den Speicheraufwand zu minimieren:

○ Jedes Dreieck liegt normalerweise an seinem Vorgänger an


○ Jeder neue Vertex generiert somit auch ein neues Dreieck, wobei der zweite und dritte Vertex aus dem Vorgängerdreieck benutzt wird.
○ Jede Sequenz von drei Vertices erzeugt ein neues Dreieck:
○ [0,1,2,3,4,5,6,7] =>(0,1,2); (2,1,3); (2,3,4); (4,3,5); (4,5,6); (6,5,7);

○ Für lange Triangle Strips muss somit nur ein Index pro Dreieck gespeichert werden.
○ Man hat somit ein Array von Vertex Positionen (12 Bytes pro
Vertex) sowie ein Array von Indexlisten, insgesamt benötigt man im bestmöglichen Fall nur
mehr 20 Bytes pro Vertex, ist fast nur mehr ein Viertel des Verbrauchs von unabhängigen
Dreiecken und fast die Hälfte besser als das indizierte Dreiecksset. Bei einem Triangle Fan
kommt die gleiche Idee ins Spiel, jedoch wird hier der Älteste anstatt des Neuesten verwendet.

Beispiel zur Verwendung der Repräsentationen in unterschiedlichen Bereichen:


▪ Indiziertes Dreiecksset => am weitesten verbreitete Repräsentation (meist dort verwendet, wo nicht nach dem Nachbarn gesucht wird)
▪ Nachbarschaftsstruktur => Designertool
▪ Triangle Strip/Fan => Archivierung, wenn es darauf kommt die gesamte Information zu speichern und trotzdem einen geringen
Speicherverbrauch zu haben, Komprimierung von Daten, evtl. (unsicher) auch als Computerspiel, da schnell in der Darstellung

Seite 12/31

Computergrafik Vo Seite 12
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

▪ Triangle Soup => Sehr ineffizient heute größtenteils nicht mehr in Verwendung

• Gegeben ist ein Array A an Vertex Positionen als eine unabhängige Liste an Dreiecken ("Triangle Soup) in 2D, konvertieren Sie diese
Repräsentationen in ein indiziertes Dreiecksset:

Ein indiziertes Dreiecksset hat zwei Datenstrukturen, die Vertices (Punkte) und die Triangles (Dreiecke). Zuerst wird somit die Vertices Struktur
erstellt diese lautet wie folgt:

Die passende Triangles Struktur dazu lautet:

• Gegeben seien ein Dreieck durch die Position seiner drei Eckpunkte(Vertices) Beschreiben Sie einen Algorithmus
zur Rasterisierung des Dreiecks? Geben Sie die notwendigen Schritte pro Dreieckskante, pro Scanline und pro
Pixel an?

Dazu würde man den Scanline Algorithmus verwenden. Dieser wandert entlang der Y-Achse das Polygon ab und
sortiert die auftretenden Eckpunkte. Anschließend wird für jede Pixelzeile horizontal in die X-Richtung
durchgegangen.
Für jede Kante wird eine Liste erzeugt, in der die Start-und Endpunkte jeder Scanline abgespeichert werden.
Für jede Scanline werden die zwischen Start-und Endpunkte liegenden Pixel aufgefüllt.
Wichtig sind die Eckpunkte. Der Algorithmus nutzt Kohärenz i.A.

Wichtig: Zuerst werden die Eckpunkte sortiert !!! Zumindest beim Dreieck (besteht aus Flat, Top, Bottom)

Die Start und End-Pixel der obersten beiden Kanten sind bereits markiert.

Es werden die Pixel ausgewählt, die eine Scanline bilden, welche noch mit Pixel auszufüllen sind.

Seite 13/31

Computergrafik Vo Seite 13
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Die Scanline füllt die inneren Pixel (orange) auf.

Dabei geht sie von links nach rechts vor. (Anzahl der zu füllenden Pixel ist in der Start-End-Liste abgespeichert.)

Die Scanlines werden durchgegangen und wieder jeweils von Start bis Ende gefüllt. Links wird ein Eckpunkt erreicht und somit
eine neue Kante von Scans benötigt.

Wieder werden die Pixelwerte aufgefüllt, bis die Linie geteilt werden muss. Erneut werden die Die Start- und Endpunkte gesucht.

Nun Sind jeweils zwei Intervalle aufzufüllen. Nun wird von links nach rechts aufgefüllt bis zum letzten Eckpunkt.
Dieser Algorithmus ist effizient wenn man mit wenig Parallelität oder sequentiell arbeiten möcht

Dreieck:

Achtung auch hier werden zuerst die Eckpunkte sortiert!!!!

Alternative:
Paralleles Füllen
Seite 14/31

Computergrafik Vo Seite 14
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
Paralleles Füllen

Über verwandeln der Geradengleichungen der Kanten des Polygons in Ungleichungen, können die Bereiche im Polygon und außerhalb beschrieben werden (Unterteilung in Halbräume).

Alle Kanten >0 liegen innerhalb des Polygons.

Alles was nicht im Bereich der roten Halbebenen liegt, muss in der grünen Ebene liegen und ist damit Teil des Polygons.

Dies wird auf Pixelebene übersetzt folgendermaßen ausgeführt:


Man überprüft für jede Pixel, ob es innerhalb aller Kanten liegt:
Durch eine Miminum und Maximum-Suche über alle Kanten des Polygons bekommt man die Bounding Box

Nach Betrachten der ersten kante können alle Pixel, die nicht innerhalb des Polygons liegen entfernt werden:

Nacheinander werden so alle Pixel außerhalb des Polygons entfernt:

Die Punkte die Überbleiben sind jene, die innerhalb des Polygons liegen:

Um den Bereich einzugrenzen in dem das Polygon generell liegt nutzt man die Warnock Subdivision:

Seite 15/31

Computergrafik Vo Seite 15
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Diese teilt die Subdivisions ein:

Rote Bereiche können direkt verworfen werden, grüne liegen innerhalb des Polygons.
Nur in den Blauen Bereichen müssen somit die Pixelweisen Kantentests ausgeführt werden.

Wenn nun eine Linie durch den Mittelpunkt geht, wird der Algorithmus in C befolgt:

Z-Buffer/Depth Buffer:
• Was ist ein Z-Buffer und wofür wird er eingesetzt?
• Welche Probleme können bei der Verwendung eines Z-Buffers auftreten und welche Parameter könnte man anpassen, um diese vielleicht in den Griff zu bekommen?
Der Z-Buffer ist speicheraufwendig, aber die schnellste Methode um das Depth-Problem zu lösen. Er arbeitet Pixelparallel.
Die Darstellung basiert auf Pixel, deshalb löst der Z-Buffer die Tiefenabhängigkeiten pro Pixel. Alle Probleme die sich pro Pixel darstellen sind gut beschleunigbar.
○ Lösen der Tiefenabhängigkeiten pro Pixel => eigentlich Painter`s Algorithmus pro Pixel wird ausgeführt. Mit Online Tiefensortierung. Ergebnisse müssen nicht
zwischengespeichert werden, da man nur am nächsten Objekt interessiert ist, das am nächsten zur Kamera liegt.
○ Das Objekt am nächste zur Kamera wird herausgesucht, während die anderen restlichen Objekte nicht mehr von Interesse sind. Somit wird nur Speicher für das jeweils am nahe
liebendste Objekt benötigt.
○ Wenn man alle Objekte durchgearbeitet hat und immer den am nächsten zur Kamer liegenden Punkt davon behalten hat, ist man fertig.

○ Das Zeichnen der Objekte kann nun also in beliebiger Reihenfolge passieren.
▪ Man speichert pro Pixel die Tiefe des am nächsten bei der Kamera liegenden Objektes ab.
▪ Ist ein Pixel eines folgenden Objektes näher zur Kamera als bisher, so wird einfach der alte Pixelwert überschrieben, sowie d er Pixelfarbwert überschrieben und die Tiefe
aktualisiert.
▪ Ist der Pixel des neuen betrachteten Objektes weiter entfernt von der Kamera, so wird dieser Pixelwert des neuen Objektes ign oriert und jener des davor behandelten
Objektes, am nächsten zur Kamera liegender Pixel beibehalten.
▪ Als Ergebnis wird somit pro Pixel das Objekt mit der kleinsten Tiefe (am nächsten zur Kamera) bestimmt.
○ Der Kostenaufwand ist ein Buffer in der Bildschirmgröße, in dem diese Tiefenwerte abgespeichert werden.

Probleme des Z-Buffers:


Ein Z-Buffer hat eine begrenzte Genauigkeit von nur 24 bit, diese wird in einen Near und einen Far Bereich aufgeteilt. Diese werden über die Parameter zf und zn beschrieben. Je nach
Wahl der beiden Parameter können unterschiedliche Konstellationen entstehen. Bei zu geringer Auflösung etwa kann es zwischen Objekten mit ungefähr denselben Tiefenwerten zu
Problemen kommen. Das sogenannte Z-Fighting ist der Fall (eine Form von Aliasing).

Z-Fighting kann in zwei Situationen entstehen: Sichtbar durch Flackern


○ Bei Zeichnen von Flächen mit gleicher Tiefe:

○ Das blaue Objekt wird nicht sauber dargestellt


○ Lösung: Verwendung eines Z-Offsets.

○ Bei unzureichender Auflösung im Z-Buffer:


○ Dafür gibt es keine allgemein gültige Lösung.
○ Die Parameter zf und zn können versucht werden auf die Situation anzupassen.
○ Es können mehr Bits verwendet werden, womit der Speicherverbrauch steigt und die Geschwindigkeit sinkt.
○ Es kann ein alternatives Mappinverfahren genutzt werden, dafür benötigt man aber Wissen über die Szene.

• Erklären Sie und vergleichen sie den Z-Buffer mit der Depth Sorting Methode/Painters Algorithm:
Painters Algorithm:
Die Objekte werden eines nach dem anderen von hinten nach vorne gezeichnet. Die Tiefenabhängigkeit wird als gerichteter Graph beschrieben:

Seite 16/31

Computergrafik Vo Seite 16
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Ist der gerichtete Graph ist schleifenfrei und somit kann die Darstellung von hinten nach vorne dem Graphen ent
lang verwirklicht werden.

Mit Zyklen kann der Painters Algorithmus nur sehr schlecht umgehen, deshalb müssen hier die Objekte wenn sie sich überlappen einzeln analysiert und "Zerschnitten" werden, bevor
mit der Darstellung begonnen werden kann.
Die ist langsam und aufwendig, weswegen der Painter`s Algorithmus nicht mehr in Verwendung ist.

Transformationsmatrizen berechnen:

Seite 17/31

Computergrafik Vo Seite 17
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Inverse von M=T*S berechnen (Zahlenwerte von M gegeben)

Seite 18/31

Computergrafik Vo Seite 18
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 19/31

Computergrafik Vo Seite 19
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 20/31

Computergrafik Vo Seite 20
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 21/31

Computergrafik Vo Seite 21
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Seite 22/31

Computergrafik Vo Seite 22
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Constructive Solid Geometry:

• Was versteht man in der Computergrafik unter Constructive Solid Geometry?


• Nennen Sie zwei grundlegende Operatoren dieser anhand von 2D Primitiva ihrer Wahl (Skizze)?
• Was sind die Vor-und Nachteile gegenüber anderen Repräsentationen von Objekten?

Es handelt sich hierbei um eine Implizite Darstellung eines Volumensmodells. Es werden Mengenoperationen auf geometrische Gru ndkörper angewandt.
Objekte werden als Konstruktionsvorschrift ausgeführt (Baum). In den Blättern des Baumes befinden sich simple Grundkörper wie Quader, Kugel und Zylinder.
Diese können unterschiedliche Farben und Bemaßungen besitzen. In der Zwischenebene wird über Boolsche Operatoren die Schnittm enge gebildet.

Nun werden der Baum, die geometrischen Zwischenkörper und deren Attribute sowie die Boolschen Operatoren ( Vereinigung und Differenz) zwischengespeichert.

Vorteil: exakte Repräsentation über einfache Körper mit geringen Speicherbedarf


Nachteil: hoher Aufwand der Darstellung und limitierte Körper Darstellung möglich

Dies funktiuoniert mit sehr geringem Speicherbedarf.

Ray Casting vs Rasterisierung:

Raytracing und Rasterisierung erklären


Was bestimmt jeweils den Aufwand des Verfahrens?
Wo wird welches Verfahren verwendet?

Rasterisierung:
• Berechnet ein Dreieck nach dem anderen.
• Rendert 2D-Bilder aus 3D Szenen mittels Scanline-Algorithmus.
• Bestimmt werden Objekte nacheinander über Dreiecke mit ihren Vertices. Es werden die Vektoren der aufgespannten Dreiecke berechnet. => Scaline, Tiefenbuffer, Clipping usw.
• Nutzung: verarbeitetet, projizierte und transformierte Geometrie wird mit Beleuchtungsinformationen versehen. Zu den Koordinaten der Pixelwerte werden auch die
Tiefeninformationen gespeichert. Durch die Rasterisierung wird die Farbe der einzelnen Pixel bestimmt. Ziel der Rasterisierung ist es die Bedeckung der Pixel innerhalb der Geometrie
sowie die Shading Informationen zur Farbgebung zu verarbeiten und in 2D darzustellen. Es werden also Vektorbilder zu Rasterbildern verarbeitet. Häufiger verwendet da einfacher.
• Sichtbarkeitsproblem: Tiefenproblem wird über Depth Buffer gelöst, der Tiefeninformationen speichert.

Seite 23/31

Computergrafik Vo Seite 23
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Ray Tracing:
Für jeden Bildpunkt wird ein Strahl in die virtuelle Szene geschossen (durch den Pixelmittelpunkt) und der Schnittpunkt mit d em nächsten Szenenobjekt berechnet. Der Strahl hat seinen
Ursprung dabei in der Kamera. Das Aussehen des Objektes wird berechnet, sowie dessen Farbe im Pixel hinterlegt. Auch Reflexio nen und Schattierung usw. werden bestimmt
Ein Strahl wird so nach dem anderen verarbeitet, bis die gesamte Szene abgearbeitet ist.
Sichbarkeitsproblem: Bei mehreren Objekten wird der Schnittpunkt genutzt, der am nächsten zur Kamera liegt

Regular Grid, Octree und Bounding Volume Hierarchy:


• Vergleichen Sie die Datenstruktur Regular Grid, Octree und Bounding Volume Hierarchy,
• wenn man sie jeweils dafür einsetzen möchte Objekte in einer großen virtuellen Welt zu verwalten.
• Beziehen Sie sich auf die Komplexität der Struktur, sowie auf die Effizient basiernd auf unterschiedlichen Verteilungen von Objekten.
Seite 24/31

Computergrafik Vo Seite 24
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021
• Beziehen Sie sich auf die Komplexität der Struktur, sowie auf die Effizient basiernd auf unterschiedlichen Verteilungen von Objekten.

Hier handelt es sich um Raumaufteilungsmethoden bzw. Spatial Subdivision.


• Regular Grid:

○ Ein regelmäßiges Raumgitter mit Zellen wird eingeführt.


○ In jeder Zelle speichere ich eine Liste der in der Zelle befindlichen Objekte.
○ Das ermöglicht eine Schnelle Abfrage in einer bestimmten Zelle.
○ Vorteile: Sehr einfach und direkt adressierbar.
○ Nachteile: Nur dann effizient, wenn die Anzahl der Objekte pro Zelle beschränkt bleibt
○ Feinere Zellen bedeutet mehr Zellen sind insgesamt zu speichern…
○ Große Zellen sind nicht effizient, da viele Objekte drinnen
○ Deshalb =>hierarchische Unterteilung des Raumes z.B. Quadtree
• Octree:
○ 3d-Analogon zum Quadtree
○ Hierarchisch rekursive Unterteilung eines Würfels in 8 Quadranten
○ Es wird nur dort unterteilt wo Information mit einem hohen Detailgrad vorliegt.

Um etwa die grüne Struktur zu beschreiben sind nur zwei Knoten notwendig, da nur der Oktant 6 weiter unterteilt wird. Nach Ab arbeiten mit der Tiefensuche erhält man eine rekursive
Liste.
• Vorteile: gut handzuhaben, einfach kombinierbar, schnelle Darstellung sowie eine räumliche Suche sind möglich.
• Nachteile: Ungenaue Repräsentation, niedrige Bildqualität, Hoher Speicherverbrauch. Werden deshalb für Raumverzeichnisse genutzt.

Bounding Volume Hierachy siehe Constructive Solid Geometry

Aliasing und Artefakte:

• Was bedeutet Aliasing in der Computergrafik

• Nennen Sie zwei Typen von Aliasing Artefakten in der Computergrafik (Skizze) sowie zwei weitere Arten von Antialiasing und beschreiben Sie diese:
• Geben Sie zwei Beispiele von Problemen die durch Aliasing entstehen können?

• Welche Lösungsansätze gibt es um Aliasingartefakte zu reduzieren?

• Nennen Sie zwei störende Aliasing Phänomene beim Sampling von Rasterbildern und skizzieren Sie diese. Geben Sie dabei ein zeitliches (sichtbar über mehrere Frames) und ein
räumliches (sichtbar über mehrere Pixel) Phänomen an
• Beschreiben Sie jeweils eine Möglichkeit um dieses Phänomen zu unterdrücken.

• Erklären Sie die Probleme, die bei der Verwendung von "ein Pixel breiten Linien" auftritt, wenn eine korrekte Intensitäswiedergabe gefordert ist. Welche Lösungsmöglichkeiten gibt
es, bitte verdeutlichen Sie in einer Skizze?

Aliasing in der Computergrafik:


Es gibt zwei Typen von Aliasing die auftreten:
• Pre-Aliasing beim Sampling => hohe Frequenzen könne nicht wiedergegeben werden da eine Maximalfrequenz festgelegt wird
• Post-Aliasing bei der Rekonstruktion => kein perfekter Rekonstruktionsfilter = endlicher Tiefpassfilter ; Stücke vom Nachbarsignal werden mitgenommen

Aliasing beschreibt das Problem, dass falsche niedrige Frequenzen auftreten durch Abtast und Rekonstruktionsprobleme!!

Aliasing-Artefakte in der Computergrafik beschreibt einen Treppenstufeneffekt.


Objekte, die nicht aus rein horizontalen oder vertikalen Teilbereichen bestehen (Diagornalen, Kurven, Ellipsen usw.) werden a uf Rastern zur Rasterbilddarstellung verpixelt oder
kantig/verunstaltet dargestellt. Um diese Fehler zu beseitigen wird eine Kantenglättung= Anti Aliasing vorgenommen.

Typen von Aliasing Artefakten:


• Verunstaltete Objekte aufgrund zu geringen Samples

Seite 25/31

Computergrafik Vo Seite 25
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

• Worming Effekt aufgrund zu geringe Bildschirmauflösung

• Das gezeugte Objekt wird über die Zeit dicker und dünner
• Wagon Wheeling aufgrund zu geringer FPS (Räder bewegen sich scheinbar rückwärts)

• Color Banding aufrund zu geringer Farbraumtiefe => Farbränder sind sichtbar und störend (hier im Farbraum von nur 16 Farben)

• Moire Pattern Oberflächenmuster die mit zusätzlichen Schlieren und störenden Mustern versehen werden

Zeitliches und Räumliches Aliasing Phänomen sowie Lösungsansatz:


• Wagon Wheeling aufgrund zu geringer FPS (Räder bewegen sich scheinbar rückwärts)

• Kann gelöst werden, indem die Frequenz erhöht wird

• Worming Effekt aufgrund zu geringe Bildschirmauflösung

• Kann gelöst werden, indem die Auflösung erhöht wird

Anti Aliasing Methoden:


• Höhere Auflösung verwenden bei Displays, um Kanten für menschliches Auge nicht sichtbar zu machen => aber kein guter Lösungsansatz da fixes Wiedergaberaster bleibt.

• Supersampling => verbessertes Sampling während der Rekonstruktion


• Die Grundidee ist es die Auflösung zu erhöhen, indem man mehrere Samples pro Pixel nutzt und einen Rekonstruktionsfilter, um diese zu gewichten. Dazu verwendet man Box-Filter
oder Gauss-Filter. Ist Äquivalent zu Rendering mit höherer Auflösung und dann Downsampling .
• Dies könnte wie folgt ablaufen:

Seite 26/31

Computergrafik Vo Seite 26
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021


=> Sichtbar weniger Aliasing, weichere Kantenübergänge

• Coverage Sampling: Störendes Aliasing an Bereichsgrenzen entfernen durch berechnen des Überdeckungsgrades pro Pixel.

• Multi-Sampling: Super Sampling nur an den Kanten von Polygonen.


• Kombination aus:
○ Coverage Sample
○ Depth Sample
○ Color Sample
• Meiste Samples bei der Coverage Sample

• Filtering => Nach der Rasterisierung als Post Prozess

• Jittering: Verrutschen der Pixelwerte in X-Und Y-Richtung liefert zwar auch verrauschtes Bild aber weniger störend.

• Erklären Sie das Problem, das bei der Verwendung von „ein Pixel breiten" Linien auftritt,
wenn eine korrekte Intensitätswiedergabe gefordert ist. Welche Lösungsmöglichkeiten gibt
es für dieses Problem? Bitte verdeutlichen Sie Ihre Antwort anhand einer Skizze!

Hierbei handelt es sich um ein Aliasing Problem nämlich führt die Verwendung von unterschiedlich langen Linien bei gleicher A nzahl an Pixel zu unterschiedlichen Intensitäten.
Z.B beim Zeichnen diagonaler Linien

Es muss somit coverage sampling für Linien betrieben werden. Die Linie wird in ein Rechteck verwandelt, sodass man in der Diagornale zur Darstellung der Linie mehr als nur 3 Pixel zur Verfügung hat:

Rasterbilder vs. Vektorbilder:

Seite 27/31

Computergrafik Vo Seite 27
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Transformationspipeline:
• Skizzieren Sie die Transformations-Pipeline ausgehend von einem Punkt an einem 3-D Modell bis hin zum endgültigen Punkt auf der Bildebene.
• Wofür wird die Projection Matrix verwendet?
• Was ist der Unterschied zwischen einer orthographischen Projektion und einer perspektivischen Projektion?
• Wie kann die Kameratransformation V mit gegebener Kameraposition pcamera, Lookat-Point plookat und Up-Vektor vup berechnet werden?
• Geben Sie notwendige Zwischenergebnisse an.

Transformations-Pipeline:

Projection Matrix:

Orthographische vs Perspektivische Projektion:


Orthogonale Projektion:
Wurde vor der perspektivischen Projektion genutzt. Ist einfacher um Objekte zu rekonstruieren. Geometrisch hintereinanderliegende Punkte liehen auch in der Ansicht hintereinander. Gleich großer Körper
erscheinen gleich groß.
Perspektivische Projektion:
Weiter entfernte Dinge erscheinen kleiner, heute genutzte Projektion. Rechenaufwendiger

Berechnung der Kameratransformation:

W => Richtung vom Augpunkt zum Zielpunkt (pcamera-plookat)


Vup x W projiziert den Up-Vektor in die Bildebene

Gamma Kodierung:

• Wie funktioniert Gammakodierung und was ist das Konzept dahinter?


• Wo wird die Gammadekodierung normalerweise durchgeführt?

Zunächst ist wichtig zu bedenken, dass sich die Farbwahrnehmung logarithmisch verhält.
Deshalb liegt beim Menschen eine höhere Lichtempfindlichkeit in dunkleren Bereichen vorliegt.

Ziel ist, dass die Intensitätsabstufungen der Grauwerte, die ein Bildschirm zeigt linear den Zahlenwerten entspricht.
Um dies zu erreichen werden mehr Bits auf den niedrigen Intensitäten verwendet, da dort der Mensch ja selbst feiner Helligkei tsunterschiede wahrnehmen kann.

• Dafür werden die Farben mit einer Gammafunktion versehen:

• Ist Gamma z.B.=1/3 , so erfolgt eine Dekodierung mit 3.

Seite 28/31

Computergrafik Vo Seite 28
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Hat man Gammakodierung (Bilddaten) die einer logarithmischen Kurve folgen und eine Dekodierung (Anzeigegerät), das einer Expo nentialfunktion folgt, erhält man eine lineare Abstufung.

Die Gammadekodierung wird vom Anzeigegerät durchgeführt.

Backface Culling:
• Was ist Backface Culling, was möchte man mit Backface Culling betreiben?
• Bei Oberflächenmodellen ist das Innere der Objekte nie sichtbar
• Deshalb => Nur jene Bereiche zeichnen, die zur Kamera zeigen
• Implementierung nach Test mit Oberflächennormale n und Viewingvektor v.
• Dadurch können 45% der geometrischen Primitive eliminiert werden.

Wie im Bild zu sehen zeigt der Viewingvektor zur Kamera und die Oberflächennormale steht senkrecht zur Primitive.

• Nun wird das Dot-Produkt der beiden zuerst normalisierten Vektoren ausgeführt.
• Ist dieses größer als 0, so wird das Ganze gezeichnet. Ansonsten wird es nicht gezeichnet, da es nach hinten zeigt.
• Generell als Faustregel zeigt alles was einen Winkel kleiner 90° zwischen v und n hat nach vorne und wird gezeichnet.

Oberflächen von Quadraten in CG:

Cohen-Sutherland-Clipping-Algorithmus:
Cohen-Sutherland Linienclipping anhand des gegebenen Beispiels Schritt für Schritt erklären.

Seite 29/31

Computergrafik Vo Seite 29
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

Vorderseite/Rückseite eines Objektes/depth:

• Bei vielen Algorithmen in der Computergrafik ist eine Unterscheidung zwischen der
„Vorder und Rückseite" eines Dreiecks notwendig.
• Wie kann der Oberflächennormalvektor
eines Dreiecks genutzt werden, um diese Unterscheidung mathematisch zu formulieren.?

• Mit welcher Methode kann man für einen gegebenen Punkt p feststellen, auf welcher Seite
eines ebenfalls gegebenen Dreiecks T er sich befindet?

Die Bestimmung der Vordern und Rückseite kann mithilfe von der Winding order oder dem Umlaufsinn eines Dreieckes bestimmt wer den.
• Die Kantenvektoren ergeben immer einen geschlossenen Polygonzug
• Die Vorderseite liegt immer links von den Kantenvektoren.
• Die Vorderseite ist dort, wo die Vertices im Uhrzeigersinn erscheinen.
• Der Normalvektor ist das Kreuzprodukt zweier Kantenvektoren
Fazit: Rehenfolge der Vertices bestimmt die Ausrichtung des Polygons

Berechnung Über die Euler-Regel ist ebenfalls möglich.

Bezit-Kurven vs. B-Spline-Kurven:

• Vergleich zwischen Bezier Kurven und B-Spline Kurven in Hinsicht auf Einfluss der Kontrollpunkte auf der Kurve. Welche Konsequenzen hat die Eigenschaft in der Praxis?
De Bezier-Kurven:
Nachteil: Jeder Punkt hat Auswirkung auf den gesamten Graphen.
Durch die Definition der Bernstein-Polynome wird jeder Punkt beachtet (siehe Formel unten).
Somit ergibt sich auch bei kleiner Punktänderung ein großer Aufwand zur neuen Darstellung.
Die Bezier-Kurven sind eine Sonderform der B-Splines.

B-Spline-Kurven:
Bei B_spline-Kurven kann angegeben werden, wie viele Kontrollpunkte der Umgebung betrachtet werden. Die Summe der Bernstein Polynome ergib t 1.

Fazit: Die Bezier-Kurven sind zwar aufwändiger in der Berechnung falls sich ein Punkt ändert, aber generell öfter verwendet, da sie besser bere chenbar sind.

• Berechnung eines Spline über die Bezier-Kurven

Um eine Spline berechnen zu können, muss zunächst die Spline-Approxximation erfolgen:

Seite 30/31

Computergrafik Vo Seite 30
egiraffe.htugraz.at - Computergrafik 1 - VU

Prüfungsfragenausarbeitung SS2021

P beschreibt dabei die Punkte und B sind die Bernstein Polynome.


Die Bernstein Polynome können wir folgt berechnet werden:

Hier ein Beispiel für eine kubische Kurve:

Radiometric vs. Geometric Resolution:

Was ist der Unterschied zwischen Geometric und Radiometric Resolution?


• Geometric Resolution: Beschreibt wie viele Pixel pro Bild vorhanden sind, beschreibt die Auflösung eines Bildes.
• Radiometric Resolution: Beschreibt die Farbtiefe (16 bit/8 bit…) eines Bildes oder Fähigkeit zur Erkennung von Energieunterschieden eines Sensors.

Seite 31/31

Computergrafik Vo Seite 31

Das könnte Ihnen auch gefallen