Texte zur moove Technologie 1999:

moove immersion toolkit (moove i.t.™)

Die Technologie, die durch BrandWorlds - Gesellschaft für multimediale Markenwelten mbH den Unternehmen und durch Roomancer™ sowie der Roomancer Browser Edition ‚rose' den Endkunden zu Verfügung gestellt wird, wurde mit moove i.t. erstellt und ständig weiterentwickelt. moove i.t. beinhaltet zahlreiche Werkzeuge, mit deren Hilfe Texturen, Räume, Akteure und Echtzeit-Animationen bearbeitet werden können. Daneben spielen weitere fortschrittliche Technologien eine grundlegende Rolle:

1.) moove i.t. Client-Side Tools & Technologien:

DOORS: Das Herz des moove immersion toolkit ist eine integrierte, sehr leistungsfähige Programmiersprache: DOORS (Abkürzung für Dynamic Object Oriented Runtime System).

DOORS ist keine simple Skriptsprache sondern ein komplexes Entwicklungswerkzeug mit modernsten Eigenschaften:

· echte Objektorientierung · Just-In-Time Kompilierung · effizienter Garbage Collector · Unterstützung von multiplen Threads · polymorphe Variablen · COM - Schnittstelle

Warum eine neue Programmiersprache?
Der wichtigste Grund für den Einsatz einer eigenen Programmiersprache sind die enormen Anforderungen, die bei einem Virtual-Reality-System an die Laufzeitgeschwindigkeit gestellt werden.
Jede Java oder ActiveX Marketingbroschüre macht sehr schnell darauf aufmerksam, daß Distributed Computing im Internet neue Softwareentwicklungswerkzeuge verlangt. Das gilt um so mehr für Distributed Virtual Reality Produkte wie Roomancer oder der Community Browser ‚rose':
Das Programmier - Subsystem ist sein eigentlicher Kern. Wie soll nun dieser Kern aussehen? Ist irgendeine angemessene, zeitgemäße Technologie verfügbar? Eine herkömmlich kompilierte Sprache mit strikter Datentypen - Semantik (wie C/C++) ist offensichtlich zu schwerfällig: Unser System muß fähig sein mit neuen Objekten / Code umzugehen, die jederzeit zu sehen sind und wieder verschwinden. Aber kompilierter C/C++ Code ist im wesentlichen toter Code - die gesamte Klassen-Information etc. ist schon entfernt...
Die ActiveX / OLE Strategie, eine zu überwindende Schale um den "toten Code" herum zu bauen, gestattet nur genug Flexibilität für eingeschränkten Gebrauch, z.B. einfache Steuerungen. Doch in unseren Experimenten erweisen sich diese Schemata als noch zu stark mit ihrer Herkunft verstrickt um eine große Hilfe zu sein.
Und warum benutzen wir nicht einfach Java? Warum sind wir diesen langen Weg gegangen und haben ein neues Hochleistungs- Sprach & Laufzeit - System entwickelt?
Dies sind die beiden Hauptgründe: Bedienfreundlichkeit und Geschwindigkeit. Java ist im wesentlichen eine C-gefärbte Sprache - eine Herkunft, die nicht gerade für freundliche Syntax oder einfache Semantik bekannt ist. Und Geschwindigkeit - Java Ausführungen beweisen, daß es für unsere Zwecke viel zu langsam ist. Dies gilt auch für kompilierte Versionen.
Unser Programmiersystem, DOORS, besitzt keine dieser Mängel. Es ist eine wirklich objekt-orientierte Sprache - so flexibel und dynamisch wie Smalltalk. Im Gegensatz zu Java/C/C++ besitzt es eine angenehme Syntax und eine leicht zu verstehende Semantik. Und es ist schnell... Und wie schnell ist DOORS? Hinsichtlich der wohlbekannten Langsamkeit von Java würde ein Vergleich nicht viel Sinn machen. Daher machten wir einen Vergleich mit C++. Im Brennpunkt dieses Benchmarkings ist die dynamische Speicherverwaltung, ein sehr wichtiger Bereich für eine wachsende und lebende virtuelle Welt:

Benchmarks:

Benchmarking Grafik

3D Technologie:
Hochoptimierte 3D-Engine, mit texturierten Polygonen und pixelgenauem Z-Buffering, braucht keine spezielle 3D-Hardware.

Integriert & kooperativ:
Läuft in der Windows-Umgebung und überläßt auch anderen Applikationen noch Zeittakte. Flüssige Animationen auch auf langsameren Rechnern durch optimierte Updates: Nur sichtbare Bildschirmanteile, die sich verändert haben, werden neu gerendert.

Internet / Intranet:
Peer-to-Peer Technologie: Jeder Anwender ist gleichzeitig Server und Client. Minimale Netz-Belastung durch intelligente Synchronisationstechniken: Es werden nur kleine Datenmengen übertragen, kein Teilnehmer muß auf andere warten - und trotzdem wird eine globale Synchronisierung erreicht.

Sicherheit:
In puncto Sicherheit werden die höchstmöglichen Ansprüche erfüllt. Es wird kein Datei-Code übertragen und selbstverständlich werden Firewalls respektiert. Chatmessages etc. werden verschlüsselt übertragen.

Virtuelle Akteur Technologie:
· Akteurspezifische Gestik und Bewegungen: Jeder Akteur-Typ besitzt eine eigene "Seele", die seine Verhaltensmuster bestimmen - in Abhängigkeit vom Gefühlszustand.
· Natürliche Bewegungsabläufe: z.B. realistische Kombination von Kopf- und Körperrotationen.
· Quaternionen-basierte Skeletal Animation (Unendlich viele Bewegungsphasen sind möglich).
· Motion Blending
· Dynamische Verformungen
· Freie Körper-"Seelen"-Kombinationen
· Vereinfachte Navigation und Kameraführung in 3D
· Click-on-Target Navigation mit automatischer Pfadberechnung.
· Automatische Kameraführung mit Keep-in-View-Fähigkeit.
· Order-and-Forget-Prinzip: Selbständige Auftragsausführung für Akteure.

Diese leistungsstarke Kombination ermöglicht realistisch wirkende Akteure, die in der Lage sind, sich auf natürliche Art und Weise zu bewegen und zu agieren.

moove Auto Chat Tool:
Die moove Auto Chat Technologie ermöglicht eine automatisierte Gesprächsführung zwischen dem Anwender und einem Roboter / Agenten.

2.) moove i.t. Server-Side Tools & Technologien:

moove i.t. enthält Komponenten, die auch zur Entwicklung von Server-basierten Anwendung geeignet sind.

moove Applikationsserver:
Die technologische Grundlage ist der moove Applikationsserver, eine Server-basierte Implementierung unseres DOORS Systems. Denn genau wie Virtual-Reality-Systeme, stellt auch eine moderne Web-Applikation enorme Anforderungen an die Laufzeitgeschwindigkeit: Tausende von Benutzern müssen möglichst schnell bedient werden. Die Laufzeitumgebung des Applikationsservers ist optimal den Anforderungen angepaßt und unterstützt u.a.
· HTML / DHTML Generierung
· ISAPI / COM Zugang (für ASP Anwendungen)
· COM Automation
· ADO / ODBC

Auf der Basis dieser Technologien ist es selbstverständlich möglich, moderne Dienstleistungen von der Serverseite aus anzubieten. Beispielsweise interaktive Kundenunterstützung auf dem Web mittels Roboter / Agenten bis hin zu der Möglichkeit, ein Call-Center anzubinden. Die moove AutoChat Technologie sorgt dabei auch auf der Server-Seite für eine automatisierte Gesprächsführung.

Neue Qualitätsstandards der Internet-Avatare:
Die durch moove eingesetzten Avatare weisen mit über 20 Gelenken und jeweils drei Achsen einen differenzierten Körperbau auf. Somit können die Avatare sich sogar auf Stühle setzen oder in Betten legen. Die bisherige Anzahl von bisher 500 Polygonen konnte gegenüber herkömmlichen Anwendungen auf über 2.000 Poygone nahezu vervierfacht werden. Dazu kommt eine Verbesserung des visuellen Eindrucks durch die komplette Texturierung jedes einzelnen Körperteils.

Die realistische Darstellung zeigt sich vor allem in der Art und Weise, wie die Avatare in der Anwendung agieren. Bisher besitzen die Avatare kaum Motorik und wirken daher sehr roboterhaft. Oftmals erfolgt eine Bewegung im Raum, das Laufen einer Figur, nur durch Verschieben des Avatars mit leichten Bewegungen. Ziel bei der Entwicklung unserer Avatare war die Möglichkeit zu unendlich vielen Bewegungen. Diese wurde über die in der nächsten Spielegeneration eingesetzte Quaternionen-basierte Skeletal Animation verwirklicht.

