Xdigit: An Arithmetic Kinect Game to Enhance Math Learning Experiences

Similar documents
TAKE CONTROL GAME DESIGN DOCUMENT

Module 1 Introducing Kodu Basics

the benefits of chess playing to the social and cognitive development of elementary school children.

CISC 1600, Lab 2.2: More games in Scratch

The 8 th International Scientific Conference elearning and software for Education Bucharest, April 26-27, / X

PLEASE DO NOT REMOVE THIS PAGE

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Concerning the Potential of Using Game-Based Virtual Environment in Children Therapy

FlexAR: A Tangible Augmented Reality Experience for Teaching Anatomy

An Escape Room set in the world of Assassin s Creed Origins. Content

Math Runes. Abstract. Introduction. Figure 1: Viking runes

A Study on Motion-Based UI for Running Games with Kinect

Competition Manual. 11 th Annual Oregon Game Project Challenge

Revision for Grade 6 in Unit #1 Design & Technology Subject Your Name:... Grade 6/

Quiddler Skill Connections for Teachers

Orbital Delivery Service

Air Marshalling with the Kinect

A Kinect-based 3D hand-gesture interface for 3D databases

From Room Instrumentation to Device Instrumentation: Assessing an Inertial Measurement Unit for Spatial Awareness

Boneshaker A Generic Framework for Building Physical Therapy Games

An Introduction to ScratchJr

Learning Based Interface Modeling using Augmented Reality

What was the first gestural interface?

Inspiring Creative Fun Ysbrydoledig Creadigol Hwyl. Kinect2Scratch Workbook

Integrated Driving Aware System in the Real-World: Sensing, Computing and Feedback

The Design & Development of RPS-Vita An Augmented Reality Game for PlayStation Vita CMP S1: Applied Game Technology Duncan Bunting

XF Game Description Instructions & Help File

CHI 2013: Changing Perspectives, Paris, France. Work

Heads up interaction: glasgow university multimodal research. Eve Hoggan

Procedural Level Generation for a 2D Platformer

Hour of Code at Box Island! Curriculum

Rethinking Prototyping for Audio Games: On Different Modalities in the Prototyping Process

From: urmind Studios, FRANCE. Imagine Cup Video Games. MindCube

Introducing Photo Story 3

Apocalypse Defense. Project 3. Blair Gemmer. CSCI 576 Human-Computer Interaction, Spring 2012

Cyber Security Awareness Game Using Scratch Bit by Bit: Advancing Cyber Security

VISUAL ALGEBRA FOR COLLEGE STUDENTS. Laurie J. Burton Western Oregon University

Coordinate Planes Interactive Math Strategy Game

Can the Success of Mobile Games Be Attributed to Following Mobile Game Heuristics?

Online Gaming Support for Parents (source YHGFL) JE

Our different time phases on the DADIU semester was as following:

Denver Defenders Client: The Giving Child nonprofit Heart & Hand nonprofit

HOW TO GET STARTED WITH GAME DESIGN

Solving Usability Problems in Video Games with User Input Heuristics

Trebuchet Attack: A Game of Simple Physics and Mathematical Relationships for Primary School Children. David Beaudoin A TC831

Overview. The Game Idea

Program.

Team Breaking Bat Architecture Design Specification. Virtual Slugger

Investing in your future establishing a marketing budget

HCI Midterm Report CookTool The smart kitchen. 10/29/2010 University of Oslo Gautier DOUBLET ghdouble Marine MATHIEU - mgmathie

Designing Rhythm Game Interfaces for Touchscreen Devices

Star-Crossed Competitive Analysis

A retro space combat game by Chad Fillion. Chad Fillion Scripting for Interactivity ITGM 719: 5/13/13 Space Attack - Retro space shooter game

Arcaid: Addressing Situation Awareness and Simulator Sickness in a Virtual Reality Pac-Man Game

Intro to Interactive Entertainment Spring 2017 Syllabus CS 1010 Instructor: Tim Fowers

Overall approach, including resources required. Session Goals

Project Ideas Team Edelweiss

Haptics in Remote Collaborative Exercise Systems for Seniors

Sensible Chuckle SuperTuxKart Concrete Architecture Report

Unity 3.x. Game Development Essentials. Game development with C# and Javascript PUBLISHING

Terms and Conditions

Volume 12 Sept Oct 2011

