VIS- und Uni-Logo
Blindversion home uni university suche search sitemap sitemap kontakt contact
unilogo University of Stuttgart
Institute for Visualization and Interactive Systems

Mengerschwamm

german VersionPrintversionBlind Version
 

Sorry, this document is only available in German.

MengerSchwamm - Das Spiel



1. Aufgabe
2. Das Spiel
3. Anleitung
4. Screenshots
5. Download
6. Mitarbeiter

1. Aufgabe


In diesem Software-Praktikum sollte ein Flugsimulator für das kollisionsfreie Fliegen durch einen dreidimensionalen Menger-Schwamm programmiert werden. Der Flieger sollte sich dazu nur auf festgelegten Bahnen bewegen dürfen, die sich aus der Geometrie des Menger-Schwamms ergeben. Automatische Kollisionsvermeidung hat den erheblichen Vorteil, dass beliebig hohe Geschwindigkeiten auch ihn hindernisreichen Umgebungen möglich sind.

Dargestellt werden sollte der Flug aus Sicht des Fliegers; Programmiersprache für dieses SoPra ist C mit OpenGL.

Zur Umsetzung des Projektes wurde ein Spiel programmiert in dem zwei Spieler durch Tastatursteuerung sich bei möglichst hoher Geschwindigkeit jagen können.

zurück zum Anfang

2. Das Spiel


Die Spieler übernehmen im Menger-Schwamm abwechselnd die Aufgabe eines Jägers und eines Gejagten. Ziel ist es als Jäger den Gejagten zu fangen. Sobald der Gejagte gefangen wurde wechseln die Rollen und eine "Schonzeit" von 5 Sekunde wird eingeleitet in der der neue Gejagte fliehen kann. Der Jäger ist einen Tick schneller als der Gejagte, jedoch wird der neue Jäger in der "Schonzeit" heruntergebremst um dem Gejagten die Möglichkeit zur Flucht zu geben.

Die Position wird jeweils durch ein Raumschiff markiert und durch eine Art "Radar" angegeben. Zwei Fenster geben die jeweilige Sicht der Spieler an (Links: Spieler 1, Rechts: Spieler 2). Entsprechend geben zwei weitere Fenster unter den Hauptfenstern die momentane Blickrichtung (grün), die Ausrichtung nach oben (blau) und die Position des anderen Spielers (rot) an. Desweiteren wird die momentane Aufgabe in den unteren Fenstern, sowie der Punktestand angegeben. Die Punkte berechnen sich nach der Anzahl der Würfel die als Gejagter durchflogen wurden.

zurück zum Anfang

3. Anleitung


3.1. Kompilieren und installieren


Benötigte Software:
Mengerschwamm benötigt ein Betriebssystem mit OpenGL-Unterstützung, GLUT-Bibliotheken sowie einen ANSI-C-Compiler. Zum kompilieren müssen die dazugehörigen Headerdateien vorhanden sein.

Download:
Laden sie die Quellcodes mit ihrem Browser von dieser Seite herunter.

tar.gz entpacken:
Um Platz und Downloadzeit zu sparen wurde Mengerschwamm in ein sogenanntes Tar-Archiv gepackt. Sie können das Programm mit

tar -xzf menger.tar.gz

entpacken.

kompilieren mittels make (LINUX/UNIX):
Um die Kompilation von Mengerschwamm zu starten geben sie make ein. Wenn dabei fehler auftreten sollten man die Makefile an das jeweilige System anpassen.

kompilieren unter WINDOWS (ungetestet):
Mengerscchwamm wurde unter Linux programmiert sollte jedoch auch unter Windows kompilierbar sein. Bitte lesen sie die entsprechenden Handbücher ihres C-Compilers.

3.2. Das Menü


Man startet im Mainmenü. Neben der Menüleiste sind die Punktestände des letzten Spieles angeben, sofern sie nicht neu gestartet haben. Die Auswahl der Menüpunkte erfolgt durch die Mausbedienung.

SPIEL STARTEN - Das Menüfenster wird gelöscht und die Spielfenster werden aufgebaut. (Siehe unten)
ITERATIONSSTUFE - Man gelangt in ein Untermenü in welcher man die Größe des Spielfeldes wählen kann. Die Größe ist in Iterationsstufen angegeben. Die Ausmaße des Feldes sind 3 hoch Iterationsstufe in jede Dimension. Es ist zu beachten das eine größeres Feld auf manchen Systemen nicht mehr spielbar ist aufgrund von Verlusten der Geschwindigkeit.
FLIEGEN AUSSERHALB DES WÜRFELS - Durch Wählen des Menüpunktes schalten sie die Option ein oder aus. Die Vorabeinstellung ist aus und sollte auch beibehalten werden um sinnvolles Spielen zu ermöglichen. Sollten sie die Funktion einschalten, können sie sich vom Würfel unbegrenzt in jede Dimension entfernen. Das Programm ist auf diese Funktion nicht ausgelegt und kann in extremfällen zu Fehlern führen.
EXIT - Hiermit verlässt man das Spiel und reservierter Speicherplatz wird wieder freigegeben.

3.3. Spielsteuerung


Beide Spieler spielen mit derselben Tastatur.
Anpassen der Tastatur, auf z.B.: englische Tastaturen oder Invertierung, nur durch Manipulation im Sourcecode der Datei "menger.c" möglich (nicht zu empfehlen).

F1 - Spiel wird gestartet
ESC - Spiel wird beendet und man gelangt zurück in das Menu

Steuerung Spieler 1:
W - nach oben
X - nach unten
A - nach links
D - nach rechts
S - letzte Eingabe löschen

Steuerung Spieler 2:
Pfeil oben - nach oben
Pfeil unten - nach unten
Pfeil links - nach links
Pfeil rechts - nach rechts
Ende - letzte Eingabe löschen

zurück zum Anfang

4. Screenshots




zurück zum Anfang

5. Download


Quellcode: menger.tar.gz

zurück zum Anfang

6. Mitarbeiter


Betreuer: Martin Kraus

Bearbeiter:
zurück zum Anfang