Zustandsautomaten in der Spieleentwicklung

Typ: Diplomarbeit
Zeitraum: 2009 / 2010
Note: 1.5
Vollständiger Titel:
Zustandsautomaten in der Spieleentwicklung
- Essentielle und beiläufige Komplexität der Implementierung

Kurzfassung:
Das Verhalten eines Spielobjektes in einem Spiel kann als ein Zustandsautomat betrachtet werden. Üblicherweise wird der Infrastrukturcode des Zustandsautomaten mit dem Spiellogik-Code vermischt. Bei komplexen Spielobjekten führt dies zu unlesbaren und unstabilen Code. In dieser Diplomarbeit gehen wir das Problem an, indem wir ein generisches Framework zur Verwendung von UML Zustandsdiagrammen im Code bereitstellen. Unser Framework gibt dem Programmierer die Möglichkeit sich auf die Spiellogik zu konzentrieren und sie von dem Infrastrukturcode des Zustandsautomaten sauber zu halten.

Zuerst stellen wir die Anforderungen auf, die als Richtlinie für eine mögliche Lösung gelten. Die nachfolgenden Untersuchungen auf mögliche Lösungsansätze sowie verwandte Arbeiten werden nach diesen Anforderungen bewertet.

Der Kernpunkt der Diplomarbeit ist die Entwicklung eines eigenen Lösungsansatzes. Dieser soll die aufgestellten Anforderungen erfüllen. Er besteht aus einer eigens zur Definition der Zustandsautomaten entwickelten domänenspezifischen Sprache, einem Framework, das als Laufzeitkomponente zur Instanziierung der Zustandsautomaten dient und einem Compiler, der die domänenspezifische Sprache interpretiert. Mit der Lösung lässt sich das Verhalten von Spielobjekten elegant und übersichtlich definieren. Dies wird auch anhand einiger Anwendungsfälle im Anschluss verdeutlicht.

Als Abschluss geben wir noch die Aussicht auf mögliche Erweiterung der entwickelten Lösung. Dies beinhaltet Ideen, die im Rahmen dieser Diplomarbeit nicht verwirklicht werden konnten.

download

StatesDSS.jpg
StatesHistory.JPG
SMF_class_diagramm.JPG