Acing Math (One Deck At A Time!): A Collection of Math Games. Table of Contents

GameMaker. Adrienne Decker School of Interactive Games and Media. RIT Center for Media, Arts, Games, Interaction & Creativity (MAGIC)

ADVANCED WHACK A MOLE VR

Toward an Augmented Reality System for Violin Learning Support

Tutorial: A scrolling shooter

Beginning 3D Game Development with Unity:

A Mathematics-inspired Game

Individual Test Item Specifications

A comparison of a genetic algorithm and a depth first search algorithm applied to Japanese nonograms

Kissenger: A Kiss Messenger

the gamedesigninitiative at cornell university Lecture 2: Nature of Games

Using a Game Development Platform to Improve Advanced Programming Skills

CSE 165: 3D User Interaction. Lecture #7: Input Devices Part 2

Fpglappy Bird: A side-scrolling game. Overview

Skill Builder. J. B. Wright A D VA N TA G E

This one-semester elective course is intended as a practical, hands-on guide to help you understand the process of game development.

Up to 100. App Topic: Mathematics: Building number sense. Educational Goals:

SUPER PUZZLE FIGHTER II TURBO

albagomez.com.au Your WOW NOW

Technical Requirements of a Social Networking Platform for Senior Citizens

Video Game Education

Touch & Gesture. HCID 520 User Interface Software & Technology

Intelligent Radio Search

All-Stars Dungeons And Diamonds Fundamental. Secrets, Details And Facts (v1.0r3)

DOWNLOAD OR READ : UNITY 2017 GAME OPTIMIZATION OPTIMIZE ALL ASPECTS OF UNITY PERFORMANCE 2ND EDITION PDF EBOOK EPUB MOBI

Real-time AR Edutainment System Using Sensor Based Motion Recognition

Con Em If You Can was developed by the FINRA Investor Education Foundation in partnership with Commonwealth (formerly known as the D2D Fund).

GESTURE RECOGNITION SOLUTION FOR PRESENTATION CONTROL

Experiment 02 Interaction Objects

introduction to the course course structure topics

Sudoku Tutor 1.0 User Manual

Volume 2 April Tease Their Brain with Brain Teasers. Turn Your Classroom into a Game Show. Do Your Kids Sudoku?

Performance Task. Asteroid Aim. Chapter 8. Instructional Overview

Game control Element shoot system Controls Elemental shot system

Version User Guide

Chess for Math Curriculum

Contact info.

Game Glass: future game service

Transcription:

Xdigit: An Arithmetic Kinect Game to Enhance Math Learning Experiences Elwin Lee, Xiyuan Liu, Xun Zhang Entertainment Technology Center Carnegie Mellon University Pittsburgh, PA 15219 {elwinl, xiyuanl, xunzhang}@andrew.cmu.edu ABSTRACT Difficulty learning math is a common and known problem among children throughout the ages. The way of teaching and learning math has remained relatively the same in education. However, with the rise of portable devices; tablets and smart-phones, and motion-sensing controller such as the Microsoft Kinect, Nintendo WiiMote and the Playstation Move, people have shown huge interested and motivation to develop new and interactive methods for teaching. Being inspired by this trend, we created an interactive, gesture-controlled arithmetic math game, Xdigit, using the Kinect to enhance and support math learning experiences for children. In this paper, we will first present a known and common issue of children having difficulty learning arithmetic math and the possible consequences, and how we intend to provide a solution. Second, we will introduce our Kinect math game, Xdigit, followed by an explanation of the core game mechanics and the technology. Third, the user interface is explained and the available gestures to control and play the game. Next, the actual gameplay is presented using various examples, with level descriptions. Finally, we will present an in-depth explanation of the Kinect Gesture System we developed to determine gestures for our game. ACM Classification Keywords H.5.m. Information interfaces and presentation (e.g., HCI): Miscellaneous. General Terms Human Factors; Design; Measurement. INTRODUCTION Math learning difficulties are common, significant, and worthy of serious instructional attention in both regular and special education classes [1]. With Xdigit, we are striving to enhance and support math learning experiences, cognitive arithmetic and improve problem solving skills for children in elementary school by creating an interactive and educational math game using the Microsoft Kinect. Children around the ages of 5 to 10 will be our target group and will benefit the most from our educational game. Knowing and understanding the implementations of arithmetic principles stimulate cognition and are beneficial to problem solving [2], analytical thinking and decision making [3], while having fun at the same time. Furthermore, teachers and parents will also benefit from the process. They will be able to support and gain a better grasp of their children s learning process through educational games. In return, kids will be able to overcome math learning disabilities and gain valuable experiences. Additionally, our game will hopefully have an impact on children all over the world, whether they have trouble learning math or not, by creating intrinsic motivation to learn and explore. Many children with math learning problems face embarrassment in classroom and perform poorly in timed conditions [4]. Xdigit can provide a platform to support the development of cognitive arithmetic and problem solving for school students and children with difficulty learning math. GAME CONCEPT Xdigit is a challenging, fun and interactive space themed math mini-game, where the player has the objective to combine numbers through arithmetic operations to match the target number before the timer runs out. The game comes in various levels of difficulties to provide challenges and interesting mathematical opportunities by increasing the arithmetic complexity. The chosen theme for Xdigit is space, where the player encounters dangerous meteors on his or her journey to distant planets. These meteors are shown with the target number, which is pattern-generated, and moves towards the player by a timer. In order to match the target number, one number is given for the arithmetic equation. The player s task is to select a number (1 to 9) from the number wheel repository and combine that number with the given number using an arithmetic operator (plus, minus or multiply) with the Kinect gesture tracking. If the combined number matches the target number, the meteor will be destroyed and points will be given based on the remaining time. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.

