Virtuelle Realität und physikalisch-basierte Simulation - WS 09/10


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 soll eine eigene kleine virtuelle Umgebung programmiert werden basierend auf dem cross-plattform-fähigen VR-System InstantReality.
Gerne dürfen diese auch in kleinen Teams bearbeitet werden. Geplant ist, Ihr VR-Szenario auch in einer VR-Umgebung (Powerwall mit Tracking) laufen zu lassen.

Geplante Themen:

  1. Einführung, Begriffe, Immersion, Anwendungen
  2. VR-Geräte: Displays, Tracking, Sonstige, Software-Integration
  3. Stereo-Rendering
  4. Fehlerkorrektur: Tracking-Korrektur, Filterung,
  5. Real-time Rendering
  6. Grundlegende Interaktion: Gestenerkennung, Navigation, Selektion, Greifen, Menüs
  7. Komplexere Interaktion: World-in-Miniature, Action-at-a-Distance, Computer-Vision-basiert
  8. Kollisionserkennung
  9. Force-Feedback: Rendering von Kräften
  10. Akustisches Rendering
  11. Physikalisch-basierte Simulation
Achtung: diese Liste ist nur vorläufig und kann sich im Laufe des Semesters ändern.

Aktuelles

Termine: 1.2. - 10.2., jeweils von 10ct-12 und 13ct-15

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),
Anwendungen (Architektur, Simulation, Training, Prototyping),
Szenengraphen (Semantik von Knoten und Kanten, verteiltes Rendering, Thread-Safety);
Einf¸hrung in VRML / X3D (Encodings, Felder, Knotenspezifikation allg.)
PDF1 PDF2 PDF3 PDF4
2. Einf¸hrung in VRML / X3D 2 (indizierte Geometrieknoten, Knoten zur Hierarchiebildung, Wiederverwendung, Verhaltensgraph, Execution Model, User-Input, Animationsknoten, Script-Knoten, Prototypen);
Display-Technologien (HMD, Workbench, Cave, Dome, etc.); Stereo-Projektion, Stereo-Effekte;
Übung 1
PDF1 PDF2 PDF3 Blatt 1
3. Real-time rendering (viewport-independent rendering, Level-of-Detail-Technik, pr‰dictive LOD-Selektion) progressive meshes, portal culling, image warping);
enrichment lecture: X3DOM - X3D in HTML5
PDF1 PDF2
4. Real-time rendering 2 (progressive meshes, portal culling, image warping);
Eingabeger‰te (beyound the desktop, tracking, data glove, locomotion devices, Software-Anbindung);
Übung 2
PDF1 PDF2 PDF3 Blatt 2
5. Interaktionsmetaphern in und mit virtuellen Umgebungen (Klassifikation, Gestenerkennung, Navigation, Taxonomie, Wahrnehmung, neuere Metaphern) PDF
6. Kollisionserkennung (Einf¸hrung, konvexe Koll.-det., Hierarchische Koll.erkennung, Bounding Volumes, Minkowski-Summe, OBBs, SAT-Lemma, k-DOPs, Konstruktion von BVHs);
Haptik (Surface-Contact-Point-Algorithmus, Voxmap-Pointshell-Algorithmus);
Sound (Spiegelquellenmethode, Beam-Tracing)
PDF1 PDF2 PDF3
7. Partikelsysteme (Massepunkt, Phasenraum, Definition, Operationen auf Partikeln, Rendering als blobby objects, .. und mit Alpha-Blending, Flammen, Procedural Modeling von Pflanzen mit Partikeln, massiv-parallele Simulation, paralleles Sortieren) PDF
8. Feder-Masse-Systeme (Definition, DGL einer Feder, explizite Euler- / Runge-Kutta-Integration, Verlet-Integration, implizite Integration, konsistente Kollisionsantwort);
Keyframe-Animation (Bezier-Splines, Parametrisierung)
PDF1 PDF2 Blatt 3

Here are some examples and demos of VRML, some of which I have presented in class.

Literatur

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
Mtbike.zip, vette.zip, Porsche.zip.
Übungsblatt Nr. 2
Rollercoaster_Aufgabe_Pendel_Ampel.zip.
Übungsblatt Nr. 3
Blatt3_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!

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

Change Monitoring:

 by ChangeDetection (it's free and it's private).
 by ChangeDetect (it's free and private, too).
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: Thu Feb 11 18:56:02 MET 2010