X3D Flashcards
1
Q
Herausforderungen 3D Computergrafik
A
- Technisch:
-> Effizienz der 3D Anwendungen
-> Portabilität - Weitere:
-> Nahtlose Integration von 3D Grafik in bestehenden Anwendungen
-> Vereinfachungen und Vereinheitlichungen der Entwicklungsarbeit
2
Q
Benötigte Informationen für das Rendering einer 3D Szene (Szenengraphen)
A
- Objekt-Geometrie
- Transformationen (z.B. Positionierung)
- Materialien
- Kameras
- Lichter
- Spezial-Effekte
- Komplexe Beziehungen zwischen Daten einer Szene
-> Verschiedene Objekte verwenden das gleiche Material
-> Das gleiche Objekt wird an mehreren Orten instanziiert
-> Transformationshierarchie, Gruppieren von Objekten
3
Q
Szenengraph Merkmale
A
- Ist ein gerichteter, azyklischer Graph
-> gerichtet: Jede Kante hat eine Richtung
-> azyklisch: Es gibt keine Zyklen im Graph
-> Zusätzlich: Szenengraph hat einen Wurzelknoten
-> Unterschied zu Bäumen: Mehrere Elternknoten möglich
4
Q
Szenengraph Traversierung
A
- Durchlaufen des Szenengraphs zum Rendering
-> Anwendung startet an der Wurzel
-> Jeder Kindknoten wird rekursiv abgearbeitet - Wenn der gesamte Graph traversiert wurde, ist das Bild fertig
- Konkrete Operationen während der Traversieren hängen vom Typ des jeweiligen Knotens ab
- Während der Traversieren: Update verschiedener Zustände
5
Q
Vorteile des Szenengraph Konzeptes
A
- Wiederverwendbarkeit der Objektdaten
- Semantische Gruppierung der Objektdaten
- Transformationshierarchie ermöglicht, Transformationen von kompletten Gruppen ohne diese explizit ändern zu müssen
6
Q
X3DOM
A
- X3DOM: Dekorative Szenengraph-API auf Basis von X3D in DOM
-> Deklarativ: Szenengraph wird durch strukturiertes Textformat beschrieben
-> X3D: Szenengraph Standard: XML-basiert
-> DOM: HTML Document Object Model
7
Q
Aufbau X3DOM
A
- Deklaration des X3D Kontext
- Definition der eigentlichen Szeneninhalte
8
Q
Szenengraph API am Beispiel X3DOM
A
- Shape: definiert zeichenbares Objekt (Shape = Appearance plus Geometry)
- Appearance: “Erscheinungsbild” eines Objektes (enthält Informationen über Materialfarbe, Texturen)
- Material: Definiert Materialeigenschaften gem. Phong Modell
- Box: Spezieller Geometry Knoten
9
Q
Szenengraphen-API Transformationen
A
- Transform-Knoten
-> erlaubt Translation, Rotation, Skalierung und Scherung
-> Schachteln von Transformationen-Knoten erlaubt Aufbau einer Transformationshierarchie
10
Q
X3DOM Realisierung mittels HTML
A
- Probleme:
-> HTML-Elemente haben immer nur ein einziges Elternelement
-> HTML DOM ist ein Baum, kein Graph - Lösung:
-> X3D definiert DEF/USE-Mechanismus
–> Definition eines Knotens mittels DEF und Wiederverwendung mit USE
11
Q
HTML group mit DEF
A
<group>
</group>
12
Q
HTML Objekt hinzufügen
A
<shape>
--<appearance>
----<material ...> </material>
--</appearance>
--<cylinder></cylinder>
</shape>
13
Q
HTML Transformationen
A
<transform>
--<transform>
----<group></group>
--</transform>
</transform>
14
Q
HTML material properties
A
ambientIntensity
diffuseColor
emissiveColor
shininess
specularColor
transparency