Spielzustand-Automaten
Aus Spieleprogrammierer-Wiki
(Unterschied zwischen Versionen)
[unmarkierte Version] | [unmarkierte Version] |
(→Grundidee und Architektur) |
(→Grundidee und Architektur) |
||
Zeile 7: | Zeile 7: | ||
== Grundidee und Architektur == | == Grundidee und Architektur == | ||
+ | |||
+ | Die Grundidee eines Spielzustand-Automaten ist es, das Spiel in einzelne Spielzustände einzuteilen - einen <tt>State</tt>. Jeder <tt>State</tt> behandelt seinen eigenen Kontext an Daten, Aktualisierungen und Visualisierungen. Diese Zustände werden von einem so genannten Zustands-Manager <tt>StateManager</tt> verwaltet. Diesem wird jeder Spielzustand registriert, so dass er verwendet werden kann. </br></br> | ||
+ | |||
+ | Die Objektorientierte technische Umsetzung könnte wie folgt aussehen: | ||
[[Datei:uml_states.png|miniatur|UML-Klassendiagramm eines Spielzustand-Automaten]] | [[Datei:uml_states.png|miniatur|UML-Klassendiagramm eines Spielzustand-Automaten]] | ||
− | + | Der Spielzustand-Automaten lässt sich in zwei Klassen teilen: Den Zustands-Manager <tt>StateManager</tt> und eine Schnittstelle <tt>State</tt>. Jedes Spiel definiert eine Menge an Zuständen in Form von Klassen, die die Schnittstelle <tt>State</tt> implementieren. Der <tt>StateManager</tt> kennt und besitzt alle Zustände und identifiziert diese über eine ID. | |
=== Stapelverarbeitung von Zuständen === | === Stapelverarbeitung von Zuständen === |
Version vom 14. Dezember 2011, 09:53 Uhr
Klicke hier, um diese Version anzusehen.