Index Project Introduction Requirement Analysis Architectural Description Progress and Technical...

31
G10K Do, Woojin Lee, Haechan Hwang, Jinhwan

Transcript of Index Project Introduction Requirement Analysis Architectural Description Progress and Technical...

G10K

Do, WoojinLee, Haechan

Hwang, Jinhwan

Index

Project Introduction

Requirement Analysis

Architectural Description

Progress and Technical Challenges

Further Plans

Body-moving gameUsing KINECT, a motion sensor developed by Microsoft

Controller-free gaming and entertainment

Project Goal Fitness | Stress Bust | Fun

Game Introduction Stomping swarms of monsters

Game Introduction Playing with KINECT

Just Stomping the ground

Game Introduction

REQUIREMENT ANALYSIS

I/O Processing | Screen Transition | Game Logic Con-trol

Motion recognition, Getting joint coordi-nates

Input Processing

Graphic & sound information sent to user

Output Processing

User can switch between screens

Screen Transition

Game ≒ Set of rules ≒ Set of game logic

Game Logic Control

ARCHITECTURAL DE-SCRIPTION

Top-level Architecture | Class Diagram | Screen Flow Chart

Top-level Architecture

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGame

ObjectsMonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Uses

Get data

Manages

USER

VR Input IR Input VideoOutput

SoundOutput

Display / SpeakerDisplay / SpeakerKINECTKINECT

Handle Input

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGameObjects

MonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Directly linked with KINECT device

Event handling of KINECT Controller

Recognize and determine user motion

Screen Managing

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGameObjects

MonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Managing screensand processing screen transitions

List of screens

Resources

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGameObjects

MonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Image / Font / Sound resources

Scripts for stage and monster information

Game

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGameObjects

MonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Manages In-game objects such as monster, footprint, bakery, etc

Parses the stage script

Helps UI managingand animation processing

Processes direct game logic suchas collision and score calculation

Class Diagram

Screen ManagingHandle Input

Game

Screen Flow Chart

Initial ScreenInitial Screen

Stage Select Screen

Stage Select Screen

Loading ScreenLoading Screen

Game Play ScreenGame Play Screen

Score Board ScreenScore Board Screen

User Detecting Screen

User Detecting Screen

Lost User

Condi-tion

Lost User

Condi-tion

If ( lost user ) -> Changing screen to UserDetectingScreen immedi-ately.

If ( detect user again ) -> Changing back to the Original Screen.

PROGRESS AND TECHNICAL CHALLENGES

Progress | Demonstration | Technical Challenges

Progress

• Recognize the joints of user’s body• Get the 3D-coordinates of the hands and feet• General purpose API for coordinate processing• Recognize Stomping Motion

KINECT Input Processing

• Temporary graphic resources• Monster generation and Movement• Basic collision check• Script parser(XML) for stage and monster information

Basic Game Prototyping

• Screen Transition• Hides Resource processing with a loading screen

Screen Managing

Progress

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGameObjects

MonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Uses

Get data

Manages

Done Doing Not-Yet

Progress

Screen ManagingHandle Input

Game

Done Doing Not-Yet

Demonstration

Study about 3D modeling coordinate sys-tem

Technical Challenges

Finding the floor from the center body line

Technical Challenge

FURTHER PLANSTime to Complete | Architecture

Time to Complete

• Game Design: stage design, monster design, scoring rules• Animation Module: general purpose module for animation• Game Logic: score calculation system / game over check, etc.• Accurate Collision Check : more detailed collision area check

1st Week: ~4/24

• Motion Recognition: processing dynamic motion

2nd Week: ~5/01

• Polishing (resource decoration, balancing, etc.)• Final Product (5/9)

3rd Week: ~5/08

• Spare Week

4th Week: ~5/15

Time to Complete

Ant Buster

Screen ManagingScreen Managing

ScreenManagerScreenManager

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ScreensGame Start ScreenStage Select ScreenGame Play ScreenLoading ScreenUser detecting ScreenScore board ScreenEtc

ResourcesResources

ImagesMonstersUIEtc

ImagesMonstersUIEtc

ScriptsStage InformationMonster Move Routes

ScriptsStage InformationMonster Move Routes

FontsGame FontUI Font

FontsGame FontUI Font

SoundSound EffectBGM

SoundSound EffectBGM

GameGameObjects

MonstersBakeryFootprintEtc

ObjectsMonstersBakeryFootprintEtc

UI HelperPress ButtonSlide ButtonAnimationImage Font

UI HelperPress ButtonSlide ButtonAnimationImage Font

StageStage Data

StageStage Data

ScoringCollision DetectionCalculate Score

ScoringCollision DetectionCalculate Score

Handle InputHandle Input

InputManagerInputManager

KINECT ControllerKINECT Controller

Motion DetectHand slideStompingEtc

Motion DetectHand slideStompingEtc

Uses

Get data

Manages

1st Week

Done Doing Not-Yet

1st Week

2nd Week

3rd Week

3rd Week 3rd Week