/KinectController

Control your computer using your body. The KinectController turns the Kinect into a controller that allows configurable actions to be emulated when configurable gestures are triggered by the user.

Primary LanguageJava

Kinect Controller

Description

This project's goal is to make the Kinect compatible with any possible video game on a computer. However, it has the potential to be used with a lot of different things. The idea behind it is that the user supplies a configuration file that defines the gestures that the KinectController will observe. These gestures will be tied to one or many reactions that have the potential to do a lot of different things ranging from emulating keyboard events to controlling the mouse and executing programs or macros.

After this project gets some headway and we reach a near 1.0 release, then there should be a good amount of configuration files already created for various games and applications of the project.

Refer to the wiki for more information on the project and how the configuration files work.

Building Prerequisites

Windows

Linux

Android

Building the Project

###Command Line Instructions

  1. Make sure all of the build prerequisites are installed -- they are listed above.
  2. Execute the build.bat script in the root directory of the project -- make sure the generated lib/KinectController.jar stays in the same directory as all of the OpenNI and Nite files, because the jar expects them to be there.
  3. From there the run.bat script can be used to execute the jar that was created by the build.bat script. The run.bat script expects a config filename relative to the ./config/ directory in order to execute the KinectController.

###Intellij Instructions

  1. Load up the project in Intellij.
  2. Make sure there is an Artifact in the Project Settings of the KinectController. If there isn't, then create a JAR artifact from the KinectController's modules. Then make sure the project's jar is being built on make (there's a checkbox for it) and change the output directory to KinectController/lib.
  3. Get Gradle to refresh its dependencies (one way to do this is to go to View->Tool Windows->Gradle, then press the refresh icon in the Gradle window.)
  4. IF the config.jj file has been updated then it needs to be compiled by Javacc and the compiled .java files need to be added to the project before the final KinectController.jar is created. There are already a couple of scripts within the config/ directory that will compile the config.jj file and add the .java files to the project. Just make sure that Javacc's bin directory is on your path so the scripts can access it.
  5. Get Intellij to make the project. There's a button for it at the top right of Intellij -- the icon has a downward arrow along with some 0's and 1's.
  6. Go into the KinectController/lib directory and execute the KinectController.jar with the below command. $java -cp KinectController.jar com.lcsc.hackathon.kinectcontroller.Main -d -f ../config/config.gdef