Meta Quest SDK
Overview
The MultiSet Quest SDK is a Unity-based development kit designed specifically for Meta Quest headsets. It provides developers with seamless integration to MultiSet's Visual Positioning System (VPS), enabling precise real-time localization, pose visualization, and camera access within virtual and mixed reality applications.
What You Can Build
With the MultiSet SDK, you can create applications that:
Track user position and orientation in real-world environments
Anchor virtual objects to physical locations
Build location-aware AR/VR experiences
Implement spatial mapping and navigation systems
Key Capabilities
Real-time Localization: Leverage MultiSet's VPS API for centimeter-accurate positioning
Pose Visualization: Built-in 3D gizmos and world axes for debugging and development
Camera Integration: Direct access to Meta Quest passthrough cameras
Quest Optimization: Lightweight implementation optimized for Quest hardware
Plug-and-Play: Minimal setup required for immediate integration
Getting Started
The MultiSet Quest SDK can be integrated into your Unity project using two different approaches. Choose the method that best fits your development workflow.
Prerequisites
Before starting, ensure you have:
Unity 2022.3.50+ (recommended: 2022.3.58f1 or later)
Android Build Support module installed
Meta Quest 3, 3S device
Stable internet connection for VPS functionality
MultiSet API credentials (Client ID and Client Secret from multiset.ai)
Option 1: Clone SDK Repository (Recommended)
This is the fastest way to get started with a complete, ready-to-use project.
Step 1: Clone the Repository
Clone the MultiSet Quest SDK repository directly:
git clone https://github.com/MultiSet-AI/multiset-quest-sdk.git
Step 2: Open in Unity
Launch Unity Hub
Click "Open" and select the cloned repository folder
Unity will automatically import all required dependencies
Step 3: Project Structure
After opening, you'll see the following folder structure:
Assets/
├── MetaXR/ # Meta XR SDK components
├── MultiSet/ # MultiSet SDK core files
│ ├── Assets/ # SDK assets and resources
│ ├── Plugins/ # multiset plugin (.dll)
│ ├── Resources/ # resources directory
│ ├── Scripts/ # SDK scripts
│ └── Sprites/ # UI sprites and icons
├── Oculus/ # Oculus integration
└── Plugins/ # Additional plugins
Step 4: Configure API Credentials
Navigate to
Assets/MultiSet/Resources/MultiSetConfig.asset
Open the file and replace the placeholder values:
Client Id = "YOUR_CLIENT_ID";
Client Secret = "YOUR_CLIENT_SECRET";

Step 5: Configure Map Settings
Open the scene:
Assets/MultiSet/Scenes/SingleFrameLocalization.unity
Select the MultisetSdkManager GameObject in the hierarchy
In the Inspector, locate the SingleFrameLocalizationManager component
Choose your localization method:
Map: For single, specific locations
MapSet: For multiple related locations or larger areas
Enter your mapCode or mapSetCode accordingly

Step 6: Build and Test
Connect your Meta Quest device via USB
Go to File > Build Settings
Ensure Android platform is selected
Click Build and Run
Test Localization functionality on your device
Option 2: Add SDK to Existing Project
Use this method to integrate the MultiSet SDK into an existing or Empty Unity project.
Step 1: Install Required Dependencies
Open Window > Package Manager and install the following packages by name:
Core Meta XR Packages
com.meta.xr.sdk.core
com.meta.xr.mrutilitykit
Unity Cloud Packages
com.unity.cloud.gltfast
com.unity.cloud.draco

Step 2: Configure XR Plugin Management
Go to Edit > Project Settings
Navigate to XR Plug-in Management
If not installed, click "Install XR Plugin Management"
Under Plug-in Providers, enable OpenXR

Step 3: Import MultiSet SDK Package
Download the MultiSet-Quest-SDK.unitypackage from the GitHub releases
In Unity, go to Assets > Import Package > Custom Package
Select the downloaded
.unitypackage
fileClick Import to add all SDK components to your project

Step 4: Platform Configuration
Go to File > Build Settings
Select Android and click Switch Platform
Navigate to Edit > Project Settings > XR Plug-in Management
Click "Project Validation"
Click "Fix All" to resolve any configuration issues

Step 5: Configure API Credentials
Navigate to
Assets/MultiSet/Resources/MultiSetConfig.asset
Update your credentials:
Client Id = "YOUR_CLIENT_ID";
Client Secret = "YOUR_CLIENT_SECRET";

Step 6: Scene Setup
Create a new scene or use an existing one
Select the MultisetSdkManager GameObject
In the SingleFrameLocalizationManager component:
Choose between "map" or "mapSet"
Enter your mapCode or mapSetCode

Step 7: Camera Permissions
The SDK automatically configures HEADSET CAMERA permissions, but verify in Assets/Plugins/Android/AndroidManifest.xml
:
<uses-permission android:name="horizonos.permission.HEADSET_CAMERA" />
Step 8: Build and Test
Connect your Meta Quest device
Go to File > Build Settings
Click Build and Run
Test localization on your device
Verification Checklist
Verify SDK setup:
Next Steps
Once setup is complete:
Test the sample scene: Run
SingleFrameLocalization.unity
to verify functionalityReview the documentation: Check docs.multiset.ai for advanced features
Integrate into your app: Use the SDK components in your own scenes
Troubleshooting
Common Installation Issues
Package Manager errors: Ensure Unity Hub and Unity Editor are up to date
XR Plugin issues: Restart Unity after enabling OpenXR
Build failures: Run Project Validation and fix all issues before building
Credential errors: Verify your Client ID and Secret are correct from your MultiSet dashboard
For additional support, contact [email protected]
Last updated
Was this helpful?