Praktikum: Spaß mit der Powerwall




Terminplan

  • 19.04, 15 Uhr, Grober Entwurf
    Hier stellt Ihr (schriftlich und mündlich) die Ziele, die zu verwendende Software, eine Personaleinteilung und interne Zeitpläne vor.
  • 10.05, 15 Uhr, Feinspezifikation
    Hier konkretisiert Ihr (wiederum schriftlich und mündlich) die Ziele und Zeitpläne. Dies umfasst beispielsweise Klassen- und Ablaufdiagramme. Ausserdem sollen die Schnittstellen zwischen den Libraries spezifiziert werden.
  • 14.06, 15 Uhr, 1. Prototyp
    Hier sollte ein erster lauffähiger Prototyp des Programms fertiggestellt sein, der zumindest halbwegs den Spezifikationen genügt.
  • 26.07, 15 Uhr, Fertigstellung des Programms
    Dürfte selbsterklärend sein.
  • 09.08, 15 Uhr, Endabgabe
    Neben dem Programm sollte nun auch die Dokumentation fertiggestellt sein. Ausserdem sollt Ihr eine kurze Powerpointpräsentation vorbereiten, welche über die Funktionsweise der Software informiert, sowie Eure Vorgehensweise und spezielle Eigenheiten des Programms erklärt.
Neben den hier beschriebenen Terminen, die zusammen mit Prof. Zachmann stattfinden, treffen wir uns mindestens einmal alle 14 Tage gruppenweise.

Wichtige Software für beide Gruppen

OpenSG
Besonders interessant sind neben den einführenden Tutorials, das Tutorial zum Thema Clustering.
Wir verwenden an der Powerwall die Version 1.8.

Die Einbindung des Trackers erfolgt am einfachsten über die entsprechende Library des Herstellers Ascension.

Wie man OpenSG und Tracker verwendet könnt Ihr Euch beispielhaft auch im schon bestehenden Aquarium ansehen.

In Kürze wird auch jeweils ein SVN-Repository für beide Gruppen bereit stehen. Mehr Infos über SVN findet ihr hier:
Subversion Dokumentation
Subversion Mini-HOWTO
Subversion README

Spezifische Software für die Gruppe Achterbahn

Als Grundlage wäre es am einfachsten schon bestehende Achterbahnen aus dem Rollercoaster-Simulator No Limits zu importieren.
Hier findet Ihr ein Forum mit Tipps und Tricks.
Speziell in diesem Thread werden viele wichtige Tools besprochen.
Hier sind viele dieser Tools zusammengefasst, z.B.
  • Der NoLimits Track Packager, der das Entpacken von user-generierten Tracks ermöglicht.
  • Oder der CoasterSims Park Pack der viele 3DS-Objekte zum verschönern von Tracks enthält
  • Sowie das Gravimetric Studios Construction Kit welches neben der Konstruktion eigener Tracks auch die Möglichkeit bietet, Tracks als 3ds-Dateien zu exportieren welche OpenSG wiederum importieren kann. Eine spezielle Version des Contruction Kits inklusive 3ds-Export steht hier zum Download bereit.

Da der Export nicht reibungslos gelingt bieten sich zur Nachbearbeitung Modellierungs-Programme wie
Blender an.

Da eine Achterbahnfahrt nicht nur ein visuelles sondern auch ein akustisches Erlebnis ist, bietet sich die Integration von Sound an.
Dafür empfehle ich die Sound Library Fmod, welche schon ins Aquarium eingebaut ist.
Eine Alternative dazu wäre beispielsweise die Sound Library OpenAL.

Spezifische Software für die Gruppe Synthesizer

Das folgende Youtube-Video verdeutlicht grob die ersten Schritte:

Zunächst mal müssen aus den Tracker-Daten Midi-Daten generiert werden. Dazu bietet sich die Library GlovePIE an, die sogar direkte Unterstützung für den "Flock of Birds" bietet.

Diese Midi-Dateien müssen dann weitergeleitet werden, dazu dienen "virtuelle Midi-Ports" wie sie beispielsweise Midi-Yoke, LoopB1, Hubi's LoopBack Device oder Maple Virtual Midi Cable sowie zahlreiche andere Programme bieten.

Letztendlich sollen die Midi-Dateien in Sound umgewandelt werden. Dazu kann man ganz einfache stand-alone Synthesizer welche Midi-Daten als Input verarbeiten können, wie beispielsweise diese, verwenden.

Deutlich flexibler ist man allerdings bei Verwendung eines sogenannten VST-Hosts, wie z.B. VSTHost oder LiveProfessor.

Mit diesen Host-Programmen kann man sogenannte VST-Plugins, dem Quasi-Standard für Synthesizer und Audio-Effekt-Programme laden.

Einen Überblick über die Vielfalt der Plugin-Möglichkeiten bietet KVR. Hier ist auch eine praktische Sortierung nach kommerziellen und Freeware-Produkten möglich.

Neben dem Ohr soll natürlich auch das Auge nicht zu kurz kommen. Als Startpunkt für Recherchen über Audio-Visualisierungen bietet sich Wikipedia an.

Besonders interessant dürften die Freeware Milkdrop mit der OpenGL-Implementierung projectM sowie
das Winamp-Plugin-System Advanced Visualisation Studio sein.

Aber auch schon mit einfachen partikelbasierten Bildbearbeitungsmassnahmen lassen sich tolle Effekte erzielen, wie es z.B. Identity-sa oder auch Bret Battey zeigen.

Dabei kann es hilfreich sein, sich ein wenig mit den OpenGL-Fragment-Shadern zu befassen.
Tutorials zu diesem Thema gibt es beispielsweise hier:
Shader Programmierung mit OpenGL
nVIDIA Shader Programmierung