The Purple Book... "Using Kinect for Windows with XNA"


Can't get enough of Rob Miles? You love his C# Yellow Book and Windows Phone Programming Blue Book? Wish he had a free 58 page book on the Kinect, that goes from start to finish?

Welcome to the Purple Book!

Using Kinect for Windows with XNA

This material, created by Rob Miles (University of Hull, United Kingdom), contains information on the Microsoft Kinect sensor bar and the Microsoft Kinect SDK. It assumes a working knowledge of the C# programming language, the XNA framework and program development using Visual Studio

Table of Contents:

  • Introduction
    • Welcome
    • What you need to develop code
  • An Introduction to Kinect
    • The Kinect Sensor
    • Inside a Kinect Sensor Bar
    • Connecting the Sensor Bar
    • Installing the Kinect for Windows SDK
    • What We Have Learned
  • Writing Kinect Programs
    • Using the Kinect Video Camera
    • Using the Kinect Depth Camera
    • Using Sound with Kinect
    • What We Have Learned
  • Kinect Natural User Interfaces
    • People tracking in Kinect
    • Creating Augmented Reality
    • Adding Voice Response
    • What We Have Learned

Project Information URL:

Project Download URL:

Project Source URL:


Contact Information:

The Discussion

  • User profile image

    Good afternoon,

    Thanks for the tutorial that public

    My question is this
    I started testing with Kinect development and capture rate was good, but now the kinect video screen in the application is very slow and capture movements too.
    I could say it can happen



  • User profile image

    hi cecamilo

    verifies the capture resolution.
    I recommend a resolution of 640 * 480 for the recognition is fasteconocimiento sea rapido

  • User profile image

    does kinect support face recognition in the SDK for windows?

  • User profile image


  • User profile image

    @kevin: hi, not directly through MS API. You have to use some middleware (like OpenCV) or write your own algorithms.

  • User profile image


    the value is in kinect.DepthStream.Enable (DepthImageFormat.Resolution640x480Fps30);
    What is the difference in passing the parameter or not
    kinect.DepthStream.Enable ();

  • User profile image

    hi,what's the different between waving hand from left to right and right to left.
    Say,if i move my hand from left to right, that means see more left photos in the album, but i must shrink my hand back, so the album move left can the kinect recognize my gesture?

  • User profile image

    Hey Rob,

    Are you going to the same for Windows 8 and the Kinect?  Or XAML and WPF?  Hope so, you are awesome!

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.