Nicholas Benson edited this page Sep 7, 2017 · 38 revisions

Getting Started with Unity Modules

Installing the modules

Core is the only dependency for any Module. If you are installing any Unity Modules for a new project, you need only download the latest stable versions of Core and any modules of interest from our developer page. You can import new modules into your project at any time; to upgrade a module, simply delete its folder from your project to get rid of all of the files in that module, then import the latest module version.

This documentation is modified as new packages are released, and always reflects the latest released packages on the developer download page.

For more details on upgrading modules, or if your project already contains older versions of our modules, check out our upgrade instructions (it's easy).

Which modules are right for you?

  • Core

    The dependency for all modules below, Leap Motion's Core Assets provide the foundation for VR applications with a minimal interface between Unity and the Leap Motion Controller and a collection of garbageless C# utilities. With Core, you can render a basic set of Leap hands or attach arbitrary objects to hand joints. Even if you aren't using the Leap Motion Controller, you may enjoy our static Tween utility, Unity object utilities, or Query, our non-allocating LINQ implementation.

    • Interaction Engine

      Physics representations of hands and VR controllers fine-tuned with interaction heuristics to provide a fully-featured interaction API: grasping, throwing, stable 'soft' collision feedback, and proximity. The Interaction Engine comes with a suite of examples and prefabs to power reliable, stable 3D user interfaces as well as any physics-critical experiences akin to Leap Motion's Blocks demo.

    • Graphic Renderer

      Designed to address the needs of mobile rendering platforms and the ergonomics of personal VR/AR interfaces, the Graphic Renderer allows you to render an entire curved, 3D, dynamic interface in 1-3 draw calls. The Graphic Renderer can be used in tandem with the Interaction Engine; see this FAQ answer for a link to our integration example project.

    • Hands Module

      The tools you need to rig your 3D hand assets to work with Leap hands, including the powerful auto-rigging tool.

Looking for the API docs?

Unity Modules are generally well-documented! If you're looking for more granular details on Core or any module, don't hesitate to dive into our Doxygen-generated API documentation for the whole Unity Modules codebase.


If you're not seeing hands in your Unity application:

  • If you aren't using a custom camera rig, make sure you have the LMHeadMountedRig (VR rig) prefab or the LeapHandController (desktop-mounted controller) prefab in your scene.

  • If you're using a custom camera or controller rig, check your application's scene hierarchy while your hand is in front of the sensor. Make sure the hand isn't simply being rendered in the wrong place relative to your camera. Additionally, double-check you have your rig set up correctly.

  • Check the Leap Motion icon in your task bar, which you'll have if you've installed the service from the developer SDK for your platform. . If it's dark, the Leap service isn't sending any data. Double-check your Leap Motion hardware is plugged in, and check that the Leap Motion service is running.

  • Open the Leap Motion Visualizer from the right-click menu of the Leap Motion icon in your task bar. If you see hands in the Visualizer, the problem is mostly likely somewhere in Unity; otherwise, the problem is outside Unity.

Questions not answered here?

Check out the FAQ, or hop on over to the developer forum and post your question! We'll see how we can help.