/amethyst-nite

An Amethyst Plugin that uses NiTE for body tracking and PrimeSense drivers. This might allow you to use devices OpenNI2 supports with Amethyst, but we cannot guarantee it.

Primary LanguageC++MIT LicenseMIT

KinectNiTE Amethyst device (plugin)

License

This project is licensed under the MIT License.

Downloads

See Releases.

Installation

To install this plugin:

  1. Install Amethyst
  2. Extract the latest release into the Amethyst install directory (the root directory of your install).
  3. Go to the Devices page, select "Xbox 360 Kinect", then click the arrow button next to the "Disconnect" button on the right, and press the "Disconnect" button to disconnect the Xbox 360 Kinect.
  4. Select "Xbox 360 Kinect (NiTE)", then click the "Refresh" button on the right. Once the lag spike finishes, verify that the status says "Success!". If it says "Success!" click the "Set Device as..." button and set the device as base.
  5. Restart Amethyst (you can keep SteamVR and your other VR apps running).
  6. Calibrate as you normally would and you're good to go!

Build & Deploy

Both build and deployment instructions are available here.

Overview

This repo is an implementation of OpenNI/PrimeSense as a wrapped Amethyst plugin.
Please thank the original devs. I've used this modified version, please thank korejan.

Wanna make one too? (K2API Devices Docs)

This repository contains sample projects of devices / plugins in terms of Amethyst project.
Each project in the solution is an example of a different possible implementation of a tracking device (Later referred to as K2TrackingDevice), and an additional one with settings.

You can find a detailed description about every single plugin and device type here.

Briefly, currently supported device types are:

  • Tracking providers:
    • JointsBasis - Provide a vector of named, tracked joints
    • KinectBasis - Provide a fixed array of enumerated, tracked joints
      • Full Character - Provide Joint_Total joints (as many as Kinect V2 does)
      • Simple Character - Provide [ Head, Elbows, Waist, Knees, Ankles, Foot Tips ]
      • Basic Character - Provide [ Head, Waist, Ankles ]
  • Spectator - Only poll data from the app

Please note that KinectBasis types can use automatic calibration, whereas JointsBasis cannot.
Additionally, plugins (devices) can provide their own settings, as described here and shown here.