05.08.2013 Aufrufe

Proseminar Computergrafik: Retained Mode: Open Inventor, VRML ...

Proseminar Computergrafik: Retained Mode: Open Inventor, VRML ...

Proseminar Computergrafik: Retained Mode: Open Inventor, VRML ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

1.2 Szenegraph<br />

<strong>Open</strong> GL funktioniert auf dem Prinzip einer Zustandsmaschine, infolgedessen können<br />

Transformationen und Attribute nur eine Zustand einnehmen. Diese Eigenschaft hat der <strong>Open</strong><br />

<strong>Inventor</strong> geerbt und das beeinflusst die Abarbeitung des Szenegraphen.<br />

Der Szenegraph ist ein azyklischer, gerichteter Graph, in dem eine 3D-Szene gespeichert wird. Er ermöglicht<br />

es die Position und die Orientierung von 3D-Objekten zueinander festzulegen. Die Struktur<br />

eines solchen Graphen entspricht der eines Baumes, wobei die Knoten des Baumes die Elemente der<br />

3D-Szene sind. Sämtliche Bestandteile einer Szene sind in den Knoten festgehalten. Neben den 3D-<br />

Objekten werden auch Transformation, Licht, Kamera und Attribute (Textur ,Farbe ,...) in Knotenform<br />

eingefügt. In der folgenden Abbildung ist ein einfacher Beispielgraph dargestellt.<br />

Abbildung 2 Beispiel für Szenegraph des <strong>Open</strong> <strong>Inventor</strong><br />

Der Szenegraph wird zeilenweise und von links nach rechts durchlaufen, wobei jeder Knoten seine<br />

Nachfolger beeinflusst. Im Beispielgraph wird von der Wurzel ausgehend die Betrachterposition und<br />

die Beleuchtung des Autos bestimmt. Dann werden Farbe und Position festgelegt, die sich auf den<br />

Knoten mit der geometrischen Beschreibung der Karosserie auswirken. Ein weiterer Knoten ändert<br />

dann das Attribut Farbe für seine nachfolgenden Knoten, d.h. das Rad wird schwarz und erscheint<br />

bedingt durch die Transformationsknoten an vier verschiedenen Positionen.<br />

Beim durchlaufen (auch traversieren) der einzelnen Knoten wird ein Zustand („traversal state“) mitgeführt.<br />

Dieser entspricht bildlich gesprochen einem Lesekopf, der den Baum durchläuft und ihn in<br />

<strong>Open</strong> GL-Anweisungen übersetzt, welche dann vom System weiter verarbeitet werden und schließlich<br />

auf dem Bildschirm in Form der 3D-Szene erscheinen.<br />

02

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!