3d Flashcards
Was ist ein Polygon?
Ein Polygon ist eine Area geformt durch mindestens 3 Vertices (ein Dreieck).
Es ist häufig auch eine Approximation einer Oberfläche.
Was ist Modellierung?
Im Grunde ist ein 3d Model eine Menge von punkte (die wir Vertices nennen) die definieren die Shape/Geometrie eines Objekts, und die werden zusammengebunden um Polygone zu machen.
Bei Modellierung wird davon ausgegangen, dass wir von 3d Modellierung sprechen
Ein Model beschreibt das Verfahren durch dem man Objekte gestaltet / die Form eines Objektes gestaltet
Was sind die 2 Gängigste Quellen für 3D Modelle?
Manuel (von einem Künstler oder Ingenieur per Hand) gemacht.
&
Eingescannte Modelle.
Was wird modelliert?
Die Oberfläche. Und wo die Oberfläche ist (und wo sie auch nicht ist) spricht Geometrie/Topologie
Wir wollen ein Repräsentations-System, welches einen funktionalen Isomorphismus mit Oberfläche, Beziehungen und Operationen in der realen Welt hat.
Wo werden 3D Modelle benutzt? / Wo kann man Computerbilder benutzen?
Überall
Wo wird 3D Modellierung geforscht?
Alle Ecken: Geometrie (wie man repräsentiert, was ein repräsentationales System ist), Korrespondenz (wie weiß ich das 2 Objekte ähnlich sind), volume editing, Akquirierung (einscannen/Visualisierung), 3D Darstellungen/printing, usw…
Was ist der Unterschied zwischen Repräsentationen und ein Repräsentationales System?
Eine Repräsentation ist eine Abbildung zwischen Entitäten/Einheiten in einem System (z.B. die Welt) und Entitäten/Einheiten in einem anderen System (z.B. Mathematik).
Ein Repräsentationales System hat nicht nur Entitäten. Es hat Operatoren und Beziehungen. Ein Beispiel davon ist Funktionale Isomorphismus.
Was ist Funktionale Isomorphismus?
Alle Entitäten und Operationen eines Systems haben eine 1 zu 1 Abbildung auf ein anderes System.
Geometrie und Algebra sind ein typisches Beispiel, da alles was man in einem System machen kann, kann man auch in einem anderen mache. Bzw., alle Entitäten und alle Operationen kann man gleich abbilden. Das ist ein Beispiel von ein Repräsentationales System.
Durch die Abbildung von geometrischen Entitäten (Linien, Punkte) auf kartesische Koordinaten, kann man eine algebraische Repräsentation bekommen. Dadurch kann man die Beziehungen und Operationen in einem System in den anderen repräsentieren.
Was sind die 3 klassische Operationen die man in Modellierung durchführen kann? Was unterscheidet sie?
Evaluation = Abtastung der Oberfläche oder Oberflächeneigenschaften (e.g., Normal). Da wo ich ein Punk habe, frage ich was der Wert an dem Punkt ist
Abfragen = Berechnung von Werten zwischen Punkten. Z.B. Liegt ein Punkt innerhalb eines Polygons? Wie weit entfernt sind 2 Punkte? Zwischen Punkte muss man interpolieren – was ist zwischen den Punkten, und was kann ich zwischen bekannte Punkte tun?
Änderung = Geometrische Änderungen (Deformation, Verschiebung, Drehung) oder sogar auch topologische Änderungen (z.B. Löcher einbauen)
Was sind die verschiedenen Arten von Repräsentationen?
Explizit bz. Implizit, und Parametrisch
So oder so wird es schwierig sein eine Gleichung zu haben für das gesamte Objekt. Deswegen in der Regel können wir das tun aber die Gleichung wird so unglaublich komplex, sodass es schwierig wird handzuhaben. Kompromiss = einfache parametrische Gleichung, und dann stecken wir (wie eine Patch/Quillt) mehrere davon zusammen sodass wir ein gesamtes Objekt haben
Was ist eine Explizite Repräsentation (Explizite Darstellung von Flächen oder Kurven)?
Ein Polygon ist durch eine Funktion beschrieben (z.B. y=f(x) oder y = mx+b).
It is a formula that has been solved for one variable in terms of the other.
Probleme/Nachteile:
- Für ein x darf es nur ein y-Wert geben (ein Kreis ist daher nicht geschlossen darstellbar)
- Beschreibung nicht invariant gegenüber Rotationen
- Keine Kurven oder Flächen mit echte vertikalen Tangenten möglich
Was ist eine Implizite Repräsentation (Implizite Darstellung von Flächen oder Kurven)?
Jedes Polygon ist durch eine (implizite) Funktion beschrieben. Die Oberfläche ist dort, wo die Funktion einen Wert von Null hat (z.B. f(x,y) = 0 oder x2 + y2 -1 = 0).
A formula with all the variables on one side is called implicit.
Vorteile:
- Alle negativen Werte liegen innerhalb der Oberfläche (und positive Werte außerhalb). Gut für geometrische Abfragen und evtl. auch geometrische Änderungen
- Solang die Funktion kontinuierlich ist, hat die Oberfläche keine Löcher (Implementierung als Gitterstruktur kann aber Löcher haben)
- Die Oberfläche kann sich selbst nicht durchschneiden
Probleme/Nachteile:
- Gleichung kann mehr Lösungen als gewollt haben
- Richtung der Tangenten ist schwer zu ermitteln
- Nicht einfach darzustellen
- Nicht einfach zu parametrisieren (texturieren ist schwierig)
- Kurven: Funktioniert nur für Planar Curves (wo alle Punkte auf einer Ebene liegen, eine “Manifold Curve”)
Was ist eine Parametrische Repräsentation (Parametrische Darstellung von Flächen oder Kurven)?
Jedes Polygon ist durch eine Funktion mit ein oder mehr Parametern beschriebe (z.B. x = x(t) oder Q(t) = (t2 , t3 , −t) ).
Kurven: Abbildung von einem eindimensionalen Parameter zu einem zweidimensionalen Raum
Oberflächen: Abbildung von zwei Parametern (jeweils eindimensional) zu einem dreidimensionalen Raum
Unlike an implicit representation of a surface, a parametric representation allows us to directly generate points on the surface. A parametric equation defines a group of quantities as functions of one or more independent variables called parameters.
Vorteile:
- Keine Mehrdeutigkeiten
- Invariant gegenüber Rotationen
- Geometrische Steigung (potenziell unendlich) werden durch Tangentenvektoren (niemals unendlich) ersetzt
- 3D Problem auf 2D Problem reduziert
- Einfach Punkte zu erzeugen, die auf Oberlfäche sind
Probleme/Nachteile:
- Nicht einfach eine Parametrisierung zu erzeugen
- Topologische oder auch geometrische Änderungen konnten eine neue Parametrisierung nötig machen
Was ist der Unterschied zwischen Skalenniveau und Skalar?
Skalenniveau bezieht sich auf Nominalskala, Ordinalskala, und Intervallskala. Es definiert was für Daten wir haben. n der Regel wird mit Intervallskala gearbeitet.
Skalar ist eine Reelle Zahl (Intervallskala)
Was für Skalenniveaus gibt es, und was ist der Unterschied zwischen denen?
Nominalskala = Geht um Identifikation (z.B. Namen)
Ordinalskala = Geht um die Reihenfolge, aka Rangordnung (erste Platz, zweiter Platz, usw.)
Intervallskala = Geht um reelle Zahlen im Prinzip. Hat Rangordnung und definierter Abstand (z.B. 1.75 cm, 2.05 cm)
Was ist ein Vektor? Und was ist ein Einheitsvektor?
Ein Vektor hat eine Richtung und ein Betrag. Vektoren sind der Kern von Computer Graphik.
Ein Einheitsvektor ist ein normierter Vektor, oder ein Vektor mit der Länge (Betrag) Eins. (|v| = 1)
Einheitsvektor = Vector with no relevant Betrag/magnitude, just has a magnitude of 1. Normal vectors are einheitsvekotr. Einheitsvektor also called Normal vector or unit-vector.
The surface Normal is a surface Einheitsvekotr. Its oriented straight up.
Was für Koordinatensysteme gibt es?
Kartesische Koordinatensysteme, Zylinder Koordinatensysteme, und Sphärische/Kugel Koordinatensysteme
Was ist ein Kartesisches Koordinatensystem?
Es basiert auf 3 oder mehr Einheitsvektoren die alle orthogonal zu einander sind. Es gibt die Richtungen (z.B. x ist eine Richtung), wodurch der Betrag von x eigentlich ein Vektor ist (jeder Punkt in einem Kartesischen System ist ein Vektor –> es entscheidet von einem Ursprungspunkt wie man laufen muss um an dem anderen Punk anzukommen).
Wenn man 3 Werte (x,y,z) hat, dann sind es einfach Beträge entlang die Richtungen x, y, & z.
Was bedeutet Orthogonal?
Of or involving right angles; at right angles. // von oder mit rechten Winkeln
Was ist Topologie?
Topology is concerned with the properties of a geometric object that are preserved under continuous deformations, such as stretching, twisting, crumpling and bending, but not tearing or gluing.
Was sind Gitter? Was für Gittersorten gibt es?
Topologie beschreibt die Nchbarschaft von Zellen, Geometrie beschreibt die Position von der Oberflächt.
Berücksichtigt nicht die Position der Gitterpunkte, ist d.h. unabhängig von Verzerrungen.
A grid is a structure (2D or 3D) made up of a series of intersecting straight (vertical, horizontal, and angular) or curved lines (grid lines) used to structure content.
Gittersorten:
- Regelmäßige Gitter (aka regular grid) {Kartesisches Gitter ist Beispiel}
- Blockstrukturierte Gitter (aka block grid) {Uniforme Gitter ist Beispeil?}
- Strukturierte Gitter {Beispiele: Kartesische Gitter (im Spezial Fall), Uniforme Gitter, Nichtuniforme Gitter, Curvilinieare Gitter}
- Unstrukturierte/Irreguläre Gitter {Hybride Gitter sind eine Spezialform}
- Hybride Gitter
Was sind Regelmäßige Gitter (regular grids)?
Gitter die achsenparallele Gitterlinien haben. Der Abstand von benachbarten parallelen Gitterlinien ist konstant.
Beispiel: Kartesisches Gitter
Was sind Blockstrukturiertes Gitter (block grid)?
Gitter die achsenparallele Gitterlinien mit unterschiedlichen Abständen habe.
Beispiel: Uniforme Gitter??
Was sind Strukturierte Gitter (structured grids / curvilinear grids)?
Gitter die beliebige Gitterlinein haben. Die Koordinaten eines Gitterpunktes auf einer Gitterlinie sind analytisch gegeben. Sind die Gitterlinien als Kurven in Parameterform gegeben, sprechen wir auch von “Curvilinearen Gitter.”
Beispiele: Kartesische Gitter (aka äquidistante Gitter) im Spezialfall, Uniforme Gitter, Nichtuniforme Gitter (aka rectilineare Gitter)
Was ist ein Unregelmäßiges/Unstrukturiertes/Irreguläres Gitter (unstructured/irregular grid)?
Gitter die durch beliebige Gitterlinien mit beliebigem Abstand definiert sind. Das Heißt, sowohl die Koordinaten als auch der Verbund der Gitterpunkte muss explizit gegeben sein.
Beispiel: Hybride Gitter sind eine Spezialform
Was ist ein Hybrides Gitter?
Ein Gitter, dass sich aus unterschiedlichen Gittertypen zusamensetzt.
Was sind die Vor- und Nachteile eines Strukturierten Gitters?
Vorteile:
- Sichtbarkeitssortierung ist fest (da Konvex)
- Einfache, kompakte Handhabung durch implizite Adressierung
Nachteile:
- Lokale Gitterverfeinerung schwierig/nicht möglich
- Abbildung auf komplexe Strukturen nicht immer möglich
Was sind die Vor- und Nachteile eines Unstrukturierten Gitters?
Vorteile:
- Lokale Verfeinerung gut möglich
- Gute Adaption an unregelmäßige Datenräume
- Wohldefinierte Interpolation innerhalb der Zellen (variierende Zelltypen, variierende Zellgrößen)
Nachteile:
- Aufwendig in der Speicherung und Auswertung
- Repräsentation durch explizite Speicherung von Nachbarschaftsbeziehungen
Was ist der Unterschied zwischen Beleuchtungsmodelle und Shadingmodelle? Welche Rolle spielt Phong dabei?
Beleuchtungsmodelle (illumanion models) beschreiben die Faktoren, die die Farbe eines Objekts an einem Punkt bestimmen.
Shadingmodelle (shading models) beschreiben, wann und wie ein Beleuchtungsmodell angewendet wird – und erfüllen häufig (auch) den Zweck der visuellen Glättung von Polygonnetzen.
Shadingmodelle basieren also auf die Faktoren, die durch die Beleuchtungsmodelle beschrieben werden.
Das Phong-Beleuchtungsmodell gibt dir die Faktoren, der Phong-Shader beschreibt wie diese angewandt werden.
Was sind die Eigenschaften von Lichtquellen?
Eine Lichtquelle hat 2 Eigenschaften: eine Position und eine Richtung
Richtungslicht (directional light) hat eine definierte Richtung aber unendliche Position, Punkquelle (piont light source) hat eine definierte Position aber keine konkrete Richtung, Spot Light (distributed light source) hat eine definierte Position und Richtung aber auch noch eine cut-off Angle dazu.
Was sind die Beleuchtungsmodelle von Lokale Beleuchtung?
Die 3 Beleuchtungsmodelle sind Ambient (Hintergrundlicht), Diffuse (Lambertsche Reflektion), und Specular (glänzende Flächen).
Was ist Ambient Beleuchtung?
Es ist ein einfaches Beleuchtungsmodell. Es hat keine wirkliche Tiefe (depth) und sieht daher flach aus. Es ist Konstant für ein Objekt.
Die Beleuchtungsintensität (I) ist unabhängig von einfallender Beleuchtung und Beobachtungsrichtung.
Physikalische Erklärung = Ambientes Licht als Sammelterm für Beiträge von Reflexion durch diverse Flächen im Raum.
Gleichung: I = I_a k_a
Intensity for a given pixel or image is defined by the ambient Intensity. K is constant, that determines how a specific object reacts to that light intensity.
Was ist Diffuse Beleuchtung?
Bei Diffuse Beleuchtung wird Licht gleichmäßig in alle Richtungen reflektiert. Die Helligkeit ist abhängig vom Winkel θ zwischen Vektor L zur Lichtquelle und Oberflächennormalvektor N.
Großes θ -> flacher Lichteinfall -> kleinere Lichtmenge pro Flächeneinheit -> geringere Intensität der diffusen Reflektion. Kleiners θ = direktere Beleuchtung.
Muss in Weltkoordinaten durchgeführt werden, denn bei der Transformation in den Bildraum wird der Winkel θ verändert.
Gleichung: I = I_l k_d cos θ (außer L&N sind normalisiert, dann I = I_l k_d (N*L) )
Was ist Specular Reflection/Beleuchtung?
Specular Refection/Beleuchtung ist abhängig vom Betrachter-Standpunkt. Dabei haben specular “highlights” die Farbe der Lichtquelle.
Bei perfekten Speigeln wird Licht nur in die Reflektionsrichtung R abgestrahlt.
Gleichung: I = I_l k_s (R*L)^n
Involves where is the light, what is the surface orientation, and where is the viewer. Those 3 HAVE to be involved, although the final formula we use can vary quite a bit.
Was ist die allgemeine Gleichung für Beleuchtung?
I_λ = O_dλ I_aλ k_a + f_att I_lλ (O_dλ k_d (NL) + k_sλ O_sλ (RH)^n)
Diffuse und Specular haben eine gemeinsame Lichtquelle und Attenuation Factor (f att).
Diese Gleichung ist der Grund von Beleuchtung an sich -> man hat ein Punkt den man schieben, drehen, skalieren kann, und den muss man beleuchten. Dafür braucht man die 3 Transformationen.
Die Verschiedene Variablen bedueten:
- I = Beleuchtungsintensität
- λ = stellt einfach einen Punkt auf der Oberfläche dar (hat mit wavelength / distribution of wavelength at a given piont zu tun)
- O = Farbmodifikator der Oberfläche (wie Oberfläche zu Farbe reagiert)
- k = Beleuchtungskonstante (wie stark geht Ambient/Diffuse/Specular)
- f att = Attenuation Factor (makes intensity of light smaller, since light gets weaker with distance)
- N = Oberflächennormale
- L = Richtung der Beleuchtung / Lichtquelle
- R = Reflektionsrichtung
- H = Blinn-Phong-Komponente, bzw. Halbvektor der beinhaltet die Normalisierung des Licht-Vektors und des Viewing-Vektors (Halb-Vektor, der L und V beinhaltet)
- n = Exponent, der bestimmt, wie breit der Specular Highlight ist
- m = die unterschiedlichen Lichtquellen, die man haben könnte
Was ist Shading / was wird beim Shading berechnet?
Shading berechnet die Farbe zwischen Punkten.
Evaluation: Was ist die Farbe eines Punkts? Abfrage: Was passiert zwischen die Punkte?
Was für Möglichkeiten gibt es, die Intensität eine Oberfläche eines Polygons zu rechnen? Was sind deren Unterschiede?
Flat Shading (aka Constant Shading)
- Wir berechnen es für einen Punkt, und das gesamte Polygon bekommt das von dem einen Punkt. Dies sieht aber meistens schlecht aus (Glattunsproblem).
- Wird benutzt wenn Lichtquellen im Unendlichen, Betrachter im Unendlichen, und/oder Polygon repräsentiert die wirkliche Objektoberfläche.
Gourad Shading
- 3 Eckpunkte werden definiert, und wir interpolieren dann die Intensität entlang der Kante & Scanline
- Probleme: Specular Highlights wachsen oder verschwinden. Rand immer noch eckig.
Phong Shading
- Normalen werden interpoliert und werden dann für jeden Punkt den uns angeht dirket berechnet (Interpolation der Normalvektoren dann berechnen wir die Intensitätswerde – Shading für jeden Pixel berechnet).
- We calculate the normal at every given point and then do a full lighitng calculation there.
- Sehr aufwendig, aber beste Qualität (Ränder können aber trotzdem noch eckig sein)
Was ist die Grundidee von Radiosity?
Radiosity behandelt jeden Punkt in der Szene (also eine neue Lichtquelle).
Grundprinzip: Gleichgewicht zwischen zugeführter Strahlungsenergie von Lichtquellen und absorbierter Strahlungsenergie durch alle Oberflächen.
30% des Lichts in einer Szene stammen nicht unmittelbar von einer Lichtquelle, sondern von Spieglung auf Objektoberflächen.
Radiosity is the “radiant flux per unit area” that is leaving a surface. It describes the physical process of light distribution in a diffuse reflecting environment where every object acts as a secondary light source.
Was ist ein Clipping Fenster? Was ist ein Viewport?
Clipping Window = was aus der Welt mich interessiert
Viewport = Dieses Element (vom Clipping Window) schneiden wir raus und das wird irgendwo anders dargestellt (im Viewport dargestellt)
Was ist ein Viewing Frustrum?
Viewing Frustrum ist ein 3d Clipping Fenster. Idee ist genau das gleiche wie ein Clipping Fenster aber halt für 3d statt 2d.
Was ist Texturierung?
In der Regel erlaubt Texturierung uns die Feinheiten darzustellen ohne jeden einzelnen Punkt zu repräsentieren. Wenn wir alle Punkte repräsentieren wollen würden, bräuchten wir viel zu viel Speicherkapazität, deswegen benutzen wir eher Textur.
Spart Zait, aber sieht nicht immer schön aus.
Beispiel: Anti-Aliasing
Was ist Anti-Aliasing?
Aliasing sind visuelle Artefakte, die dadurch entstehen, dass viele Texel auf einen Pixel abgebildet werden können (blurrs things further away from viewpoint)