MuMS:Fragenkatalog3

Aus Tudwiki
Version vom 10. Februar 2007, 14:47 Uhr von 91.64.186.75 (Diskussion)

(Unterschied) Nächstältere Version→ | Aktuelle Version (Unterschied) | ←Nächstjüngere Version (Unterschied)
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

3. 3D-Graphikformate: Modellierung, Animation, Interaktion[Bearbeiten]

3.1. Welche Indizien der dritten Dimension kann man unterscheiden? Folien 5, 6[Bearbeiten]

Der Mensch bzw. das Auge orientiert sich an bestimmten Dingen um festzustellen, ob eine dritte Dimension vorliegt. Mit den Ausgabesystemen versucht man nun möglichst viele davon nachzubilden um das Auge möglichst perfekt zu täuschen:

Direkte (binokulare) stereoskopische Indizien
Disparität: Unterschiedliche Teilbilder für beide Augen
Konvergenz: Winkelstellung beider Augen in Bezug zur Raumtiefe
Akkomodation: Schärfeeinstellung der Augen in Bezug zur Raumtiefe

Zur Zeit kann nur die Holographie alle drei Indizien erschließen, Stereographie nur teilweise

Indirekte (monokulare) statische Indizien
Perspektive
Kontur-/Kantenbildung
Linear-Perspektive
Textur-Perspektive
Größen-Perspektive

Licht
Objektbedeckung / Objektverdeckung
Schattierung
Schattenwurf
Intensitätsgradient (depth cueing)
Indirekte (monokulare) dynamische Indizien
Bewegungs-Parallaxe (der Körper gegeneinander)
Be-/Verdeckungswechsel (durch Bewegung)
Relatives Größenwachstum (looming) der Körper zueinander
Bewegungs-Verwischung/Unschärfe (motion blur)
(aus der Lernumgebung übernommen, da es schon sehr gut formuliert ist)

3.2. Nennen Sie grundlegende Methoden zur Repräsentation dreidimensionaler Objekte. Wo liegen die Vor- und Nachteile der verschiedenen Verfahren? Folien 7 bis 16[Bearbeiten]

Polygonale Repräsentation Bei diesem Verfahren wird die Oberfläche eines Objektes durch Polygon Netze beschrieben, welches aus einer Menge von Vertex-Punkten, Kanten und planaren Polygonen besteht. (Jede Kante kann durch max. zwei Polygone geteilt werden.)

Vorteile: Es lassen sich sehr leicht beliebige Objekte der Computergrafik modelieren. Ein Polygon kann für sich alleine behandelt werden (Rendern etc..) Man kann sehr einfach z.B. Texturen auf mehrere Polygone anwenden.

Nachteil Für realistische Darstellung von Körpern bräucht man eine viel zu hohe Anzahl von Polygonen - insbesondere für gekrümmte Flächen


Bikubische Parameteroberflächen Hier wird die Oberfläche mit mathematischen Funktionen beschrieben, welches ein Netz aus gekrümmten Flächen beschreibt. Erst beim Rendern werden dann die Berechnungen in ein Polygonnetz umgewandelt.

Dieses Verfahren ist besonders für exakte Darstellung von runden Flächen geeignet. Zwar ist die Berechnung zuerst Aufwendiger als mit Polynomen, aber dafür bekommt man auch eine wesentlich höhere Genauigkeit.

Durch die folgenden Verfahren werden Bikubische Paramterflächen verwendet

  • Bézier Patches: Beginnen und enden an den Eckpunkten, haben jedoch keine guten lokalen Kontrollmöglichkeiten, da sich beim Verändern eines Kontrollpunktes die ganze Oberfläche mit ändert. Außerdem nur begrenzte Kontinuität.
  • B-splines: Definition einer Kurve über einzelne, stückweise Kurvensegmente. Beide Bézier-Nachteile sind überwunden. Die B-Spline-Kurven gehen jedoch durch keinen der Kontrollpunkte, sind aber nicht weit davon entfernt.
  • NURBS (non-uniform rational B-splines): Rationale Polynomfunktion mit nicht notwendigerweise äquidistanten Kontrollpunkten, die sich sehr gut zur

