Spielzustand-Automaten

Aus Spieleprogrammierer-Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
[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]]
  
Die Grundidee 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. Dem <tt>StateManager</tt> müssen alle Zustände registriert werden, um sie verwenden zu können.
+
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.

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Werkzeuge