Getting Started
Getting Started — LeonardoXR SDK
Getting Started
Version 1.0.2 | Device: Youbiquo Leonardo XR | Base SDK: Snapdragon Spaces 1.0.4
Introduzione
Questa guida spiega come configurare un progetto Unity per lo sviluppo su Leonardo XR, il visore AR di Youbiquo basato su Snapdragon Spaces. L’obiettivo è familiarizzare gli sviluppatori con la configurazione dell’SDK per creare applicazioni su Leonardo. La guida successiva descrive come interagire con i controller e le mani.
Leonardo XR esegue Android 12 e segue un flusso di lavoro di sviluppo familiare a chiunque abbia già creato applicazioni Android.
Required Software
Prima di iniziare, assicurati che il seguente software e i pacchetti siano installati nelle versioni specificate:
| Software / Package | Version |
|---|---|
| Unity Hub | Latest available |
| Unity Editor | 6000.0.58f2 or newer |
| LeonardoXR SDK | 1.0.2 |
| Snapdragon Spaces SDK | 1.0.4 |
| OpenXR Plugin | 1.15.1 |
| AR Foundation | 6.2.1 |
| XR Interaction Toolkit | 3.3.0 |
| XR Hands | 1.7.2 |
| UniTask | 2.5.10 |
| VS Code, Visual Studio or similar IDE | — |
NOTA A differenza della guida base di Snapdragon Spaces (che raccomanda la v1.10.0 per Unity 2022), Unity 6 con LeonardoXR utilizza OpenXR 1.15.1. Non modificare manualmente questa versione — il Package Manager la gestisce tramite le dipendenze dell’SDK.
Cra un Nuovo Progetto
- Apri Unity Hub e clicca New Project.
- Seleziona il template Universal 3D .
- Chiama il progetto (e.g.
LeonardoXR_Test) e scegli la cartella di destinazione. - Clicca Create Project.
Dopo la creazione, Unity apre il progetto con una scena di esempio nel pannello Hierarchy.


Modifica Platform su Android
LeonardoXR è basato su Android 12, quindi dovremo passare alla piattaforma target Android.
- Dal menù principale seleziona File > Build Profiles.
- Nella finestra Build Profiles seleziona Android dall’elenco delle piattaforme.


- Clicca Switch Platform e attendi che il processo sia completatoand wait for the process to complete.
- Chiudi la finesta Build Profiles.
Installa Snapdragon Spaces SDK
IMPORTANT Snapdragon Spaces SDK deve essere installato prima di LeonardoXR SDK. Il runtime LeonardoXR dipende direttamente da questa installazione e non verrà compilato in assenza di essa.
Scarica Snapdragon Spaces SDK v1.0.4 da Qualcomm developer portal (è richiesto un account sviluppatore): https://spaces.qualcomm.com/developer/vr-mr-sdk/#downloads
- Apri Package Manager (Window > Package Manager).
- Clicca + e seleziona Add package from tarball…


- Cerca il file
.tgze clicca Open. L’installazione comincerà automaticamente.


Durante l’installazione, potrebbero apparire due prompt:
- “Enable the new input system?” → clicca Yes.
- “XR Interaction Layer Mask Update Required” → per un nuovo progetto, clicca I Made a Backup, Go Ahead!
NOTA L’editor si riavvierà dopo l’installazione — questo è un comportamento previsto, non un crash. Per il controllo di versione, copia il file
.tgznella cartellaPackages/del progetto prima di aggiungerlo; il manifest utilizzerà quindi un percorso relativo, migliore per il source control..
Unity 6.3+ — Known Spaces SDK issue: Dopo l’installazione potresti vedere il seguente errore di compilazione:
BaseRuntimeFeature.InterceptEnvironmentBlendMode.cs(15,10): error CS0592: Attribute 'SerializeField' is not valid on this declaration type.Per risolverlo, fai doppio clic sull’errore nella Console per aprire il file, quindi rimuovi l’attributo
[SerializeField]sulla riga 15. Si tratta di un bug in Snapdragon Spaces 1.0.4 che si manifesta solo su Unity 6.3 e superiori.
Install LeonardoXR SDK
Scarica LeonardoXR SDK v1.0.2 da Youbiquo Developer area.
- Apri il Package Manager (Window > Package Manager).
- Clicca + e seleziona Add package from tarball…


- Trova il file LeonardoXR SDK
.tgze clicca Open.


L’SDK sarà installato con le sue dipendenza: OpenXR Plugin 1.15.1, AR Foundation 6.2.1, XR Interaction Toolkit 3.3.0, e XR Hands 1.7.2 — non è richiesto nessuna installazione manuale di questi componenti.
LeonardoXR SDK Manager
Dopo l’installazione dell’SDK LeonardoXR, si apre automaticamente la finestra LeonardoXR SDK Manager . Se non appare, aprila da LeonardoXR > SDK Manager nella barra dei menu.

![]()
![]()

LA finestra ha due sezioni:




Setup tab
Mostra lo stato dei due pacchetti che non possono essere risolti automaticamente:
| Package | Status | Action |
|---|---|---|
| Snapdragon Spaces SDK 1.0.4 | ✓ / ✗ | Browse… — opens a file picker to select the .tgz and installs it via Package Manager |
| UniTask 2.5.10 | ✓ / ✗ | Install — installs UniTask directly from the official Cysharp Git repository |


Quando su entrambi i pacchetti appare il simbolo ✓, il setup è completo.