The technology behind Xdigit is based on the implementation of Microsoft Kinect s NUI skeletal tracking in a Unity3D game environment. We made a Kinect gesture system with trigger groups and skeleton information, and used Unity3D as the game engine combined with an open source animation/interpolation plugin system; itween. USER INTERFACE The user interface is a crucial part in the design and gameplay of our game, and is designed to prevent confusion and information overload. The user interface is a graphical overlay of the current state of the game, and provides visual and audio feedback for the player. The interface consists of the following elements (see figure 1): Number wheel: The number wheel represents the currently selected number. In this case, number 6 is selected. Side Panels: The side panels indicate which numbers will be used to perform the equation. One number is given either on the left or right side. The? will be replaced by the player s selected number from the wheel. A clarification of the nature of the left and right panel will be given in the Gameplay section. Charge bars: The charge bar gives visual feedback concerning which operator gesture the player is currently performing. The player has to hold the gesture for 0.6 seconds to activate the operator. Meteors (target): The meteor indicates the target number which the player has to match. Timer: The timer on the top of the screen indicates how much time is left before the meteor hits the player. Health monitor: The health monitor shows how many lives the player has left. The player loses the game if he or she loses all the hearts. The current state of the player s health is also visually shown by the status of the spaceship. Score: The top right bar shows the player s total score. Figure 1. User Interface (from left to right): health monitor, timer, score, side panels, meteor, charge bar, number wheel. Figure 2. Kinect Gestures: Navigation, Plus, Minus, Multiply GESTURES Xdigit is an easy-to-learn game and consists of an interactive tutorial to guide the player through all the features and interactions in a step by step manner using images and a voice over. The game itself relies mostly on memorization of the gestures. The gestures are designed to resemble the arithmetic operators to be easily memorized, and therefore, does not require much training. Visual and audio feedback will be provided when a player performs an action. Below, we will explain the available gestures in the game and their functionalities (see Figure 2). Navigation: Navigating the number wheel is done by leaning your body left and right. Lean left to navigate to the left and lean right to navigate to the right. Plus Operator / Continue: The plus gesture is used activate the plus-operator equation in the game. Additionally, this gesture is also used as a confirmation / continue gesture in the title screen, level selection menu and score screen. Minus Operator: The Minus gesture is used to activate the minus-operator equation in the game. Multiply Operator / Repeat: The Multiply gesture is used to activate the multiply-operator equation in the game. Additionally, this gesture is also used as a repeatlevel gesture in the score screen. GAMEPLAY (HOW-TO-PLAY) When a meteor appears, select the appropriate number from the wheel and perform an operator gesture to complete the equation to match the target number on the meteor in order to destroy it. The timer on top indicates how much time is left before the meteor hits you. A heart will be removed from your health monitor if you get hit and you lose if all the hearts are gone. The player continues playing a level until all meteors are destroyed. Once completed, a score screen will be shown indicating the player s score and earned stars, and the option to repeat the level or move on to the next level. Below are several examples explaining how to choose the correct number and operator gesture.

