Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Web Analytics
Cookie Policy Terms and Conditions VRML - Wikipedia

VRML

aus Wikipedia, der freien Enzyklopädie

Wikipedia:Redundanz
Redundanz
Die Artikel X3D und VRML überschneiden sich thematisch. Hilf mit, die Artikel besser voneinander abzugrenzen oder zu vereinigen. Die Diskussion über diese Überschneidungen findet hier statt. Bitte äußere dich dort, bevor du den Baustein entfernst. 137.248.122.158 11:34, 2. Nov. 2006 (CET)
VRML im Programm "dune" (Version 0.13)
VRML im Programm "dune" (Version 0.13)

VRML bedeutet Virtual Reality Modeling Language und ist eine Beschreibungssprache für 3D-Szenen, deren Geometrien, Ausleuchtungen, Animationen und Interaktionsmöglichkeiten.

VRML wurde ursprünglich als 3D-Standard für das Internet entwickelt. Die meisten 3D-Modellierungswerkzeuge ermöglichen den Im- und Export von VRML-Dateien, wodurch sich das Dateiformat auch als ein Austauschformat von 3D-Modellen etabliert hat.

Eine VRML-Darstellung (zum Beispiel innerhalb eines Web-Browsers oder einer virtuellen Realität) wird vom Computer des Betrachters in Echtzeit generiert. Das bedeutet, dass der Computer jedes einzelne Bild aus den vorhandenen Geometriedaten, sowie dem Verhalten und den Bewegungen des "Besuchers" ständig neu berechnet. Aus diesem Grund scheiden (Stand 2006, ohne Einsatz von Supercomputertechnologien) fotorealistische Darstellungen mit rechenaufwendigen Raytracing-Verfahren, "echten" Spiegelungen und Schattenwurf aus. Es werden auch beim Benutzen von vordefinierten Betrachterpositionen (viewpoints), beim Wechsel zwischen diesen Punkten und bei Kamerafahrten keine fertigen Bilder aus Filmsequenzen abgespielt. Komplexe VRML-Szenen stellten früher daher unter Umständen hohe Anforderungen an die Hardware. Wie schnell, beziehungsweise wie flüssig die Bewegungen erfolgen, hängt vom Prozessor(takt) und vor allem von der Grafikkarte des wiedergebenden Computers ab.

VRML-Dateien erkennt man an der Dateierweiterung ".wrl" (world), sie sind im Klartext (ASCII bzw. UTF-8) geschrieben und können auch in einem einfachen Texteditor erstellt werden. Es finden sich auch mit Gzip verpackte VRML-Dateien unter der Dateierweiterung ".wrl", obwohl dafür eigentlich die Dateierweiterung ".wrz" vorgesehen ist.

Inhaltsverzeichnis

[Bearbeiten] Knotentypen

Da sich eine VRML-Szene aus mehreren Knoten zusammensetzt, hier einige wichtige Knotentypen in VRML:

  • Für Geometriegrundkörper wie Quader, Zylinder, Kegel und Kugel sind jeweils eigene Knotentypen vorhanden.
  • Komplizierte Graphikobjekte bauen auf einer Liste aus Punkten und damit beschriebenen Flächen (IndexedFaceSet), Linien (IndexedLineSet) oder Punkte (PointSet) auf.
  • Die Körper können hierarchisch durch Transform-Knoten zusammengefasst werden. Auf alle Knoten unterhalb dieses Knotens können Transformationsoperationen wie Skalierung, Rotation oder Translation angewendet werden. Durch die Baumstruktur in der VRML-Datei ist es leicht, eine vorwärts gerichtete Kinematik zu erzeugen. So bewegt sich dann ein dargestellter Finger mit, wenn der Arm bewegt wird.
  • Materialeigenschaften können den geometrischen Körpern zugeordnet werden. So sind mit Hilfe von PNG-Bildern auch transparente Texturen möglich.
  • Die Lichtquellen sorgen dann durch das Beleuchtungsmodell (zumeist Gouraud Shading) für die entsprechende Schattierung der Objekte.
  • Sensoren reagieren auf Benutzeraktionen und der Time-sensor dient für Animationen.
  • Interpolatoren können dann z.B. eine Rotation in einen beliebigen Farbwechsel umwandeln oder mit fortschreitender Zeit ändert sich die Lage eines Objektes
  • Der Skriptknoten wird aktiviert über Verbindungen (Route) durch definierte Ereignis-Ausgänge von Objekten und es wird ein Java-Script oder Java-Programm gestartet. Dieses kann beliebige Berechnungen durchführen und die Ergebnisse durch weitere Verbindungen an die Eingänge von Objekten liefern.
  • Der USE-Befehl dient zum Wiederverwenden von schon mittels "DEF" definierten Skriptknoten.
  • Der PROTO-Knoten ist wesentlich flexibler als der USE-Befehl und ermöglicht z. B. die Schaffung eines Torus-Geometrieknotens, welcher laut Standard eigentlich nicht definiert ist. Etliche Protos sind im Internet frei zugänglich.
  • Durch sogenannte Anker und inline kann man durch das Anklicken von Objekten in eine andere Welt gelangen oder andere VRML-Objekte in die eigene Welt mit einbauen. Dieses ist hilfreich um den VRML-Text übersichtlich zu halten.
  • LOD (Level of Detail) ermöglichen die vereinfachte Darstellung wenn sich der Benutzer in großer Entfernung befindet um die Performance zu erhöhen.
  • Billboards sind wie Tafeln die dem Benutzer immer ihre Breitseite zudrehen.
  • Zusätzliche Knoten beschreiben die Schrittgeschwindigkeit und Augenhöhe des Nutzers und auch die Hintergrundfarbe der Welt.

