Vitruvius Kinect officially supports Windows Store! So, if you decide to bring your Kinect apps & games to the Windows Store and reach more customers, be my guest.

Uploading traditional Windows Store apps, made with Visual Studio and XAML, is quite trivial. However, exporting a Kinect for Unity project as a Windows Store package is a little more complicated. In today’s tutorial, I’ll show you how to do it.

To get started with Unity + Vitruvius, please read the Getting Started Guide.

Prerequisites

Process

So, let’s see how we can export our Unity project as a Windows Store app. For the next screenshots, I’m using the built-in Vitruvius demos.

Step 0 – Create and test your Kinect project

Create your Unity Kinect project as you’d normally do. Include the required references (LightBuzz.Vitruvius.dll, Windows.Kinect.dll) and test your game using the Unity Editor.

Kinect Unity Windows Store - 1

Step 1 – Set Unity Build Settings

Then, navigate to File → Build Settings and add the scenes you want to include in the Windows Store project. Select Windows Store as your Platform. Select 8.1 as the target SDK. Then, click Build. Do not click “Build And Run”.

Kinect Unity Windows Store - 2

Step 2 – Export for Windows Store 8.1

Unity will then ask you to create or select a folder. This folder would include the Visual Studio Solution (.sln) files and binaries. Click Select Folder and wait. Unity will compile your project using the corresponding Windows Store APIs. Kinect SDK and Vitruvius are fully compatible with Windows Store. However, your whole project and dependencies should be compatible with the Windows Store APIs. Avoid using iOS-specific, Android-specific, or Desktop-specific dependencies.

Kinect Unity Windows Store - 3Step 3 – Set Visual Studio Build Settings

After the process is completed, Unity will generate a Solution (.sln) file. Double-click to open it using Visual Studio.

Kinect is not compatible with ARM processors, so you’ll need to select x86 as your target processor. For better performance, you should also select Release instead of Debug.

Kinect Unity Windows Store - 4Step 4 – Add the required References

And now the tricky part! Even though we have already included the Windows.Kinect namespace into our Unity project, one additional step is required. Visual Studio needs to map the Unity-specific classes and methods to the WinRT-specific ones. So, right-click the References option and select Add Reference.

Navigate to Windows 8.1 → Extensions and select WindowsPreview.Kinect (required) and Microsoft.Kinect.Face (optional). Click OK and wait for a few seconds.

Kinect Unity Windows Store - 5Step 5 – Run!

This is it! Hit the green Run button to launch your Kinect Windows Store app! Feel free to upload it to the Windows Store.

Hint: To pass the App Certification process, you need the latest version of Windows 10 (Anniversary Update) and the latest version of the Windows App Certification Kit.

Kinetisense and XRsense are two Kinect Windows Store apps that use Unity. Give them a try!

PS: Vitruvius has been tested extensively and supports the Windows Store App Certification at 100%.

Vangos Pterneas

Author Vangos Pterneas

Vangos Pterneas is a Microsoft Most Valuable Professional in the Kinect technology. He helps companies from all over the world grow their revenue by creating profitable software products. Vangos is the owner of LightBuzz Software agency and author of The Dark Art Of Freelancing. Read more

More posts by Vangos Pterneas

Join the discussion 7 Comments

  • Hannnan says:

    Hello ,

    Thank you for all your tutorials, really helpful

    I am thinking to use the angle for knowing weather the arm(hand) up or down ..

    But my windows is 8…Can I use Vitruvus?

    Thanks

    • Hello Hannan. Thank you for your comment. You can use Vitruvius in Windows 8. However, as Microsoft is suggesting, you’d better update to Windows 8.1 or 10.

      You can use the angle calculations to check whether the arm is moving up or down (e.g. the shoulder angle).

  • Rameela says:

    Can Vitruvius only be used with kinect sensors? can’t we use it for 2D image manipulations? given the 2D images can’t we know the points of the joints and face without using sensors.if so how?

  • Dhia says:

    i have a little question
    when the project get bigger it gets lagging ?
    i tried it on another pc but nothing change
    any suggestion please ?

    • Hello Dhia. The volume of the project does not affect the performance. I would recommend checking the complexity of your algorithms and the volume of your graphics (e.g. number of polygons, number of vertices, etc). This is what’s usually causing problems or lagging.

      • Dhia says:

        thank you for your reply Vangos
        by bigger i dont mean the volume of the project
        i already checked the consumption (using profiler) so i found that the “sample” gameobject in the Hierarchy in which the “Sampl_Angles”script is attatched consume too much (i added another angles to it)
        any suggestion ?
        Thanks

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.