Leap Motion for VR: Hot or Not?
This is an opinion post based on personal development experience. Your mileage of Leap Motion technology will vary.
I worked with and tested this technology for 9 months, and before I lay down my opinion, it is important we get up to speed on the basics.
The Leap Motion is a hand-tracking controller that allows you to develop applications with accurate, high-fidelity hand tracking software. You can make desktop apps and VR apps that allow the user to use only their hands as controllers.
The desktop setup is to lay the controller face-up on one's desk; you would move your hands over the controller to get them to appear in your app (after downloading the relevant packages and/or SDK, of course). The VR setup has the controller mounted to the front of the headset, with controller facing forward. This uses different axes than the desktop setup, and one would have to hold their hands in front of their face.
Leap Motion can be used with various dev environments, but the one that interest us in this post are Unity. After you get the Orion SDK installed and import the Leap Motion Core Assets Package into Unity, you have a ready-to-go, albeit bare, app where hands can be tracked immediately. Below I will list my pros and cons of making a VR app in Unity with Leap Motion, followed by a conclusion. Let's start with the positives:
+ Ease of setup
+ Mostly accurate hand-tracking
+ An "Interaction Engine" module is available with pre-implemented pinch and grab motions, and allows for additional VR controller input
+ Helpful documentation
+ Comes with diagnostic tools
- Hands are occasionally jittery, and loses track of hands in an environment with too much external light
- Interaction Engine has many components, but is not fully documented
- Once setup, updating Unity or Leap Motion packages can become a hassle, depending on how your project is built. If you rely on only the basics, the upgrading instructions in the documentation should serve you well. The more you edit the core assets, the more difficult things may become.
- If selling your app, consumers may be unwilling to purchase an additional $80 controller to play it.
- From a consumer standpoint, there is not a lot of compatible software
The last two cons are big ones for me. From what I've gathered combing Reddit and talking to other VR enthusiasts, non-devs that bought the device got tired of it rather quickly. It was a purchase that did not seem to have been made with the long-term in mind. So if you wanted to make a VR app/game/program to sell commercially, it will be rather difficult to turn a profit and find an audience. In that sense, using it for development isn't worth it. Consumers that don't develop seem to consider it a fad.
If you are a developer that likes experimenting with new technology, making new things for the sake of it, and Leap Motion tickles your fancy. the device may still be worth it. But Oculus, and now Valve, are boasting that their headsets will soon have hand-tracking built in. If these work as well as promised, it will most certainly make Leap Motion obsolete in the VR Space.
The big selling point right now of Leap Motion, for VR devs, is that you could make experiences that are only possible with this technology. As of writing this, it looks like a truly "hands-on" experience in VR will soon be possible with no need for an additional controller.
Leap Motion will survive, however, because it still has its niche in making non-VR desktop applications. And one of the company's big ventures, Project North Star, is an open-source AR platform. There is also a North Star AR headset that, for lack of better words, looks really cool.
So, in conclusion (tl;dr): Leap Motion is a great technology overall, but may soon be obsolete in the VR space. I personally don't think it's worth it for VR devs in 2019.