Kurven- und Flächenmodellierung eignen. NURBS sind invariant gegenüber affinen und perspektivischen Transformationen. Das bedeutet, daß diese Transformationen nur auf die Kontrollpunkte, nicht aber auf die ganze Kurve angewendet werden müssen. Große Flexibilität beim Manipulieren von Objekten allein durch Veränderung der Kontrollpunkte (gute lokale Kontrolle, da jeder Kontrollpunkt gewichtet ist) NURBS benötigen für die Definition von einfachen Körpern sehr viel Speicherplatz, z.B. Repräsentation eines Kreises. Die traditionelle Form (Radius, Zentrum, Normalenvektor) benötigt 7 Zahlen, während NURBS 38 verwenden.

3.3. Was sind die beiden Hauptformen polygonaler Repräsentation? Aus welchen Bestandteilen besteht ein Polygonnetz und wie können diese gespeichert werden? Folie 8[Bearbeiten]

Es gibt Triangle Strips und Quadrilateral Meshes. Das Polygonnetz besteht aus Vertex-Punkten, Kanten, daraus werden planare Polygone gebildet (pro Kante max. 2 Polygone) Speicherung als Punktlisten, evt. mit Speicherung von gemeinsamen Kanten in Tabellen


3.4. Welche Möglichkeiten wurden entwickelt, um Objekte mit realistischen Oberflächen darzustellen? Nennen Sie wesentliche Mapping-Verfahren. Folien 17, 18[Bearbeiten]

Realistische Oberflächen werden oft durch die folgenden Modelle dargestellt:

  • Partikelsysteme und andere auf physikalischen Gesetzen basierende Modelle (wobei Reibung, Gravitation, Luftwiderstand und andere Kräfte berücksichtigt werden).
  • Implizite Oberflächen (Metaballs, Blobbies, Soft Objects): Modellierung mit Hilfe von Feldfunktionen, wobei die Oberfläche als Isooberfläche eines skalaren 3D-Feldes bestimmter Stärke definiert wird. Objekte sind dabei immer abgerundet.
  • Prozedurale Modelle: z.B. bei Fraktalen, um natürliche Pflanzen u.ähnliches nachzubilden. 3D L-Systeme (Lindenmayer) sind dazu geeignet, wobei eine Reihe von einfachen Regeln iterativ angewendet wird und realistischere Variationen in Form von Zufallsparametern erzielt werden können.

Beim sogenannten Texturing übertragt man Materialeigenschaften auf z.B. ein Polygon.

Texture Mapping: Hier werden zweidimensionale Muster auf eine Fläche projekziert, wie z:b. Tapete. Gewünschte Muster kann man z.B. einscannen und dann durch das Animationsprogramm in eine Textur umwandeln lassen.

Environment-Mapping Hierbei werden optische Effekte simuliert (Reflektion, Schatten), wobei hier nicht die aufwendigen Lichtverteilugnsrechnungen durchgführt werden.

Bump-Mapping Manipulation der Normalen durch übergelagerte Graustufen-Textur. Hiermit kann eine Oberflächen-Rauhigkeit simuliert werde ohne dabei die Geomtrie zu verändern.

Displacement-Mapping Manipulation der Fläche selbst durch Graustufen-Textur. Die Helligkeitswerte der Textur werden mit den Positionswerten der Objektoberflächen Multipliziert. Die Geometrie wird verändert, ein weitaus realistischerer Effekt als beim Bump-Mapping ist die Folge.

Procedural Mapping Im Gegensatz zu den anderen Verfahren werden hier keine bildlichen verwendet, sondern mathematische Beschreibungen. Die Berechnung der Oberfläche erfolge erst bei der eigentlichen Bilderzeugung. Hierdurch können unregelmäßige und zufallsabhängige Oberflächen- und Materialdarstellungen erzeugt werden (Marmor, Rinde, Holz...).

3.5. Beschreiben Sie die verschiedenen Verfahren zur Bildberechnung. Worin unterscheiden sich die projektiven Verfahren vom Raytracing? Welche zusätzlichen Möglichkeiten bietet das Radiosity-Verfahren? Folien 20 bis 23[Bearbeiten]

Bei Raytracing und Radiosity handelt es sich um globale Beleuchtungsmodelle, bei denen der Einfluß anderer Objekte ebenfalls berücksichtigt wird.

Alle anderen sind lokale Beleuchtungsmodelle, die nur die Wechselwirkung Objekt/Lichtquellen berücksichtigen. Flat und Gouraud Shading sind sehr einfache Modelle, während Lambert, Phong oder Blinn klassische BRDF's (Bidirectional Reflection Distribution Functions) Beleuchtungsmodelle sind.

