Open

Mögliche Themenbereiche sind z.B.:

  • Rendering von Wetterphänomenen
  • Sky Rendering
  • Simulation von (extraterrestrischen) Umweltbedingungen für optische Sensoren
  • Indoor Navigation, Tracking Module
  • Wide area tracking
  • Android/iPhone-App (client-server graphics, visualisation, …)
  • Client-Server-System für Computergrafiken
  • Interaktives Ray Tracing / Globale Beleuchtung
  • Kostengünstiges Video based tracking, hand tracking, finger tracking
  • Screen space Redering-Techniken
  • Image based Rendering
  • (soft) shadows in realtime rendering
  • Merging global and local illumination in parallel rendering setups
  • Natürliche Interaktion für Virtual Environments
  • DIY virtual studio
  • Authoring Tool für basho (Bachelor)
    Die virtuellen Objekte und ihre Verbindungen sollen als editierbarer Graph dargestellt werden. Editierbar bedeutet, dass virtuelle Objekte per Hand gruppiert und Connections gelöscht oder erstellt werden können. Ferner soll es möglich sein, mehrere virtuelle Objekte zu verschmelzen (nur Geometrie). Wichtig ist ebenfalls die Möglichkeit, Attribute hinzuzufügen/löschen und deren Parameter zu ändern. Für viele Attribute kann ein Dialog zum Änderen der Parameter automatisch erstellt werden. Bei Attributen wie für die Animation ist dies jedoch schwer möglich. In solchen Fällen muss es auch möglich sein, Dialogfenster zum Änderen von Attributen per Hand zu erstellen.
    Voraussetzungen:

    • Java
    • Benutzerführung in GUIs
    • generischer Softwareentwurf
  • AI (Bachelor/Master) Autonomes Verhalten für Elemente einer Virtuellen Umgebungen
  • bashoSQL (Master)
    Ziel ist es eine erweiterbare Abfragesprache, ähnlich wie SQL für Datenbanken, in basho als Plug-In zu integrieren. Der einfachste Fall für eine Abfrage ist nach beliebigen Attributen zu suchen, da diese Bestandteil des Kernels sind. Viel interesannter ist die Sprache erweiterbar zu halten, so dass andere Plug-In Entwickler eigene Funktionen hinzufügen können (Ähnlich dem Erweiteren von SQL durch serverseitige Funktionen). Um die Erweiterungsschnittstelle zu verifizieren, soll ein zusätzliches Plug-In für geometrische Suchabfragen implementiert werden. Diese Suchabfragen sollen über die Abfragesprache angestoßen werden können, aber auch durch ein Methodeninterface. Eine beispielhafte Suchabfrage ist: “welche Objekte liegen im Umkreis von m Metern um der Punkt (x/y/z)?”
    Wie ist das Interface nach außen (für den Anwendungsentwickler?)
    Wie kann das ganze als Plug-In realisiert werden?
    Voraussetzungen:

    • C++
    • Komponentenentwurf
    • Compilerbau
  • Verteilung und Kooperation in Virtuellen Umgebungen (Master)
  • Mixed Rendering (Master)
    Welche Probleme treten beim mixed Rendering auf und was sind Lösungsmöglichkeiten?
    Strategien der Datenverteilung auf die verschiedenen Renderer.
  • Persistenz (Bachelor/Master)
    Beim Beenden einer basho-Applikation soll deren aktueller Zustand gespeichert werden und beim erneuten Starten wiederhergestellt werden. Da basho beliebige Attribute und Plug-Ins zulässt, darf das Persistenzmodell nicht auf einen fixen Funktionsumfang (Attribute/Plug-Ins) beschränkt sein. Die Aufgabe ist es ein generisches Persistenzmodell zu entwerfen, das beliebig erweiterbar ist (das gleiche Problem tritt auch bei dem Authoring Tool für die Eingabedialoge auf).
  • Laufzeitmodifizierbare Skripte (Master)
    Beispiel: In einem in Python/Java implementieren Attribut hat sich ein Fehler eingeschlichen. Leider ist jenes Attribut Bestandteil von jedem virtuellen Objekt der Applikation und wir sind gerade mitten beim Arbeiten in der virtuellen Welt. Normalerweise würde die Fehlerbehebnung bedeuten, dass die Applikation beendet, der Fehler behoben und die Applikation neu gestartet wird. Die Folge ist, dass der Anwender erst wieder zu der Stelle navigieren, an der der Fehler aufgetreten ist. Bei einer Skriptsprache wie Python kann Code zur Laufzeit hinzugefügt und nachgeladen werden. Die Aufgabe ist, dem Anwender die Möglichkeit zu geben den Code des fehlerhaften Attributes zu korrigieren und dann durch ein Update die Änderungen an alle Instanzen dieses Attributes weiter zu geben. Die Konsequenz ist, dass die Änderungen sofort überprüft werden können. Selbstverständlich soll dies mit allen Erweiterungsmöglichkeiten in basho funktionieren.
    Idealerweise wäre eine GUI die vielleicht sogar in das Authoring Tool eingebunden wird, die den Code aller laufender Skripte anzeigt, Änderungen der Skripte zulässt und durch einen Update Button die laufende Applikation aktualisiert. Ebenso ist eine Fehlerprüfung und die Möglichkeit neue Skripte zu schreiben und der Applikation zur Verfügung zu stellen wichtig.
    Eine andere Frage ist, wie so etwas z.B. in Java realisiert werden kann, das im Gegensatz zu Python ja kompiliert wird.
    Voraussetzungen:

    • C++/Java/Python
  • Occlusion Culling (Sichbarkeitsberechnung) (Master)
    Beschleunigung der Darstellung großer, sich teilweise verdeckender Modelle (parallel)
  • Level of Quality Metrik in Global Illumination (Master)
  • Statistisches Shadermodell, in dem “Verunreinigungen” mit einbezogen werden (Master)
  • Parallelisieren der globalen Datenstruktur in basho und hinzufügen neuer Datenstrukturen und zugehöriger Abfragealgorithmen (Master)
  • Story Telling in Virtual Environments (Bachelor)
  • Multi-View Umgebungen (Master)

Die Abschlussarbeit soll unter anderem Eingabe-Metaphern, wie zum Beispiel Multitouch, Interaktion durch Gestenerkennung bzw. intuitive Interaktion, an Hand der Microsoft Kinect Kamera untersuchen und implementieren. Für die Kinect Kamera sind bereits offene Treiber für Linux vorhanden, diese liefern Tiefen- und Farbinformation.

  1. No comments yet.
  1. No trackbacks yet.
You must be logged in to post a comment.