Example 1 (Plus): Target = 5; Left panel = 1; Right panel =?; Navigate to 4 on the wheel and perform the plus - operator gesture to match the target 5. Equation: [ 1 <operator>? = 5 ] [ 1 + 4 = 5 ] Example 2 (Minus): Target = 4; Left panel = 6; Right panel =?; Navigate to 2 on the wheel and perform the minus - operator gesture to match the target 4. Equation: [ 6 <operator>? = 4 ] [ 6-2 = 4 ] Example 3 (Multiply): Target = 32; Left panel = 4; Right panel =?; Navigate to 8 on the wheel and perform the multiply - operator gesture to match the target 32. Equation: [ 4 <operator>? = 32 ] [ 4 * 8 = 32 ] Example 4 (? on left panel): Target = 9; Left panel =?; Right panel = 4; Navigate to 5 on the wheel and perform the plus - operator gesture to match the target 9. Equation: [? <operator> 4 = 9 ] [ 5 + 4 = 9 ] Example 5 (Various solutions): Various solutions are possible depending on the target number and the position of the given number (left or right). An example explaining multiple solutions with the following set: Target = 8; Left panel =?; Right panel = 1; Navigate to 7 on the wheel and perform the plus - Equation: [? <operator> 1 = 8 ] [ 7 + 1 = 8 ] Navigate to 9 on the wheel and perform the minus - Equation: [? <operator> 1 = 8 ] [ 9-1 = 8 ] Navigate to 8 on the wheel and perform the multiply - Equation: [? <operator> 1 = 8 ] [ 8 * 1 = 8 ] Figure 3. Plus-operator example Figure 4. Kinect Gesture System Workflow LEVEL DESCRIPTIONS Xdigit consists of 9 levels in total. Levels can be unlocked by successfully completing the prior level. Level 1 will explain the usage of the plus-operator, level 2 will explain the minus-operator and level 5 will explain the multiplyoperator. All other levels use a combination of arithmetic operators, multiply meteors and an increase in difficulty. Level 1: Plus only Level 2: Minus only Level 3: Plus and minus, cannot rotate wheel & sometimes 2 meteors appear Level 4: Plus and minus & occasionally 2 meteors appear Level 5: Multiply only & occasionally 2 or 3 meteors appear Level 6-9: All operators, occasionally 2 or 3 meteors appear & number gets more difficult and moves faster KINECT GESTURE SYSTEM Our Kinect gesture detection system uses the skeleton track data provided by Kinect SDK. We use spheres with rigidbody to present the position of bones and to interact with triggers. Gestures are captured by groups of triggers with appropriate logic according to different gesture types. The workflow of the gesture system goes as followed (see Figure 4): Start Trigger Manager Choose appropriate Gesture Type Add new trigger path Define Gesture Event Function Name Create, position and order triggers Define gesture validation at Kinect Gesture Filter Define group number, priority and charge time at Kinect Gesture Charger. (1) Triggers Triggers are the colliders with a designated bone name. When the bone with the same name enters the trigger, the trigger will send a message to its Trigger Path. A trigger can only be a part of 1 trigger path, thus the gesture will not interfere with each other. Additionally, the position and size

