VRML - Virtual Reality Modelling Language
VRML ist ein Datei-Format zur Beschreibung interaktiver dreidimensionaler Objekte und 'Welten'. VRML wurde konzipiert um im Internet, in Intranets und in lokalen Client Systemen verwendet zu werden. Ausserdem ist VRML ein universelles Austauschformat für Dateien mit integrierten 3D und Multimedia Inhalten. Mit diesen Designzielen kann VRML in den unterschiedlichsten Einsatzgebieten angewendet werden, wie z.B. CAD, Visualisierung wissenschaftlicher Fragestellungen und Erkenntnisse, multimediale Präsentationen, Unterhaltung und Ausbildung, Web-Seiten und verteilte virtuelle Welten.
VRML ist als VRML97 im ISO Standard 14772 genormt. Die erste Version, die VRML 1.0 Spezifikation, erschien im 1994 und wurde im wesentlichen von Silicon Graphics auf der Basis des 'Open Inventor' Datei-Formats entwickelt. Die zweite Version (1996) diente vor allem dazu die interaktiven Fähigkeiten von VRML zu verbessern. Auch diese Version stammte zu grössten Teil von Silicon Graphics mit Beiträgen von Sony Research und einigen anderen. 1997 wurde VRML 2.0 durch VRML97 ersetzt und VRML97 wurde formell zum ISO/IEC Standard 14772.
Die Designziele von VRML sind:
Konzeptionell stellt jede VRML Datei einen dreidimensionalen Raum mit einer Zeitbasis dar, der Grafik- und Audioobjekte enthält, die durch eine Vielzahl von Mechanismen dynamisch beeinflusst werden können. ISO/IEC 14772 nimmt keinerlei Bezug auf physische Geräte wie Bildschirmauflösung oder das Vorhandensein einer Maus.
Jede VRML-Datei richtet
a) implizit einen Raum mit Weltkoordinaten für alle in der Datei definierten Objekte und für alle von dieser Datei inkludierten Objekte ein;
b) definiert und erstellt explizit eine Menge von 3D und Multimedia Objekten;
c) kann Hyperlinks zu anderen Dateien und Anwendungen definieren;
d) kann Objekteigenschaften definieren
Eine der wichtigsten Eigenschaften von VRML Dateien ist die Fähigkeit verschiedene Dateien durch Inklusion in hierarchische Beziehungen zu setzen. Dieser Mechanismus erlaubt die Bildung von vergleichsweise grossen dynamischen Welten. Deshalb ist es erforderlich, dass jede VRML Datei in sich völlig abgeschlossen ist und durch die enthaltenen Objekte vollständig beschrieben wird. Zum Beispiel kann eine VRML-Datei earth.wrl (VRML Dateien tragen die Extension 'wrl' für 'world') die eine Welt enthält, die die Erde darstellt, mehrere Verweise auf Dateien enthalten, die Städte auf der Erde beschreiben (z.B. hagen.wrl). Die umschliessende Datei earth.wrl definiert ein Koordinatensystem in dem alle Städte liegen. Jede Stadt-Datei definiert wieder ein Welt-Koordinatensystem in dem die Stadt liegt, aber wenn die Datei von erath.wrl inkludiert wird, dann wird aus dem Welt-Koordinatensystem der Stadt ein lokales Koordinatensystem.
Eine weitere wichtige Eigenschaft von VRML ist, das VRML für ein verteiltes Zielsystem - wie das WWW - konzipiert wurde. Es gibt mehrere Objekte und Mechanismen die in die Sprache eingebaut wurden, um verteilte Dateien zu unterstützen, wie z.B.:
e) Einfügen einer anderen VRML-Datei in eine bestehende (In-Lining);
f) Hyperlinks zu anderen Dateien;
g) Benutzen von gebräuchlichen Internet und ISO Standards für die Formate anderer Dateien
h) Definition einer kompakten Syntax