Wie beim Skript-Knoten schon erwähnt, besitzt ein VRML Viewer eine integrierte ereignisorientierte Simulation, d.h. jedes Objekt kann ein Ereignis aussenden. Dabei handelt es sich um einzelne Werte oder ganze Listen von Werten. Diese Werte können Zeit, Zahlen, Zeichenketten, Farben, Vektoren, Bilder oder ganze Knoten sein. Diese werden dann vom System weiterverarbeitet und ermöglichen somit sogar die Simulation von einfachen physikalischen Vorgängen.

Die Kollisionserkennung des VRML Browsers gehört zum Standard. Eine Kollisionserkennung wird benötigt, damit man nicht durch Wände läuft. Das Verfahren, mit dem dafür gesorgt wird, dass man nicht vom Boden abhebt, ist dagegen weniger genau festgelegt.

Zur externen Steuerung der VRML-Szenen durch den Browser oder Anderes kann die Programmiersprache Java über die EAI-Schnittstelle(External Authoring Interface) nach ISO/IEC 14772-2 verwendet werden. Wie jede Textdatei kann VRML auch durch serverseitige Skriptsprachen (z.B. PHP, Perl, Python) vom Server erzeugt werden. Neben der Anwendung im Browser wird VRML auch in Umgebungen virtueller Realität eingesetzt.

[Bearbeiten] Geschichte

VRML 1.0 (damals noch Virtual Reality Markup Language) wurde 1995 als Erweiterung des Inventor-Dateiformats von Silicon Graphics (SGI) um Web-Links eingeführt und Viewpoints.

1997 wurde VRML 2.0 spezifiziert und nach kleineren Änderungen als VRML97-ISO 14772 Standard festgeschrieben. Die wichtigsten Erweiterungen gegenüber VRML 1.0 sind eine völlige Überarbeitung des Szenengraphenkonzepts mit einem starken Typsystem für Knoten, die Einführung von Sensorknoten zur Erlangung einer größeren Interaktivität, die Einführung von Animationsmöglichkeiten über TimeSensoren, Interpolatoren und ROUTES als Verbindungselemente, die Skriptfähigkeit mittels JavaScript (VRMLScript genannt) und Multimediaelemente wie Sounds, Animated GIF und MPEG-Movies.

Auf der vierten Internationalen Konferenz über VRML und 3D Webtechnologien im Jahre 1999 kam für die weitere Entwicklungen der Begriff VRML NG (Next Generation) auf. Er wurde auch als VRML99 bekannt. In diesem Standard sollte die Komplexität reduziert werden. Die Diskussionen und Entwicklungen endeten schließlich in der Entwicklung des VRML-Nachfolgers X3D, der sich allerdings bis heute (08/2006) noch nicht recht etabliert hat.

[Bearbeiten] Ergänzungsmodul für Browser

Um sich eine VRML-Datei im Internet anschauen zu können, benötigt man ein Plugin (Ergänzungsmodul) für den Browser.

[Bearbeiten] Open-Source-VRML-Browser

[Bearbeiten] In der Regel kostenlose VRML-Browser

[Bearbeiten] Open-Source-Autorenwerkzeuge für VRML

[Bearbeiten] Weblinks

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu