Virtuelle Realität und
physikalisch-basierte Simulation
- SS 10 und WS 10/11
Virtuelle Realität (VR) befindet sich an der Überschneidung von Computer-Graphik,
physikalisch-basierter Simulation, und Human-Computer-Interaction (HCI). VR befaßt
sich mit neuartigen Eingabegeräten, intuitiver und direkter Interaktion,
Immersion, Echtzeit-Rendering und physikalisch-basierter Simulation in Echtzeit.
Bei letzterem geht es um die möglichst realistische Simulation von natürlichen
Phänomenen, z.B. Feuer, von Stoff, z.B. als Kleidung, oder dem Verhalten starrer Objekte
bei Stößen.
VR hat sich
inzwischen in verschiedenen Anwendungsbereichen als wichtiges Werkzeug durchgesetzt, u.a. im
Automobil- und Flugzeugbau und der Medizin.
Außerdem lassen sich viele Techniken und Lösungen auch
im Bereich der Computerspiele anwenden.
In dieser Vorlesung werden
zunächst grundlegende Methoden und Algorithmen vorgestellt. Anschließend
werden Themen behandelt, die für ein komplexes VR-System relevant sind
(z.B. Objekt-Verhalten, Kollisionserkennung, akustisches Rendering, etc.).
In den Übungen wird auf
dem cross-plattform-fähigen VR-System
InstantReality aufgesetzt. Die Programmiersprache kann von den
Teilnehmern gewählt werden; zur Auswahl stehen Java, Javascript, und C++.
Gerne dürfen Sie auch in kleinen Teams die Aufgaben bearbeiten.
Geplant ist, Ihr VR-Szenario auch in einer VR-Installation (Powerwall mit Tracking) laufen zu lassen.
Geplante Themen:
- Einführung, Begriffe, Immersion, Anwendungen
- VR-Geräte: Displays, Tracking, Sonstige, Software-Integration
- Stereo-Rendering
- Fehlerkorrektur: Tracking-Korrektur, Filterung,
- Real-time Rendering
- Grundlegende Interaktion: Gestenerkennung, Navigation, Selektion, Greifen, Menüs
- Komplexere Interaktion: World-in-Miniature, Action-at-a-Distance, Computer-Vision-basiert
- Kollisionserkennung
- Force-Feedback: Rendering von Kräften
- Akustisches Rendering
- Physikalisch-basierte Simulation
Achtung: diese Liste ist nur vorläufig und kann sich im Laufe des Semesters ändern.
Aktuelles
Die Novelle "Gegen den Strich" von Joris-Karl Huysmans (s.u.)
Denkanregung: was hat das mit VR zu tun?
Folien
Die folgende Tabelle enthält die behandelten Themen und die dazugehörigen Folien.
(Diese Tabelle wird nach und nach gefüllt.)
Tag |
Thema |
Folien |
Übungs-blatt |
1. |
Einführung (Definitionen, Immersion, Präsenz, Geschichte),
Szenengraphen (Semantik von Knoten und Kanten, verteiltes Rendering, Thread-Safety);
Einführung in VRML / X3D (Encodings, Felder, Knotenspezifikation allg.) |
PDF1
PDF2
PDF3
|
|
2. |
Display-Technologien (HMD, Workbench, Cave, Dome, etc.);
Stereo-Projektion, Stereo-Effekte
|
PDF
|
Blatt 1 |
3. |
Real-time rendering (viewport-independent rendering, Level-of-Detail-Technik, prädictive LOD-Selektion)
progressive meshes, portal culling, image warping)
|
PDF
|
|
4. |
Eingabegeräte (beyound the desktop, tracking, data glove, locomotion devices, Software-Anbindung);
|
PDF
|
|
5. |
Interaktionsmetaphern in und mit virtuellen Umgebungen
(Klassifikation, Gestenerkennung, Navigation, Taxonomie, user models, Selektion, neuere Metaphern)
|
PDF
|
Blatt 2 |
6. |
Kollisionsdetektion (die Pipeline, konvexe Objekte, closest feature tracking, Minkowski-Summe,
Schnittests, k-DOPs, Konstruktion von BVHs)
|
PDF
|
|
7. |
Haptik und Force-Feedback (Geräte, human factors, Surface-Contact-Point-Methode,
Voxmap-Pointshell-Methode)
|
PDF
|
Blatt 3 |
8. |
Sound Rendering (Spiegelquellen-Methode, Beam-Tracing, Beschleunigung mittels Zellen, stochastisches
Sound-Rendering)
|
PDF
|
|
9. |
Particle Systems (Definition, Operationen und Kräfte auf Partikeln, collision handling, redndering,
Flammen, Procedural Modeling von Blättern unf Bäumen, paralleles Sortieren)
|
PDF
|
Blatt 4 |
10. |
Mass sping systems (Simulation einzelner Federn, explizite Integrationsverfahren, implizite
Euler-Integration, Mesh-Erzeugung für Objekte mit Volumen)
|
PDF
|
|
11. |
Rigid body simulation (die Bewegungsgleichungen, collision handling mit Kraftstoß)
|
PDF
|
Blatt 5 |
Here are
some examples and demos of VRML,
some of which I have presented in class.
Literatur
- Kay M. Stanney (Ed.): Handbook of Virtual Environments. Lawrence Erlbaum Associates, 2002
- William R. Sherman, Alan B. Craig: Understanding Virtual Reality. Morgan Kaufmann, 200
- Don Brutzman, Leonard Daly: X3D: Extensible 3D Graphics for Web Authors. Morgan Kaufmann, 2007.
Achtung: diese Lehrbücher können nur als generelle Einführung in das Gebiet der VR dienen.
Die meisten der in der Vorlesung behandelten Themen orientieren sich nicht direkt an diesen Lehrbüchern.
Daher empfiehlt sich der Besuch der Vorlesung.
Falls Sie sich diese Bücher anschaffen möchten, sollten Sie vielleicht überlegen, gebrauchte Exemplare
zu erwerben -- oft gibt es diese zu einem Bruchteil des Neupreises. Zwei gute Internetadressen sind
Abebooks und BookButler.
Downloads zu den Übungsblättern
Übungsblatt Nr. 1
Folien zur ersten Übung.
Übungsblatt Nr. 2
Rollercoaster_Aufgabe_Pendel_Ampel.zip.
Übungsblatt Nr. 4
Particle_Framework.zip.
Übungsblatt Nr. 5
FederMasse_Framework.zip.
Übungsbetrieb
Im Verlauf der Vorlesung sollen kleinere virtuelle Umgebungen programmiert werden (basierend auf einem frei
verfügbaren VR-System),
in denen einige der in der Vorlesung erlernten Techniken praktisch umgesetzt werden sollen.
Falls Sie eine eigene Idee haben, so sprechen Sie bitte mit uns darüber! Wir sind offen für vieles ;-)
Scheinerwerb
Einen Schein erwirbt man durch erfolgreiche Teilnahme an den Übungen. Da die Übungen ausschließlich
praktisch sein werden, bedeutet das, daß Sie eine "überzeugende" Implementierung Ihrer virtuellen
Umgebung demonstrieren können sollten.
(Eine "Schein"-Klausur findet nicht statt.)
Prüfung
Die Vorlesung wird mündlich geprüft. Wer sich prüfen lassen möchte, melde sich bitte wie üblich im Prüfungsamt
und bei Frau Cronjäger (IfI, Zimmer 202) an.
Online Literatur und Resources im Internet
- Tools, mit denen man X3D- / VRML97-Files "abspielen" kann:
- InstantReality (aka "Avalon");
auf der Homepage gibt es auch Beispiele und Tutorials.
- FreeWRL (für Linux und OSX).
- Cortona;
dies ist ein kommerzielles Plugin für Browser.
- Einführungen in VRML / X3D:
- Ein sog. Cheat Sheet für VRML.
- SIGGRAPH 2008 Class Notes: Don't be a WIMP;
konkrete Anleitungen, wie spezielle Features
in InstantReality benutzt werden (z.B. die verschiedenen Stereo-Modi, Interaktionsgeräte,
Clustering, Scripting, Animationen, etc.).
(Quelle)
- The Annotated VRML97 Reference Manual
(Quelle)
- Der VRML Primer and Tutorial;
die Kapitel, die etwas mit HTML zu tun haben, sind für uns nicht relevant,
auch ist das Kapitel über Tools völlig veraltet, aber ansonsten immer noch eine
brauchbare Einführung für Anfänger
(Quelle)
-
Die wichtigsten Dokumente zum X3D-Standard:
- Beispiele für X3D / VRML:
- Eine große Sammlung von Materialien,
sowohl im VRML- als auch im XML-Encoding.
Und hier das ganze nochmal als ZIP-Archiv.
- Links zu sog. "Authoring Tools" gibt es
hier;
wer mag, kann diese gerne einetzen.
Allerdings bezweifle ich den signifikanten Nährwert, da wir alle gut programmieren und
mit Text-Editoren umgehen können.
- A handy little tool for
Calculating VRML Viewpoints.
- Nicht ganz ernst gemeint sind die
Cartoon Laws of Physics ;-) .
- Weiterführende Literatur zum Thema "User Interface Design":
- Literatur zur physikalisch-basierten Simulation:
- Die Novelle
Gegen den Strich
von Joris-Karl Huysmans.
Denkanregung: was hat das mit VR zu tun?
Change Monitoring:
If you enter your email adress in one of the boxes above and then press one of the "Monitor" buttons,
then either
ChangeDetection
or ChangeDetect
will send you an email whenever I make changes to this page.
Gabriel Zachmann
Last modified:
Mon Apr 11 10:35:13 MDT 2011