Ultraleap SDK for Unity.
The Ultraleap Unity Plugin empowers developers to build Unity applications using Ultraleap's hand tracking technology. It includes various assets, examples, and utilities that make it easy to design and build applications using hand tracking in XR projects.
Get set up with the Ultraleap Plugin for Unity. | Discover the available features of the Ultraleap Plugin for Unity. | Contribute to the Open Source repository to make your mark and help others. |
To use this plugin you will need the following:
More detailed Getting Started documentation is available on our website
Please note:
There are several ways you can consume this plugin. We've listed several recommended workflows for different users below. This list is by no means exhaustive
This workflow is the easiest way to get up and running and makes updating packages simple.
If you are familiar with OpenUPM, follow the OpenUPM instructions.
Setup only needs to be performed once per Unity project.
In Edit -> Project Settings -> Package Manager
, add a new scoped registry with the following details:
Name: Ultraleap
URL: https://package.openupm.com
Scope(s): com.ultraleap
Open the Package Manager (Window -> Package Manager
) and navigate to "My Registries" in the dropdown at the top left of the window.
Ultraleap UPM packages should be available in the list. Click on the package you wish to install/modify.
Note: Ultraleap Tracking contains the Core, Hands and Interaction Engine modules. There are older packages created independently by a third party for these modules that are no longer updated.
(Optional) When clicking the package, it will automatically select the latest version. If you want to pick or change to a different version, click the arrow on the left of the package name and then "See all versions".
The package can be installed or removed using buttons in the bottom right. (The install button is replaced with "Upgrade to <version>" if the package is currently installed)
If you prefer to use a CLI to modify your packages or need to be able to perform actions from a terminal (e.g. CI) then you may find the OpenUPM CLI helpful. See Getting Started with OpenUPM-CLI.
You can find the .unitypackage releases of the Ultraleap Pugin for Unity attached to each release here
Please note, .unitypackages do not handle package dependencies or updates and is therefore only recommended if you wish to modify the package.
Detailed instructions are available in the foldout below.
.unitypackage files are the legacy consumption method available if you prefer it or which still can be helpful if you:
If you don't need to modify package content, the OpenUPM Consumer workflow is recommended. If you do and expect to upgrade to a newer version, the Local UPM Package Contributor workflow is recommended as it enables you to version control your changes using git and resolve any potential conflicts when upgrading.
Assets -> Import Package -> Custom Package
) which can be downloaded from our Unity developer site or the releases section of this repository.Assets/ThirdParty/Ultraleap
.Assets/ThirdParty/Ultraleap
.Contributor workflows are used by UnityPlugin developers and are recommended for community members that want to contribute back to the source repository.
This workflow takes a few steps to setup and enables you to:
(Note) Git LFS is required when importing via this method.
You can add packages from the repository to your project in one of two ways:
(Sharable) Edit your project manifest.json (Project/Packages/manifest.json
) to add the relative paths from your Unity project's Packages folder to the Packages in the repository Packages folder.
For more information see the Unity Manual.
Below is an example if you had cloned the repository to LocalPackages within your Unity project.
"com.ultraleap.tracking": "file:../LocalPackages/unityplugin/Packages/Tracking",
"com.ultraleap.tracking.preview": "file:../LocalPackages/unityplugin/Packages/Tracking Preview",
(Not sharable) Open the package manager (Window -> Package Manager
) and click "Add package from disk…". Point it to the desired package within the repository Packages
folder.
Repeat to add all the packages you want to reference locally.
This will use an absolute file path from your machine, so will not be a sharable solution without modifying the path to work on the new machine.
Changing package versions is done through the git repository itself. Released versions can be found by checking the repository tags.
Window -> Package Manager
).Our vision is to make it as easy as possible to design the best user experience for hand tracking use cases in XR. We learn and are inspired by the creations from our open source community - any contributions you make are greatly appreciated.
Use of Ultraleap's Unity Plugin is subject to the Apache V2 License Agreement.
Our Discord Server, Github Discussions and Developer Forum are places where you are actively encouraged to share your questions, insights, ideas, feature requests and projects.