Web3D

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Der Begriff Web3D umfasst sämtliche Technologien, die dreidimensionale Computergrafik bei WWW-Anwendungen einsetzen.

Web3D Anwendungen benutzen meist ein Browser-Plugin, um das Rendern von 3D-Modellen, ggfs. kombiniert mit Benutzer-Interaktion, in den Web-Browser zu verlegen. Mit der Verbreitung leistungsfähiger 3D-Grafikkarten und entsprechender 3D-APIs (wie Direct3D oder QuickDraw 3D) wurden die Voraussetzungen geschaffen, um 3D-Darstellungen für Jedermann im Web zu ermöglichen – eine Technik, die vorher häufig nur Fachleuten mit spezifischen Anwendungen im CAD-, Architektur- und Design-Bereich zugänglich war.

Eine Reihe von Herstellern hat seit Mitte der 1990er Jahre Web-3D-Software entwickelt, basierend teils auf verbreiteten Sprachen wie JavaScript und Java, teils auf eigenen Entwicklungen. Mit dem Platzen der New-Economy-Blase ab 2000 erhielt diese Entwicklung einen deutlichen Dämpfer und viele Produkte wurden eingestellt. Zudem verlor der bis dahin als Grundlage oder Vorbild gesehene VRML-Standard seine Unterstützung durch SGI. Auch reagierte der Markt nicht mit der erwarteten Nachfrage auf Web3D.

Zur Weiterentwicklung und Etablierung freier Web3D-Technologien wurde später das Web3D-Konsortium gegründet, das in kleine Arbeitsgruppen für verschiedene Anwendungsbereiche gegliedert ist, darunter Übertragung, Sicherheit und Syntax. Im Jahre 2004 wurde vom Konsortium die Beschreibungssprache X3D als neuer Web-3D-Standard erklärt (ISO/IEC 19775).[1] X3D löst das ältere VRML97 ab und verwendet die Datenbeschreibungssprache XML.

Ein anderer Pfad für die Entwicklung räumlicher visueller Darstellungen im Web ergibt sich aus virtuellen Welten wie Second Life und Computerspielen. Hier arbeiten verschiedene Hersteller an Browser-Plugins zur 3D-Darstellung, so dass keine gesonderte Applikation mehr installiert werden muss.[2]

Klassifizierung[Bearbeiten]

Die verschiedenen Software-Technologien lassen sich etwa nach folgenden Merkmalen klassifizieren:

  • Standard-Konformität – Einhaltung anerkannter und/oder verbreiteter Standards
  • Installierte Basis – Verbreitung in Browsern, ohne Software neu installieren zu müssen; davon abhängig auch die Größe der Support-Community
  • Abstraktion – Effizienz, 3D-Funktionen programmieren zu können

Beispiele:

  • JavaScript ist in den Browser integriert und weist damit die höchste installierte Basis auf, allerdings kennt die Sprache selbst keine standardisierten 3D-Funktionen; die Abstraktion ist von der ggf. geladenen 3D-Bibliothek abhängig.
  • Java ist etwas weniger häufig im Browser vorhanden, zudem besteht eine stärkere Versionsabhängigkeit. Mit Java 3D wird aber eine Programmierschnittstelle geliefert, die übliche 3D-Funktionen und -Strukturen abstrahiert und damit dem Programmierer die Arbeit erleichtert. Eine Reihe von Bibliotheken setzen darauf auf, um dieses Konzept zu erweitern, ohne jedoch selbst Standards zu folgen.
  • VRML und neuerdings X3D gehen einen Schritt weiter, indem sie auf Basis eines klar definierten Standards höhere Abstraktion bieten. Grundfunktionen wie die Bewegung des Modells sind in gängigen Renderern meist bereits enthalten. Die freie Programmierbarkeit, etwa für Interaktionen, ist aber eingeschränkt. Zur Darstellung in gängigen Browsern ist stets ein VRML-Render-Plugin zu installieren, wobei eine Reihe kommerzieller und Open-Source-Varianten zur Verfügung stehen.
  • Adobe Flash (vormals Macromedia Flash) folgt als herstellereigenes Produkt ursprünglich keinen offenen Standards, kann aber eine breite installierte Basis vorweisen, da Flash-Funktionen inzwischen in die meisten Browser integriert sind. Mit Actionscript 3 folgt es seit Juni 2006 auch dem ECMAScript-Standard. Das Format und die Sprache Actionscript bieten aber von Haus aus nur einfache 3D-Funktionen, die bei praktischen 3D-Anwendungen meist durch zusätzliche Bibliotheken ergänzt werden müssen.
  • Adobe Director vom gleichen Hersteller bietet mit Shockwave 3D eine deutlich leistungsfähigere 3D-Programmierumgebung und unterstützt auch die Hardware-Rendering-APIs OpenGL und Direct3D, sodass die Leistung der Grafikkarte genutzt wird. Es ist jedoch weniger verbreitet und erfordert auf Anwenderseite die Installation eines Plugin von inzwischen 2,6 MB Größe.
  • Spezifische Lösungen wie Hypercosm bieten nochmals höhere Abstraktion und damit schnellere Umsetzung von 3D-Anwendungen, indem physikalische Modelle, Simulationen und Interaktionen bereits in der Sprache berücksichtigt sind. Auch hier wird OpenGL unterstützt und es ist ein eigenes Plugin notwendig, die Verbreitung und auch die Entwicklergemeinde sind klein, was aber spezialisierte Anwender wie die NASA nicht abschreckt.

Siehe auch[Bearbeiten]

  • WebGL
  • O3D, JavaScript-Bibliothek von Google, basiert auf WebGL
  • X3D, XML-basiert

Einzelnachweise[Bearbeiten]

  1. http://www.heise.de/newsticker/Siggraph-X3D-wird-ISO-Standard--/meldung/49968
  2. http://www.heise.de/newsticker/meldung/97309

Weblinks[Bearbeiten]