Homework1W14

From Immersive Visualization Lab Wiki
Revision as of 20:22, 9 January 2014 by Jschulze (Talk | contribs)

Jump to: navigation, search

Contents

Homework Assignment 1: Flying around the campus with the Kinect

For this assignment you can obtain 100 points, plus up to 10 points for optional work.

The goal of this assignment is to create an application which uses exclusively the Microsoft Kinect for user interaction.

Microsoft Kinect

Every team is going to get to borrow a Kinect for Windows from the instructor until the end of the quarter. The Kinects can be picked up in the instructor's office at Atkinson Hall, room 2125. You can come either during office hours on Tuesday from 3:30-4:30pm, or at any other time. If the instructor is not in the office but the door is open, please sign one of the borrowing agreements and leave it on the desk, then take a Kinect from a box behind the door.

The Kinect drivers and SDK should already be installed on the lab machines in room 260, but only on the even-numbered PCs. For your home computer, you can find the SDK on Microsoft's Website.

Application (100 Points)

The goal is to create an interactive application which allows the user to fly from the Bear to the top of EBU1 and then to the Price Center's courtyard. This 3D model of the campus provides the scenery. You are not allowed to use any user input other than from the Kinect (i.e., no keyboard or mouse input once the application started).

Your application needs to have the following features:

  • You will need to use the skeleton extraction functionality to find the positions of the user's limbs, and parse them to control the flight.
  • The camera should provide a third person view. You need to render the user's avatar with at least head, torso, arms and legs using simple shapes such as cylinders ((osg::Cylinder).
  • You will need to be able to fly your avatar around by changing its position and at least heading (pitch and roll are optional).
  • You will need to show a small top-down map of the campus somewhere on the screen, with an indicator for where the user is (e.g., a red sphere, or a cone pointing in the direction the user is moving).
  • You will need to measure the time it takes from when the user starts flying until they land at the Price Center, and display it somewhere in the window. Who will get the fastest time?

Tips:

  • At the beginning of the application you should have a calibration function which registers a neutral position for the user. This will be needed to parse the navigation gestures more accurately.
  • You don't need to check for collisions with other buildings, i.e., the user can fly through other buildings or the ground as if they were not there.


Grading

On or before the due date, you will need to demonstrate your application to instructor, TA or tutor with a Kinect in CSE lab 260 on a lab computer or your own laptop.

Extra Credit (10 Points)

You can achieve 10 points of extra credit if you display the RGB image the Kinect sees in a corner of the screen and mirror it so that it looks like a mirror image of the user (5 points).

Superimposed on this image you will need to display the skeleton the Kinect driver extracts (5 points).

Useful Links