evolution!!! by mikhail & nikhil acknowledgements to max the kokusai warrior for the xna game...

13
Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer Starter code, Michael Noonan for the Input Simulator API & George Mamaladze for the Global Mouse Key Hook .NET. API

Upload: harry-fox

Post on 23-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Evolution!!!

ByMikhail & Nikhil

Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer Starter code, Michael Noonan for the Input Simulator API & George Mamaladze for the Global Mouse Key Hook .NET. API

Page 2: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Game Rules

• Players aim to reach the top of the evolutionary chain

• Players evolve by efficiently using fighting joints

• Depending on what you evolve into you get new or enhanced abilities

Page 3: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Game Design

• Fusion of Live Action with Computer Games• 2-D Fighter Combat Game with Kinect• Player has to exert themselves in the real

world to move characters on screen• To simulate a dynamic evolution using fighting

techniques• Survival of the Fittest !!

Page 4: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Game Technology

• Use of Kinect for Detection of Player moves• Gestures can be recorded for context-sensitive

usage (a snake does not punch)• Individual joints can be selected for a gesture• Two players can be monitored simultaneously• Gestures are mapped to appropriate actions

on screen

Page 5: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Kinect Gesture Recognition Algorithm

• Dynamic Time Warping• Used for comparing sequences of differing

lengths (positional data over time)• Uses dynamic programming to match up as

many sub-sequences as possible• Outputs the “cost” of this matching as a score• Thresholded to detect gestures

Page 6: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Game Engine

• XNA Fighter Engine – by Max The Kokusai Warrior, Trieste - Italy.

• Runs as an extension of the FlatRedBall Engine in XNA

• Contains Tools for building Characters and Stages

• Comes bundled with one stage and one character

• Complex implementation

Page 7: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Integration

• Kinect recognizes user gesture from library of prerecorded gestures

• Triggers a simulated keypress/keydown/keyup• Major Problem: XNA unfortunately cannot

receive these simulated events• Eventual Solution: Add a Windows API Hook

for keyboard events in XNA Fighter Engine to echo simulated events inside context of Game

Page 8: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

How Evolution Works

• Keep track of all moves• Frequency of different types of moves (eg.

Kicks and Punches vs Blocks) or Backing away/Moving forward are tracked

• These dimensions are analyzed for characteristics like defensive behavior, aggression, etc.

Page 9: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Demo Time !!

• Bless us this day Oh Lord of Project Demos• Keeping fingers crossed highly recommended

Page 10: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Challenges

• Kinect susceptibility to joint occlusions• XNA incompatibility with simulated Input

events• Complex and buggy Game Engine• Lack of (character) art / animation

Page 11: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Future Work

• More characters (Actual animals this time)• More stages• More moves• Porting to another, simpler engine

Page 12: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Acknowledgements

• Thank you Max for the game engine– http://kokusaifightingengine.blogspot.com/

• Thank you Rhemyst and Rymix for the starting code on Kinect DTW Gesture Recognizer– http://kinectdtw.codeplex.com/

• Thank you Michael Noonan for the Input Simulator API– http://inputsimulator.codeplex.com/

• Thank you George Mamaladze for the Global and Application Keyboard and Mouse Hooker .NET API– http://globalmousekeyhook.codeplex.com/

Page 13: Evolution!!! By Mikhail & Nikhil Acknowledgements to Max The Kokusai Warrior for the XNA Game Engine, Rhemyst and Rymix for the Kinect DTW Gesture Recognizer

Thank You!

• Questions?