Bei den projektiven Beleuchtungsmodellen wird nur die Lage der Objekte, nicht aber deren phsikalische Eigenschaften berücksichtigt.

Bei dem Radiosity-Verfahren bekommen die Objekte selber auch noch einmal eine "Energie" und Rendering Eigenschaften zugewiesen. Es wird nicht nur der ideale Lichtweg berechnet, sondern auch die diffusen Strahlungen mit einbezogen, die dann z.B. dazu führen, dass sich das Blau eines Tisches noch in der weißen Kugel auf dem Tisch spiegelt.

3.6. Erläutern Sie die Unterschiede von Austauschformaten und API s an selbstgewählten Beispielen. Folie 24 u.a.[Bearbeiten]

Austauschformate beruhen fast alle auf einer Szenenbeschreibungssprache (SDL). Diese beschreibt zumeist verschiedene Objektrepräsentationen und geometrische Primitive, Spezifikation von Normalen, Koordinatentransformationen, ,Texturbeschreibung, Texturkoordinaten, Gruppierungen und hierarchische Modelle und Instanzierungskonstrukte. Sie haben meist eine sehr einfach Syntax und sind sogar oft im ASCII-Format abgespeichert.


3D-APIs erlauben hingegen den Zugriff auf auf die Bestandteile einer Szene. Hier kann eine echte Interatkion stattfinden. Paramter wie Farbe und Form können zur Laufzeit verändert werden. Austauschformate wie VRML ermöglichen andererseits die Einbindung bzw. den Verweis auf Skripte.

Es gibt 5 Typen von 3D-Formaten

CAD/CAM/CAE - gut für die Objektmodellierung / einfacher Austausch zwischen Programmen / sehr genau

Modellierung / Animation Objekt- und vor allem auch Szenenmodellierung (Lichter, Kamera, Effekte?) / geringere Präzision / es können besser natürliche Phänomene nachgebildet werden / auch Austausch möglich

Echtzeitgrafik / VR (virtual reality) Hier ist auch eine Interaktion möglich / Echtzeitfähigkeit / auch Integration anderer Medien / neben Austauschformaten auch zahlreiche API's und 3D-Toolkits

Internet-basierte 3D-Grafik geringe Dateigrößen, Streaming-Eigenschaften / noch geringere Präzision / Austauschformate und Skriptsprachen

Bildbasierte Pseudo-3D-Formate kleine Dateigrößen, sehr realistische Szenen, da Foto-basiert / noch geringere Präzision / keine APIs, wenig Toolkits, noch Forschungsgegenstand


3.7. Beschreiben Sie Eigenschaften und Anwendungsfelder der vorgestellten Dateiformate entsprechend der vorgenommenen Klassifizierung. Folien 25, 26 u.a.[Bearbeiten]

habe ich schon in der Folie davor beantwortet


3.8. Nenne Sie wichtige Standard-CAD-Formate. Folien 27-30[Bearbeiten]

IGES, VDAIS, VDAFS, DXF, SET und STEP.

Drawing eXchange Format (DXF) wurde entwickelt um aus Auto-CAD Informationen für andere Quellen zu erzeugen. Inzwischen ist es ein de facto Standard für alle CAD-Programme zum Austausch von 2D und 3D Drahtgitter-Daten geworden.

Initial Graphics Exchange Specification (IGES) Ist seit 1981 ein ANIS-Standard. Als Textformat dient es primär dem Transfer zwischen CAD Programmen.

3.9. Welche zusätzlichen Anforderungen stellen VR-Systeme an 3D-Grafiksysteme und entsprechende Dateiformate? Folien 37, 38[Bearbeiten]

Echtzeitfähigkeit bei der Interpretation/Darstellung von 3D-Szenen

Neben der reinen Szenenmodellierung müssen auch Animationen, Simulationen und Interaktionen in Szenen integriert werden (was in der Regel Programmierung erfordert).


3.10. Erläutern Sie das generelle Konzept Szenengraph-basierter 3D-Grafik an einem Toolkit / Format Ihrer Wahl. Folien 39 bis 43, 53-62[Bearbeiten]

