Shadow Game

Aus toolbox_interaktion
Wechseln zu: Navigation, Suche

Spielablauf

Zwei Spieler versuchen nacheinander eine Schablone mit Ihren Händen nachzuahmen. Stimmt die Hand des Spielers zu mind. 80% mit der Schablone überein, wählt ein Zufallsgenerator eine neue Schablone aus. Nach einem bestimmten Zeitlimit ist der andere Spieler an der Reihe. Wer mehr Schablonen erfolgreich nachhahmen konnte gewinnt.

Shadow Game Struktur.jpg

Realisierung

Der Spieler sieht das Abbild seiner Hand und die Schablone in echtzeit auf dem Bildschirm, hierbei kann gewählt werden ob es lediglich schwarz/weiß, oder binarisiert angezeigt wird.

Die Hand wird von der Kamera aufgenommen und verglichen. Desweiteren werden auf dem Bildschirm die momentane Übereinstimmung und die verbleibende Zeit angezeig.


Verwendete Software

  • EyesWeb 5.2.1.0
  • Html, Gamemaker

Hintergrundsubtraktion

Die Hintergrundsubtraktion soll das Objekt vom Hintergrund trennen. Beim Ausführen der Hintergrundsubstraktion wird ein Bild des Hintergrunds
aufgenommen und permanent vom Videoinput subtrahiert. Das bedeutet, dass bei einer Aufnahme ohne Objekt der Videooutput ein schwarzes Bild ist.

Desweiteren wird in dem Block "Hintergrundsubstraktion" von Eyesweb eine S/W Konvertierung und eine Binarisierung durchgeführt.

Für eine gute Qualität des binären Objekts bietet der Block zusätzlich Einstellmöglichkeiten für die Farbwerte des Hintergrunds, sowie Helligkeitsschwellwerte.

Bildsub.PNG

Abb.2:Hintergrundsubtraktion


Bild-in-Bild

"Bild-in-Bild" erleichtert dem Spieler die Orientierung im Bild. Das kleinere Bild im Bild (vollständige Sicht der Kamera) ist schon binarisiert und zeigt gleichzeitig, neben der Hand des Spielers, auch die Maske, die er nachbilden soll, an.


Vergleich

Die Übereinstimmung, der Hand des Spielers mit der gezeigten Maske, wird durch Pixelvergleich realisiert. Der errechnete, positive Wert wird in Prozent ausgegeben und dem Spieler im Interface angezeigt.

Wird eine Übereinstimmung von mindestens 80% erreicht, wird durch eine Triggerung eine neue Maske angezeigt.


Interface

Das Interface dient als übersichtliche Spielumgebung. Hier Wird das "Bild-in-Bild" dargestellt und die Prozentzahl der Übereinstimmung dargestellt.


Es stellte sich im Projektverlauf heraus, dass das Auslesen eines bearbeiteten Videostream aus EyesWeb und dessen Einbindung in ein externes Interface realtiv schwierig / kaum machbar ist.



1. Visualisierung mit einer Website
Zuerst wurde versucht die Visualierung mittels einer Website darzustellen. Hierfür wurde das Kamerabild mit der Überlagerten Schattenmaske an die Website übermittelt.
Hierfür wurde in EyesWeb der Block "HTTP-VideoServer"  Httpvideo.jpg verwendet.
Die Website wird jede Sekunde neugeladen und das aktelle Bild sowie Timer und Genauigkeit angezeigt.
Es stellte sich heraus das durch das Senden der Bilder über das Internet eine zu große Latenz ensteht und so eine Bedienung des Spiels unmöglich war.


2.Blender
Danach wurde versucht ein 2D-Menu in Blender zu erstellen. Jedoch gelang es aufgrund der benötigten hohen Einarbeitungszeit nicht ein zufriedenstellendes Ergebniss zu erstellen.
Besonders Hilfreich war jedoch folgendes Videotutorial:
[LINK]


3. Gamemaker
Als dritte Variante wurde versucht den Stream mit dem Programm "Gamemaker" in eine vernüftige Spieleoberfläche einzubinden. Die Erstellung der Bedienoberfläche ging relativ simple. Jedoch war es nicht möglich den Stream in dieser Gameengine zu visualisieren.Das Menü lässt sich im folgenden Bild sehen.

aInterface.jpg

Abb. : Spielmenü im Gamemaker

4. EyesWeb
Da alle vorhergehenden Versuche nicht von Erfolg gekrönt waren, wurde beschlossen sich auf die Anzeige in EyesWeb selbst zu beschränken, hierfür wurde ein Timer eingebaut. Zur Bedienung des Spiels dient die Simulationsknöpfe (Start, Stop).



Erweiterung

Bis jetzt ist das Spiel nur für einen Spieler generiert. Ergänzend könnte man das Interface so realisieren, dass es automatisch anzeigt welcher Spieler gerade am Zug ist, und später die erreichte Punktzahl vergleichen und einen Sieger ausmachen.

Download

Eyeswebdaten