Unsere Akteure, wie wir sie nennen, sind vollständig polygonal und um ein skelettartiges Modell geordnet. Wir verwenden eine sehr leistungsfähige Runtime-Maschine, die alles was man sich nur wünschen kann in sich vereint: Zeitgemäße, leicht zu lernende Syntax, Just-In-Time Kompilation, wahre Objekt-Orientierung mit Anwender-definierten Klassen, unbegrenzte Vererbung, effiziente Garbage Collection (Speicherbereinigung), Multiple Threads mit automatischer Verwaltung der verteilten Ressourcen. ("DOORS" = Dynamic Objected Oriented Runtime System)
Diese leistungsstarke Kombination ermöglicht realistisch wirkende Akteure, die in der Lage sind, sich auf natürliche Art und Weise zu bewegen und zu agieren.

Vision und Fazit:
Roomancer™ und Community Browser beinhalten eine beträchtliche Menge an neuartiger und fortschrittlicher Technologie und sind dennoch leicht zugänglich. Die offene Architektur und die in Roomancer integrierte Entwicklungsumgebung erlauben es, eigene Projekte, vielleicht sogar eigene Anwendungen mit unserer Technologie zu entwickeln. Über die integrierte Schnittstelle können eigene Akteure oder Objekte ganz einfach in die Roomancer-Welt importiert werden.

Anhang:

 

übliche VRML Avatare

moove Akteur Technologie

Polygone:

max. 500 Polygone

> 2000 Polygone

Körperbau:

vereinfachter Körperbau mit keinen oder wenigen Gelenken

> 20 Gelenke mit je 3 Achsen

Textur:

keine oder höchstens 1 Textur (planares mappping),

oft nur RGB Farben

realistische Texturen in hoher Auflösung für jedes einzelne Körperteil

Dateigröße des Avatars:

komprimiert höchstens 20K

2-3 MB!

Gestik:

einfache Gestik, z.B. Winken

 

alle Gesten sind festgelegt

komplexe Interaktionen, wie Händeschütteln, Küssen, Tanzen

der Anwender kann eigene Gesten und Bewegungsabläufe definieren

Mimik:

keine Mimik

einfach zu steuernder Wechsel der Gesichtsausdrücke - von grinsend, lachend über verärgert bis wütend

Bewegung:

oft keine Bewegungsabläufe - Avatar wird nur verschoben

Oder Bewegungsabläufe sind roboterhaft und wenig realistisch

Akteurspezifische Gestik und Bewegungen:

Jeder Akteur-Typ besitzt eine eigene "Seele", die seine Verhaltensmuster bestimmen - in Abhängigkeit vom Gefühlszustand.

Natürliche Bewegungsabläufe: z.B. realistische Kombination von Kopf- und Körperrotationen.
Quaternionen-basierte Skeletale Animation (Unendlich viele Bewegungsphasen sind möglich).
Motion Blending
Dynamische Verformungen
Freie Körper-"Seelen"-Kombinationen

Dynamische Bewegungen

Navigation:

sehr langsam - Navigation in der Ich-Perspektive

Nachteil: der gesamte Bildschirm muß ständig neu gerendert werden

Meist keine Kamerasteuerung

Der User sieht sich nicht selbst (bzw. seinen Avatar)

Selten: "Third Person" viewing mode

"Third Person" viewing mode ist Standard

Vereinfachte Navigation und Kameraführung in 3D

Nur sichtbare Bildschirmanteile, die sich verändert haben, werden neu gerendert.
Click-on-Target Navigation mit automatischer Pfadberechnung.
Automatische Kameraführung mit Keep-in-View-Fähigkeit.
Order-and-Forget-Prinzip: Selbständige Auftragsausführung für Akteure.

weitere Features:

Collision Check- keine Durchdringung

meist nur Türen mit Funktion

 

 

 

Chat-Text in extra Fenster, oft keine Sprechblasen - keine Zuordnung zum Akteur möglich

Collision Check - Akteure weichen sich aus - realistische Bewegungsabläufe

außer Türen auch "smarte" Möbel und Geräte mit Funktionen

Akteure setzen sich Stühle, legen sich auf ein Bett usw.

Geräte können benutzt werden: z.B. Drucker, Fax, CD-Player usw.

farbige Sprechblasen und zusätzliches Log-Fenster - sehr übersichtlich


    Copyright © 1999 moove, all rights reserved