Ein Szenengraph ist ein gerichteter azyklischer Graph (also eine baumähnlichen, hierarchische Struktur), der aus Knoten besteht. Diese werden zur Laufzeit "traversiert" (durchlaufen). Hierbei werden die Informationen für das Rendern zusammengetragen bevor sie dann anschließenden in einer Grafik-Pipeline abgelegt werden. Ein Knoten kann immer nur auf die Knoten unter ihm zugreifen. Es gibt fünf verschiedene Arten von Knoten: Shape, Property, Group, Light, Camera.

Dadurch können Objekte in einer 3D-Szene besser gruppiert werden und generisch Eigenschaften vergeben werden. So ist es z.B. denkbar einen Knoten für z.B. (imaginäre) Holzgegenstände anzugeben und dann sämtliche Gegenstände die auch aus Holz sind, davon abzuleiten, so dass man die Struktureigenschaften (Textur, Beleuchtung...) des Holzes nur einmal verändern muss, damit alle anderen Holzegestände davon profitieren.

Der "Open Inventor" ist ein solches Toolkit. Er ermöglicht es plattformübergreifend Szenengraphen zu erstellen. Er basiert auf OpenGL und führt beim Rendern automatisch eine Optimierung durch. Weiter hat er eine C++ und C- Sprachschnittstelle. Er ist sehr allgemein und erweiterbar (sauber definierte und offene Klassenhierarchie). Er hat ein portables ASCII/Binär-3D-Austauschformat, Datei I/O Unterstützung

Nachteil: nicht für hohe Performance entwickelt, keine Multiprozessorunterstützung

3.11. Nennen Sie Probleme von Web3D-Grafik und mögliche Optimierungs- und Lösungsstrategien. Folie 46, 49[Bearbeiten]

Hauptprobleme sind die geringe Bandbreite, die für Übertragung zwischen Client und Server zu Verfügung steht. Hier ist aber vor allem durch die Verbreitung von schnellen Internetzugängen wie DSL, Modularisierung, Kompression und Streaming Verbesserung in Sicht.

Ein weiteres Problem ist die mangelnde Leistungsfähgikeit des Clients. Zwar unterstützen viele Grafikkarten inzwischen die 3D-Beschleunigung, aber meistens muss noch ein extra Programm installiert werden, welches auch wieder abschreckt. Eine andere Lösung könnten Applets sein, die aber wiederum (Java) sehr schlecht performt.

Die oberen zwei Probleme führen auch dazu, dass viel Zeit vergeht bist der Client dann endlich das 3D-Vergnügen hat.

Da dieser Bereich soviele Probleme aufwirft mangelt es auch an Standardisierungen von Autorenwerkzeugen, 3D-Format-, Viewer- und Metapherstandardisierungen.

3.12. Beschreiben Sie, was man unter Streaming im Zusammenhang mit 3D-Grafik versteht, und nennen Sie wichtige Streaming-fähige Web3D-Formate. Folien 52, 64- 69 u.a.[Bearbeiten]

In Bezug auf 3D-Web-Grafik gibt es mehrere Bedeutungen für den Begriff "Streaming":

Nachladen von Szenenbestandteilen am häufigsten verwendete Form des Streamings nach initialem Ladevorgang werden neu benötigte Daten für die Szene nachgeladen (z.B. Medienobjekte)

Progressiver komprimierter Geometriestrom Hier wird zuerst ein detailarmes LOD (Level of Detail) übertragen und dann sukzessive die Feinheiten nachgeladen - kann man sich vielleicht so ähnlich vorstellen, wie bei JPEG 2000 oder aber wie Mip-Mapping (bei 3D-Szenen), daher dass z.B. Gegenstände in weiterer Entfernung mit geringer aufgelösten Texturen versehen werden und dann erst bei Annäherung mit einer höher aufgelösten Textur versehen werden.

Audio-/Video-Streaming Durch einen Streamingserver bereitgestellte audio-visuelle Medienströme können in eine Szene integriert werden.

Zeitabhängige Updates der 3D-Szene Veränderungen der 3D-Szene bzw. eines Teiles daraus werden durch Ersetzung einer jeweils vollständigen, aktualisierten (Teil-) Szenenbeschreibung bewirkt. Diese Updates erfolgen meistens durch einen Server.

Streaming-fähige Web3D-Formate: MPEG-4, Shockwave, Viewpoint, Cult3D und Pulse

