Getting Started
Getting Started — LeonardoXR SDK
Getting Started — LeonardoXR SDK
Version: 1.0.2
Target 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. Lo scopo è familiarizzare con la configurazione dell’SDK per lo sviluppo di applicazioni su Leonardo. Nella guida successiva verrà mostrato come interagire con controller e mani.
Leonardo XR è basato su Android 12 e si programma con un workflow familiare a chiunque abbia già sviluppato applicazioni Android.
Software Richiesti
Prima di cominciare, assicurati di avere installato i seguenti software e pacchetti nelle versioni indicate:
| Software / Pacchetto | Versione |
|---|---|
| Unity Hub | ultima disponibile |
| Unity Editor | 6000.0.37f1 |
| 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 o editor analogo | — |
Nota sul plugin OpenXR: A differenza della guida base Snapdragon Spaces (che raccomanda v1.10.0 per Unity 2022), con Unity 6 e LeonardoXR si usa OpenXR 1.15.1. Non modificare questa versione manualmente: il Package Manager la gestisce tramite le dipendenze dell’SDK.
Crea un Nuovo Progetto
- Apri Unity Hub e clicca su New Project.
- Seleziona il template Universal 3D.
- Assegna un nome al progetto (es.
LeonardoXR_Test) e scegli la cartella di destinazione. - Clicca su Create Project.
Dopo la creazione, Unity aprirà il progetto con una scena di esempio nel pannello Hierarchy.
Converti la Piattaforma in Android
- Nel menu principale seleziona File > Build Profiles.
- Nella finestra Build Profiles seleziona Android dalla lista Platform.
- Clicca su Switch Platform e attendi il completamento.
- Chiudi la finestra Build Profiles.
Installa i Pacchetti Richiesti
Apri il Package Manager con Window > Package Manager. Seleziona Unity Registry nella barra laterale sinistra e installa i seguenti pacchetti cliccando su Install:
- AR Foundation — 6.2.1
- XR Interaction Toolkit — 3.3.0
- XR Hands — 1.7.2
- UniTask — 2.5.10
Nota: XR Interaction Toolkit potrebbe richiedere il riavvio dell’editor dopo l’installazione. Se compare il prompt “Enable the new input system?”, clicca Yes.
Installa Snapdragon Spaces SDK
- Scarica e decomprimi Snapdragon Spaces SDK v1.0.4 dal portale ufficiale: https://spaces.qualcomm.com/developer/vr-mr-sdk/.
- Apri il Package Manager (Window > Package Manager).
- Clicca sul pulsante + e seleziona Add package from tarball…
- Naviga fino alla cartella decompressa e seleziona il file
.tgz. - Clicca Open. L’installazione partirà automaticamente.
Durante l’installazione potrebbero apparire due prompt:
- “Enable the new input system?” → clicca Yes.
- “XR Interaction Layer Mask Update Required” → poiché è un nuovo progetto, clicca I Made a Backup, Go Ahead!
L’editor si riavvierà. Questo è comportamento normale, non un crash.
Tip: Per avere il pacchetto referenziato con un percorso relativo (consigliato per il version control), copia il file
.tgznella cartellaPackagesdel progetto prima di aggiungerlo.
Installa LeonardoXR SDK
- Scarica e decomprimi LeonardoXR SDK v1.0.2 dall’area Sviluppatori di Youbiquo.
- Apri il Package Manager (Window > Package Manager).
- Clicca sul pulsante + e seleziona Add package from tarball…
- Naviga fino al file compresso LeonardoXR SDK e seleziona il file
.tgz. - Clicca Open. LeonardoXR SDK verrà installato.
Configura XR Plugin Management e OpenXR
Apri Project Settings
Vai su Edit > Project Settings e seleziona XR Plug-in Management nella barra laterale sinistra.
Attiva OpenXR e Snapdragon Spaces
- Clicca sulla scheda Android (in alto a destra nella finestra).
- Nella sezione Plug-in Providers assicurati che siano spuntati:
- OpenXR
- Snapdragon Spaces feature group
Configura OpenXR Features
- Clicca su OpenXR nella barra laterale sinistra.
- Nella lista delle Snapdragon Spaces features, abilita solo Base Runtime e disabilita tutte le altre.
Le features avanzate (Hit Testing, Plane Detection, ecc.) possono essere attivate in seguito secondo le necessità del progetto.
Attenzione: Per far funzionare correttamente Hand Tracking su LeonardoXR, l’opzione Hand Tracking Subsystem deve essere attivata nella sezione All Features di OpenXR.
Aggiungi LeonardoXR Feature Group
- Torna alla sezione XR Plug-in Management > Android.
- Nella lista Plug-in Providers spunta anche LeonardoXR feature group.
Esegui Project Validation
- Nella barra laterale di Project Settings, clicca su Project Validation.
- La finestra mostrerà una lista di errori di configurazione da risolvere.
- Clicca su Fix All per risolverli automaticamente.
Alcuni fix potrebbero richiedere il riavvio dell’editor. Ripeti la validazione dopo il riavvio per verificare che tutti gli errori siano stati risolti.
Importa i Samples
Prima di creare scene proprie è utile importare i sample inclusi nei vari pacchetti. Per ciascun pacchetto: apri Window > Package Manager, seleziona In Project, seleziona il pacchetto, espandi la sezione Samples e clicca Import.
Samples da importare per pacchetto
XR Hands:
- Gestures
- Hand Visualizer
XR Interaction Toolkit:
- Starter Assets
- Hand Interaction Demo
Snapdragon Spaces:
- Core Samples
LeonardoXR:
- Core Samples
Dopo aver importato tutti i samples, aggiungi le scene al build tramite Window > XR > Snapdragon Spaces > Add Scenes to Build Settings.
Configura URP
Graphics e Quality Settings
- Apri Edit > Project Settings > Graphics.
- In Default Render Pipeline clicca sul cerchietto e seleziona Mobile_RPAsset (Universal Render Pipeline Asset).
- Vai su Project Settings > Quality.
- Nella sezione Levels, assicurati che Mobile abbia un checkbox verde nella colonna Android. Se non è presente, clicca sul triangolo Default nella colonna Android e seleziona Mobile dal menu a discesa.
- Chiudi Project Settings.
Configura URP Assets
Nella cartella
Assets/Settings, seleziona Mobile_Renderer.Nel pannello Inspector per Mobile_Renderer, applica le seguenti modifiche:
- Rendering → Depth Priming Mode: imposta su
Disabled - Shadows → Transparent Receive Shadows: togli la spunta
- Post-processing → Enabled: togli la spunta
- Renderer Feature → SSAO: assicurati che sia disabilitato o rimosso
- Rendering → Depth Priming Mode: imposta su
Nella cartella
Assets/Settings, seleziona Mobile_RPAsset.Nel pannello Inspector per Mobile_RPAsset, applica le seguenti modifiche:
- HDR: disattiva
- Anti Aliasing (MSAA): imposta su
4x
Configurazione Play In Editor
Questa sezione descrive come configurare il progetto per supportare lo sviluppo in Play-In-Editor, riducendo la necessità di fare deploy sul dispositivo ad ogni modifica.
Prerequisiti
Completa la configurazione base sopra prima di procedere.
OpenXR Project Settings
Vai su Edit > Project Settings > XR Plug-in Management e seleziona la scheda Windows, Mac, Linux.
Initialize XR On Startup: il valore deve corrispondere a quello della scheda Android:
- Senza Dual Render Fusion → deve essere abilitato. Se disabilitato, appariranno avvisi sui subsystem mancanti.
- Con Dual Render Fusion → deve essere disabilitato. Se abilitato, apparirà un avviso di loader già inizializzato.
XR Simulation (Opzionale): abilita XR Simulation sulla scheda Windows/Mac/Linux per usare gli ambienti di simulazione AR Foundation.
Nota: I subsystem XR Simulation sono solo per l’editor e potrebbero non coprire il 100% delle funzionalità Snapdragon Spaces. QR Code Tracking non ha un subsystem di simulazione equivalente.
Abilita Base Runtime Feature per Windows/Mac/Linux
Vai su Edit > Project Settings > XR Plug-in Management > OpenXR (scheda Windows, Mac, Linux) e abilita la feature Base Runtime.
Scene Configuration — Spaces XR Simulator
Aggiungi il componente Spaces XR Simulator a un root GameObject nella scena. Il componente persiste tra i cambi di scena (DontDestroyOnLoad) e può esistere una sola istanza alla volta.
| Proprietà | Descrizione |
|---|---|
| Start Connected | Simula i glasses attivi e connessi (solo Dual Render Fusion). |
| Invert Sim Camera Display | Scambia i display del telefono e degli occhiali nell’editor (solo Dual Render Fusion). |
Shortcut Dual Render Fusion in Editor
| Evento | Scorciatoia | Menu |
|---|---|---|
| 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 |
Tip: Tutto il comportamento finale deve sempre essere verificato sul dispositivo fisico, non solo nell’editor.
Installazione Completata
Il progetto è ora configurato per lo sviluppo su LeonardoXR. Nei documenti successivi troverai le guide per:
- Configurazione VR/MR
- Features disponibili (Spaces e LeonardoXR)
- Samples di riferimento
- Interaction (XR Interaction Toolkit, XR Hands)
- Funzionalità avanzate