Get Started With Haptics SDK
Updated: Feb 18, 2025
By the end of this guide, you will be able to:
- Explain what is needed to use the Haptics SDK for Unity
- Remember the steps to set up the Haptics SDK for Unity and lay out the content of the asset.
- Explain how to quickly get started using the minimal integration example and haptic packs
To use the Haptics SDK, make sure you have the following:
- Firmware: The SDK works on Quest 2, Quest Pro, Quest 3, Quest 3S, and other PCVR headsets. The Meta Quest headsets needs to run firmware version v47 or newer.
- Controllers: The headset can be paired with Touch, Touch Pro or Touch Plus controllers.
- Unity Version: Haptics SDK for Unity is supported on Unity version 2022.3.15f1 and above (Unity 6+ is recommended) on macOS and Windows. Follow the guide to get started with Meta Quest development on Unity.
- Meta XR Core SDK: If you are starting a new project you don’t have to do anything; this dependency will import automatically. If you are working with an existing project that has a dependency to Meta XR Utilities SDK you will need to remove this dependency and either import Meta XR Core SDK within Unity Package Manager explicitly, or allow it to be imported implicitly as a dependency of Meta XR Haptics SDK in the “Installation and import” section below.
- XR Provider: Both the Oculus XR provider and the OpenXR provider, are supported. For more information, see XR Plugin Management for Meta Quest.
- Runtime: On PC, high-fidelity haptics are supported with Meta’s OpenXR runtime via Quest Link. With other runtimes, such as SteamVR, the SDK will use lower fidelity haptics with a fixed vibration frequency.
You need a Unity account before you begin. To create an account, see
Unity’s documentation for instructions.
- Access the Unity Asset Store via the website or directly from Unity: In the system menu, go to Window > Asset Store.
- Navigate to Meta XR Haptics SDK.
- Click ‘Add to My Assets’.
- Find the package listed in the Package Manager by selecting ‘My Assets’ in the dropdown at the top of the Package Manager window.
You must be signed in to Unity Hub using the same account that has allowed you to add the asset above.
- Select Meta XR Haptics SDK in the Package Manager window.
- Click Install.
- After the installation, you will see the folder Meta XR Haptics SDK in the Packages directory.
For more information on Meta XR SDKs in Unity Package Manager, see
this page.
When building for Quest, make sure you follow the suggested
Build Configuration.
To summarize, the following components are essential to guarantee high-fidelity haptics on Quest:
- You set your project’s build target to Android.
- Use either the OpenXR Plugin with the Meta XR Feature Group enabled; or the Oculus XR Plugin.
- When switching to a PCVR build (i.e. Windows build target), make sure you use the Meta Quest Link runtime when running your application. See PCVR with high-fidelity PCM haptics for more information.
Cross-platform PCVR haptics are supported in projects that use the Unity OpenXR Plugin for Unity.
Unity projects integrating haptics using the Haptics SDK can be configured to play back with both the SteamVR and the Quest Link runtime.
Follow the instructions for the setups that most closely matches your own project.
For cross-platform PCVR to work, we recommend using Unity’s
XRRig (a.k.a.
XR Origin) instead of the
OVRRig (provided by Meta XR Core) in your scene. Furthermore, we recommend disabling the
Meta XR Feature Group on the
OpenXR plugin, and make sure the
Meta Plugin Compatibility is disabled in the SteamVR runtime. With this configuration, haptics will play back using simple haptics (amplitude only) on all PCVR devices. For details see
PCVR with simple haptics.
PCVR with high-fidelity PCM haptics (Quest Link only) High-fidelity haptics are only supported for Quest PCVR. Projects must use the Unity OpenXR Plugin with the Meta XR Feature Group enabled, or by using the Oculus XR Plugin.
In your project, navigate to Edit > Project Settings > XR Plugin Management
Make sure you have the OpenXR Plug-in Provider enabled, and the Meta Feature Group enabled:
Make sure your build target is set to Windows by navigating to File > Build Settings….
If you want to maintain high-fidelity haptics for Quest devices (PCM haptics), you need to disable the XRRig component and instead add, and enable, the OVRRig in your scene:
When running your application, it is important to set
Meta Quest Link as your default OpenXR runtime provider to ensure high-fidelity PCM haptics. With other runtimes, such as
SteamVR, the SDK will use lower fidelity haptics with a fixed vibration frequency. For more information, see
Runtime Considerations.
This project setup should be used when building for Meta Quest (Android build target) to maintain high-fidelity haptics. However, expect this setup to disrupt tracking, input, and haptics on other PCVR devices when building for Windows.
PCVR with simple haptics (SteamVR) To ensure compatability across all PCVR devices, we need to make sure to set up tracking and inputs without relying on OVRInput and using OpenXR generics instead.
This section proposes a setup using XRRig for tracking. To access controller inputs, we suggest using Unity’s Input Manger or generic OpenXR Input Actions.
Cross-platform haptic playback is supported in projects that use the Unity OpenXR Plugin, and have the Meta XR Feature Group disabled:
In your project, navigate to Edit > Project Settings > XR Plug-in Management.
Make sure you have the OpenXR Plug-in Provider enabled, and the Meta Feature Group disabled on the OpenXR section under XR Plug-in Management:
Make sure your build target is set to Windows by navigating to File > Build Settings….
To make sure haptic playback works on all PCVR devices including Meta Quest, make sure your Scene contains the XRRig prefab, and that it’s enabled:
With this setup, haptic playback on PCVR devices work with simple haptics (amplitude only). High-fidelity haptics (PCM haptics) do not work with this setup.
OpenXR Runtime Considerations When using a Quest device, set
Meta Quest Link as the default
OpenXR Runtime to enable high-fidelity PCM haptics. This can be done by navigating to Settings > General within the
Meta Quest Link application. Here, enable “Unknown Sources” and click on “Set Meta Quest Link as the active OpenXR Runtime”.
Set SteamVR as the Current OpenXR Runtime when using other PCVR devices.
Furthermore, when building with the Meta XR Feature Group enabled on the Unity OpenXR Plugin, ensure that the Meta Plugin Compatibility is set to On in the SteamVR runtime settings.
Here is an overview of each folder:
- Editor: This folder contains the scripts necessary for importing haptic clips. It’s essential for working with haptic clips.
- Plugins: This folder includes the Haptics SDK for Unity libraries for Quest (Android) and Windows (Link and PCVR), which provide the core functionality.
- Runtime: This folder contains all the scripts required to trigger haptic playback. It’s essential for haptic playback.
Note: The .cs
in each folder contains API documentation that can provide additional information.
Import the Minimal Integration Example:
Open your Unity project and go to the menu “Window > Package Manager”.
Filter packages by selecting “My Assets” and select “Meta XR Haptics SDK”.
In the detailed view, select “Samples” and click “Import” next to the listed sample.
Please note, that the Minimal Integration Example is only expected to work for Quest devices.
Ensuring compatability with other PCVR devices will require setting up tracking with
XRRig and using a different input system (see
Cross-platform PCVR for further guidance).

Load the example scene:
Locate the sample scene on the Project tab by following the folder path: “Assets > Samples > Meta XR Haptics SDK > {SDK version} > Meta XR Haptics Minimal Example > Scenes”.
The example scene includes the OVRRig (Meta XR Core), an empty game object with the example script (HapticsSdkPlaySample.cs), and guidance text.
Build the example app:
Follow the guide to build the Minimal Integration Example application.
Once the application is launched on your device, you can follow the on-screen instructions.
Check out the HapticsSdkPlaySample.cs script:
To see how haptics were integrated into this sample, check out the HapticsSdkPlaySample.cs script in the folder “Assets > Samples > Meta XR Haptics SDK > {SDK version}> Meta XR Haptics Minimal Example > Scripts” on the Project tab.
Alternatively, you can use the Haptic Sample Packs, which are a small collection of haptic clips designed by Meta to get you started.
You can find the same haptic samples as preinstalled packs in Meta Haptics Studio.