NOTA Se Snapdragon Spaces era già installato prima dell’SDK LeonardoXR, la sua riga mostrerà automaticamente ✓ . Usa il pulsante ↺ Refresh in qualsiasi momento per ricontrollare lo stato corrente.
About tab
Visualizza le informazioni di versione per l’SDK, il dispositivo e l’editor Unity.
Configura XR Plugin Management and OpenXR
Open Project Settings
Go to Edit > Project Settings e seleziona XR Plug-in Management nella sidebar di sinistra.
Enable OpenXR and Snapdragon Spaces
- Clicca sulla scheda Android (in altro a dentra nella finestra).
- Sotto Plug-in Providers, assicurati che siano attivi : OpenXR e Snapdragon Spaces feature group.


Configure OpenXR Features
- Clicca OpenXR nella sidebar a sinistra.
- Nell’elenco delle funzionalità di Snapdragon Spaces , abilita solo Base Runtime and disable all others. e disabilita tutte le altre. Le funzionalità avanzate (Hit Testing, Plane Detection, ecc.) possono essere abilitate in seguito se necessario.


NOTA Per assicurarti che Hand Tracking funzioni correttamente LeonardoXR, l’opzione Hand Tracking Subsystem deve essere attiva All Features nella sezione OpenXR.
Add LeonardoXR Feature Group
- Torna XR Plug-in Management > Android. 2.Nella lista Plug-in Providers seleziona anche LeonardoXR feature group.


Run Project Validation
- Nella sidebar Project Settings clicca Project Validation.
- La finestra mostrerà la lista degli errori da sistemare.


- Clicca Fix All per risolvere automaticamente.
NOTA Alcune correzioni potrebbero richiedere un riavvio dell’editor. Esegui nuovamente la validazione dopo il riavvio per confermare che tutti gli errori siano risolti.
Import Samples
Prima di creare le tue scene, è utile importare i sample inclusi in ciascun pacchetto. Per ogni pacchetto: apri Window > Package Manager, seleziona In Project, seleziona il pacchetto ed espandi la sezione Samples poi clicca Import.
| Package | Samples |
|---|---|
| XR Hands | Gestures, Hand Visualizer |
| XR Interaction Toolkit | Starter Assets, Hand Interaction Demo |
| Snapdragon Spaces | Core Samples |
| LeonardoXR | Core Samples, Documentation |






Dopo aver importato tutti i sample, aggiungi le scene alla build tramite Window > XR > Snapdragon Spaces > Add Scenes to Build Settings.
Configure URP
Graphics and Quality Settings
- Apri Edit > Project Settings > Graphics.


- Under Default Render Pipeline, click the circle and select
Mobile_RPAsset.


- Vai in Project Settings > Quality.
- Nel Levels section, assicurati che Mobile abbia un segno verde sulla colonna Android. In caso contrario clicca sul triangolo Default sotto Androide seleziona Mobile.


- Chiudi Project Settings.
Configura URP Assets
In Assets/Settings, seleziona Mobile_Renderer e imposta:


- Rendering → Depth Priming Mode: imposta
Disabled - Shadows → Transparent Receive Shadows: non selezionato
- Post-processing → Enabled: non selezionato
- Renderer Feature → SSAO: assicurati sia disabilitato o rimosso


In Assets/Settings, seleziona Mobile_RPAsset e imposta:


- HDR: disattivato
- Anti Aliasing (MSAA): imposta
4x


Play In Editor Configuration
Questa sezione descrive come configurare il progetto per lo sviluppo Play-In-Editor, riducendo la necessità di eseguire il deploy sul dispositivo ad ogni modifica.
OpenXR Project Settings
Vai su Edit > Project Settings > XR Plug-in Management ae seleziona Windows, Mac, Linux .
Initialize XR On Startup — il valore all’impostazione della scheda Androiddeve corrispondere:
- Without Dual Render Fusion → deve essere enabled.
- With Dual Render Fusion → deve essere disabled.
NOTE Attiva XR Simulation da Windows/Mac/Linux tper usare AR Foundation simulation environments. Nota che QR Code Tracking non ha un sistema di simulazione equivalente.
Enable Base Runtime Feature for Windows/Mac/Linux
Vai su Edit > Project Settings > XR Plug-in Management > OpenXR (Windows, Mac, Linux tab) e attiva Base Runtime .
Configurazione delle scene — Spaces XR Simulator
Aggiungi il componente Spaces XR Simulator alla root GameObject nella scena. Il componente persiste tra i caricamenti delle scene (DontDestroyOnLoad) e può esistere una sola istanza alla volta..
| Property | Description |
|---|---|
| Start Connected | Simulates glasses active and connected (Dual Render Fusion only). |
| Invert Sim Camera Display | Swaps phone and glasses displays in the editor (Dual Render Fusion only). |
Dual Render Fusion Editor Shortcuts
| Event | Shortcut | Menu Path |
|---|---|---|
| Connect Glasses | Alt-Shift-C | Window > XR > Snapdragon Spaces > DRF > Simulation > Connect Glasses |
| Disconnect Glasses | Alt-Shift-D | Window > XR > Snapdragon Spaces > DRF > Simulation > Disconnect Glasses |
| Glasses Active | Alt-Shift-G | Window > XR > Snapdragon Spaces > DRF > Simulation > Glasses Active |
| Glasses Idle | Alt-Shift-H | Window > XR > Snapdragon Spaces > DRF > Simulation > Glasses Idle |
NOTA Tutti i comportamenti finali devono essere verificati sul dispositivo,non soltanto sull’editor.