of the triggers will be adjusted automatically according to player s height. (2) Trigger Path Trigger path is a group of triggers with specific logic for different gesture type. Below is a list of different types of trigger path: Simple Trigger Path This path is used for pose-like gestures and contains one or more triggers, each associated with a bone. When all the triggers have their corresponding bone in it, the path is activated. The path resets all its triggers and requires reactivation. Example gestures: Plus, Minus, Multiply. Repeat Trigger Path Repeat Trigger Path is similar to the previous one. The difference is that it will not reset the triggers after it is activated. Instead, after a certain amount of time (usually short), if the activation condition still holds, the path will be activated again. So you can stay in the same pose and continuingly activate the path. Example gesture: Navigation (Lean). During our development process, we created additional trigger paths for tracking gestures. These paths were developed to determine the division- and old navigationgestures. Due to complexity and higher probability of false detection, those gestures were redesigned for the final version. Nevertheless, we think the trigger paths are still valuable and worth mentioning to explain our Kinect gesture tracking system. Sequence Trigger Path Two or more triggers, and all triggers are associated with one bone. Triggers are stored in an ordered array and have to be triggered in a sequence within a certain timeframe to activate the path. Triggers reset when the path is activated. Example gestures: Division, Old Navigation (Swipe). Rotate Trigger Path This path is designed for a rotational navigation gesture of the wheel. The triggers are stored in an ordered array, but are read in a repeat pattern. You can enter any trigger and go through a certain number triggers, following them in the same order defined in the array, to activate the path. Example gesture: Old Navigation (Rotate). (3) Trigger Manager Each gesture type has a certain type of trigger manager. The trigger manager is responsible for setting the path s ready state. Furthermore, the trigger manager listens to all its trigger paths, and communicates with the Kinect Gesture Controller with the corresponding function name given by the trigger path if it s activated. (4) Kinect Gesture Controller The Kinect Gesture Controller is the core of our gesture system and listens to every trigger manager. If any of them is activated, it sends the gesture to Kinect Gesture Filter to do corresponding validation (if necessary). If the gesture is validated, it registers the gesture to Kinect Gesture Charger for charging (if necessary). When charging is finished successfully, it calls the function corresponding to the gesture. (5) Kinect Gesture Filter Kinect Gesture Filter is for the gesture validation. For our system, some of the gesture paths may be activated by random movement. In order to reduce mistakes, we need filters for different gestures. For example, for the Minus gesture, we check if the elbow bone and hand bone are about on the plane parallel to x-z plane within a tolerance angle. Another example, for Divide gesture, we check if the direction of the hand s velocity is going down when the path is activated. Figure 5. Trigger Paths: Simple (minus-operator), Repeat (leaning navigation), Sequence (old swiping navigation), Rotate (old rotation navigation)

(6) Kinect Gesture Charger Kinect Gesture Charger is another step for making gesture system work more smoothly. There are three ideas behind this system: 1. Reducing the number of mistakes in tracking by requiring players to hold a pose for a certain timeframe to fire a gesture event. 2. Giving players visual feedback of which gesture they are performing, and provides an opportunity for the player to react and cancel a gesture if necessary. 3. The charger allows us to designate and prioritize more complicated gesture groups, firing only one gesture at a time. 2. Swanson, H. L., & Beebe-Frankenberger, M. The Relationship Between Working Memory and Mathematical Problem Solving in Children at Risk and Not at Risk for Serious Math Difficulties. Journal of Educational Psychology (2004), Vol 96(3), 471-491. 3. Kroesbergen, E. H., Van Luit, J. E., & Naglieri, J. A. Mathematical Learning Difficulties and PASS Cognitive Processes. Journal of Learning Disabilities (2003), Vol 36 (6), 574-582. 4. Jordan, N. C., & Montani, T. O. Cognitive Arithmetic and Problem Solving: A Comparison of Children with Specific and General Mathematics Difficulties. Journal of Learning Disabilities (1997), Vol 30 (6), 624-634. CONCLUSION The idea to create Xdigit came from our passion to create interactive games for edutainment. We were inspired by the fact that many children currently still face math learning difficulties in elementary and that no educational math game had been developed yet with the Kinect. We envisioned and created a game to support math learning experiences, practice cognitive arithmetic and challenge problem solving skills in a new and interactive setting. The game mechanics and interface design played a crucial role in the gestural interaction and gameplay development. The Kinect Gesture System we created allows new gestures of existing trigger paths or newly developed paths to be integrated to our system very easily. We ended up not using all the functions of our system, due to the design of the game and feedback from our playtests, but these functions can be used for future development and implementation. As the future continues, we believe Xdigit will be a valuable platform to help children around the world with math learning difficulties. Xdigit does not only enhance and support math learning experiences, cognitive arithmetic and improve problem solving skills, but creates more importantly a fun environment for rich and meaningful experiences. ACKNOWLEDGMENTS We would like to thank Lauren Lisante for being the voice talent for the voice-over instructions. Kevin MacLeod for providing free music (http://incompetech.com/) licensed under Creative Commons "Attribution 3.0". And SoundBible (http://soundbible.com/) for sound effects royalty free, under Creative Commons Attribution or Public Domain License. REFERENCES 1. Garnett, K.. Math Learning Disabilities. Learning Disabilities Journal of CEC (1998).