Christian Stein (Diplom Informatiker)

Ein konzeptioneller Vergleich der 3D-Graphik-Schnittstellen OpenGL, Java3D und VRML hinsichtlich ihrer Eignung für die Erstellung von Animationen

Diplomarbeitsunterlagen


Meine Diplomarbeit (als PDF-Datei 522 KB), sowie Anmerkungen zu ihr.
Meine Vortragsuntalagen (PowerPoint97-Datei 73 KB) und der Programmcode zu den Programmbeispielen (Zip-Datei 124 KB).
Um die Programmbeispiele von Java3D laufen zu lassen wird mindestens JDK 1.2 und Java3D benötigt. Die Dateien können von Sun herunter geladen werden. Um VRML-Welten anzuschauen ist in der Regel der Cosmoplayer das Richtige (PlugIn für Netscape und MS-InternetExplorer; ab Windows 3.1; Mac nur Beta-Version). Das frei verfügbare Octaga-Plugin ist unteranderem für den IE 6.0 geeignet.


Inhalt

 

Übersicht

Da es in meiner Diplomarbeit um Animationen mit VRML, Java3D und OpenGL geht, hier eine kurzer Übersicht über die Zusammenhänge:
OpenGL dient als Schnittstelle für den Programmierer um 3D-Welten zu erstellen, es ist 'der' Standard in seinem Bereich. Es ist als eine Art Bibliothek zu verstehen, die beim Programmieren mit eingebunden wird und auf dessen 3D-Funktionen zugegriffen wird (OpenGL ist nicht ObjektOrientiert).
VRML ist 'grob' gesagt das Gegenstück im Internet. Es ist eine Sprache, ähnlich zu HTML, die 3D-Welten beschreibt. Dabei ist der Funktionsumfang fast identisch mit dem von OpenGL. In seiner aktuellen Version ist in VRML auch die Möglichkeit von Animationen und Scripting vorgesehen, außerdem existiert einer Schnittstelle (das EAI; leider noch kein Standard) , so dass VRML von 'außen' gesteuert werden kann (diese Funktionalität wird vom Cosmoplayer schon unterstützt). In der Regel wird die (Script-)Sprache Java sein, da Java auch Platform- und Browserunabhängig ist. Aber auch JavaScript, bzw. VRML-Script (eine abgespeckte JavaScript-Version von VRML) sind gängig.
Java3D ist eine Klassenbibliothek von Java, die speziell für 3D-Welten konzipiert ist (Unterstützung erst ab Java 1.2).
Es werden alle 3 'Standards' auf den Siggraph-Konferenzen besprochen und dabei Änderungen diskutiert. Dies ist möglich, da VRML wie OpenGL, zwar jeweils von Silicon Graphics maßgeblich in die Welt gerufen wurden, aber jetzt jeweils in den Händen von einem Consortium liegen. Hingegen wird Java3D (noch) von einem 'kleinen' Zusammenschluss von Firmen erstellt. Es sind dies die Firmen: Sun, Silicon Graphics, Apple und Intel.
Die Leistungsumfänge von:

So wie ein Vergleich der drei APIs in Tabellenformat (grob, nicht vollständig) und eine Grafik, welche die Beziehung der Schnittstellen zu einander verdeutlicht.

 

HotLinks:


VRML-Logo
Das Logo ist von VRML-Consortium Incorporated.

Hier noch ein kleines Beispiel, das aber nicht besonders typisch für VRML ist.

 

Java3D

 

OpenGL-Logo
Das Logo ist von Silicon Graphics Computer Systems.

 

Randgebiete, Neuerungen und Allgemeines

 

Stand: 14. Dezember '98