3.13. Welche wesentlichen Knotentypen gibt es in VRML zur Erstellung von interaktiven, animierten Szenen? Folie 54[Bearbeiten]

Folgende Knotentypen gibt es unter anderem:

Geometrische Primitive (Box, Cone, Cylinder, ElevationGrid, Extrusion, IndexedFaceSet, IndexedLineSet, PointSet, Sphere, Text)

Erscheinungsbild-Knoten (Appearance, Material, MovieTexture, DirectionalLight, PointLight, SpotLight,...)

Soundknoten (AudioClip, Sound...)

Gruppierungs- und Transformationsknoten (Transform, Switch, LOD)

Sensoren (ProximitySensor, Visibility Sensor, TouchSensor, CylinderSensor, PlaneSensor, SphereSensor, TimeSensor)

Interpolatoren (ColorInterpolator, CoordinateInterpolator, NormalInterpolator, OrientationInterpolator, PositionInterpolator, ScalarInterpolator)

(copy Lernumgebung)


3.14. Was versteht man unter ROUTES und wozu dienen sie? Folie 55 bis 57[Bearbeiten]

In VRML gibt es einen event- oder message-passing Mechanismus. Jeder Knoten definiert Namen und Typen von Ereignissen, die er generieren oder empfangen kann. Routes sind die Ereignispfade zwischen Sender und Empfänger und müssen separat definiert werden.


3.15. Worin unterscheiden sich VRML97 und X3D? Was ist die Motivation für die Weiterentwicklung des Web3D-Standards? Folie 59-61 u.a.[Bearbeiten]

VRML97 hat sein eigenes Textformat, während X3D auf XML basiert.

Die Motivation ist ganz einfach, dass man viel mehr Möglichkeiten mit XML hat - so hat XML einen definierten Aufbau und es gibt einen großen Markt an XML-Authoringtools. Außerdem kann XML viel leichter geparst werden.

Hier ein paar Ziele die mit X3D verwicklicht werden sollen/wurden:

  • Integration von bzw. Interoperabilität mit folgenden Standards und Formaten: XML, DOM, GIF, JPEG, PNG, WAV, MP3, MPEG, SYMM, RealPlayer
  • Plattformunabhängigkeit, "Write-once/Run-anywhere"
  • hohe Präzision bei numerischen Daten (für CAD/CAM Anwendungen oder GeoVRML)
  • Konsistenz, Verständlichkeit, Erweiterbarkeit und Objektorientierung
  • hohe Performance und Darstellungs-Qualität

    3.16. Warum eignet sich XML zur Beschreibung von 3D-Szenengraphen? Folien 59-61[Bearbeiten]

    Das XML Format kann sehr leicht editiert werden. Da es aber ein standardisiertes Format ist, steht die Struktur fest und kann deshalb sehr gut auch mit Textwerkzeugen verarbeitet werden. Sehr gut können dann auch andere XML-Grammatiken, im Bedarfsfall, integriert werden.


    3.17. Nennen Sie Hauptunterschiede zwischen VRML und Java3D. Folien 53, 63[Bearbeiten]

    • VRML ist ein Beschreibungsformat für 3D-Daten. Java3D ist ein API mit Klassen für die Manipulation/Darstellung von Szenengraphen.
    • Der Aufbau des Szenengraphs ähnelt sich, Java3D Trennung zwischen Content / View.
    • Die Java3D API hat kein eigenes Austauschformat, kann aber VRML laden.
    • Java3D ist plattformunabhängig, sofern Java vorhanden.

    (copy anatol)


    3.18. Nennen Sie Vorteile und Nachteile bildbasierter Rendering-Verfahren. Folie 73[Bearbeiten]

    Hier wird versucht Strukturen, die normalerweise z.B. durch Polygone beschrieben werden müssten, durch das Zusammensetzten von Bilder zu beschreiben. Aus den Einzelbildern werden dann Pseudo-3D-Modelle generiert.

    Vorteile: Viel schneller als echtes Rendering, scheinbar sehr hohe Auflösungen und Qualität möglich.

    Nachteile: Nicht gerade triviale Erstellung, so dass für eine gute Qualität viel Aufwand nötig ist. Benutzer kann sich nicht völlig frei in der 3D-Szene bewegen.

    Nur statisches Rendering möglich, daher es können nicht "on-the-fly" neue 3D-Objekte hinzukommen.