NuiMotion for Node.js

NuiMotion is a Node.js plugin enabling 3D sensing of users with skeleton tracking and gestures

on NPM and Github

Node.js is a fast rising server-side technology enabling developers to write web applications in Javascript. People generally don’t think of Node.js as a creative platform, but I do. We have a wealth of Javascript developers who grew up writing very visual code for the web.

Since Node.js is just Google’s V8 Javascript engine used in the Chrome browser and elsewhere, it should make perfect sense that it’s good for more than just servers. We can use this data stream via websockets, or even with various Node frontend wrappers like NodeWebKit.

Because of this, I feel like it’s absolutely imperative to bring skeleton tracking and motion controlled interfaces to Node. NuiMotion relies on OpenNI and NiTE 2.0 behind the scenes, however these techs are written in C++. I think many web developers are a little scared of C++, but right now, its the web developers who have the strongest ties to the creative and visual pulse.

Currently, the Microsoft Kinect dominates the North American market for 3D gestures and skeletal tracking. We need to open this up to more than Windows with C++/C#. I do like Microsoft and Windows, but there’s a bigger world out there – and if the web development community picks this up, I feel like we’ll be a giant leap closer to what The OpenNI Foundation calls a 15 billion dollar industry by 2018.

These reasons are why I’m happy to bring touchless sensing to Node.js. I believe the web development community is prime to take this and run with it – and maybe help steer the fate of Natural User Interfaces (NUI).

As I write this, I’ve released NuiMotion 0.1 on NPM and Github. I don’t think NuiMotion 1.0 will be much different API-wise than this release, I’ve spent the last few months privately writing and refactoring as necessary. I do think we’ll see more gestures and improved gesture usage as we go on, as well as various light fixes as I make more demos and see needs that I haven’t filled.

Speaking of demos – that’s why this project page lives on Sweatin’ to the Web. S2W is my home for  movement, natural user interaction related demos, and tech that just generally gets you moving around.

To get started visit the Wiki. Please do use my code at your own risk. A 3D sensing camera can be a decent size purchase at around $200. I’ll gather more details as I get to test it on more and more setups, but for now, I can only report that it works for me on the few setups I have.


Leave a Reply

Your email address will not be published.