Uso del motore Vuforia con Unity

Il motore Vuforia offre una funzionalità importante per HoloLens, la possibilità di connettere esperienze ar a immagini e oggetti specifici nell'ambiente. È possibile usare questa funzionalità per sovrapporre istruzioni dettagliate guidate sui macchinari per l'azienda industriale o aggiungere funzionalità ed esperienze digitali a un prodotto fisico o a un gioco.

Il motore Vuforia offre un'ampia gamma di funzionalità e destinazioni per rendere più flessibile il processo di sviluppo ar. Una delle funzionalità più recenti, Vuforia Model Targets, è una funzionalità chiave per usi commerciali e industriali. Le destinazioni del modello consentono alle applicazioni di riconoscere oggetti fisici come macchine, automobili o giocattoli e di tenerne traccia in base a un modello CAD o 3D digitale. Per gli usi industriali, questa funzionalità può fornire agli addetti all'assemblaggio e ai tecnici del servizio le istruzioni di lavoro e le indicazioni procedurali per l'ar mentre sono in fabbrica o fuori sul campo.

Le app del motore Vuforia esistenti create per telefoni e tablet possono essere facilmente configurate in Unity per l'esecuzione in HoloLens. È anche possibile usare il motore Vuforia per portare la nuova app HoloLens in Windows 10 tablet, ad esempio Surface Pro e Surface Book.

Get the tools

Installare le versioni consigliate di Visual Studio e Unity e quindi configurare Unity per l'Visual Studio e l'IDE e il compilatore preferiti.

Quando si installa Unity, assicurarsi di installare il back-end di scripting "Windows Store IL2CPP Scripting".

Aggiungere il pacchetto del motore Vuforia come descritto qui.

Introduzione al motore Vuforia

Il punto di partenza migliore per imparare a conoscere Vuforia Engine e HoloLens è l'esempio di HoloLens Vuforia Engine (disponibile in Unity Asset Store). L'esempio fornisce un progetto HoloLens completo che include scene preconfigurati che possono essere distribuite in un HoloLens.

Le scene mostrano come usare Vuforia Image Targets per riconoscere un'immagine e aumentarla con contenuto digitale in un'HoloLens esperienza. L'esempio di HoloLens motore Vuforia include anche una scena che mostra l'utilizzo di Destinazioni modello e VuMarks HoloLens. È possibile sostituire facilmente il proprio contenuto nelle scene per sperimentare la creazione di app HoloLens che usano il motore Vuforia.

Configurazione di un'app Vuforia per HoloLens

Lo sviluppo di un'app motore Vuforia per HoloLens è fondamentalmente uguale allo sviluppo di app del motore Vuforia per altri dispositivi. È quindi possibile applicare le impostazioni di compilazione e le configurazioni descritte nella sezione seguente. Questo è tutto ciò che serve per consentire al motore Vuforia di funzionare con i HoloLens di rilevamento spaziale e posizionale.

Compilare ed eseguire l'esempio di motore Vuforia per HoloLens

  1. Scaricare l'esempio di motore Vuforia per HoloLens da Unity Asset Store
  2. Applicare le opzioni consigliate del motore unity per la potenza e le prestazioni
  3. Aggiungere le scene di esempio a Scenes in Build.Add the sample scenes to Scenes in Build.
  4. In Build Impostazioni(Piattaforma di compilazione) passare alla piattaforma UWP facendo clic sul pulsante Add Open Scenes (Aggiungi scene aperte). image
  5. Selezionare il pulsante Impostazioni lettore.
  • Selezionare l'icona UWP ed espandere la sezione XR Impostazioni.
  • Assicurarsi che La realtà virtuale supportata sia abilitata.
  • In SDK di realtà virtuale assicurarsi che:
    • Window Mixed Reality è incluso nell'elenco e l'opzione Abilita condivisione buffer di profondità è abilitata.
    • Il formato della profondità è impostato su profondità a 16 bit.
  • Assicurarsi che la modalità di rendering stereo sia impostata su Istanza a passaggio singolo.
  1. Espandere la sezione Impostazioni pubblicazione.
  • In Funzionalità assicurarsi che siano selezionate le opzioni Client Internet, WebCam, Microfono e SpatialPerception.
  • NOTA: SpatialPerception deve essere selezionato solo se si intende usare l'API Surface Observer.
  • In Supported Device Families (Famiglie di dispositivi supportate) assicurarsi che sia selezionata l'opzione Holographic.
  1. Espandere la sezione Risoluzione e presentazione.
  • Disabilitare Esegui in background in modo che il motore Vuforia si sospende quando l'app viene messa in background e può accedere di nuovo alla fotocamera quando l'app viene ripresa.
  • Nell'elenco a discesa Orientamento predefinito verificare che sia selezionata l'opzione Orizzontale a sinistra.
  1. Tornare alla finestra Compila Impostazioni e selezionare Compila per generare un Visual Studio progetto.
  2. Compilare il file eseguibile Visual Studio e installarlo nel HoloLens.

Vuforia portale per sviluppatori

Gli sviluppatori che desiderano creare esperienze di ar con Vuforia Engine e HoloLens devono iscriversi al portale per sviluppatori Vuforia all'indirizzo developer.vuforia.com. Nel portale gli sviluppatori hanno accesso ai forum del motore Vuforia in cui possono partecipare alle discussioni della community, una libreria con documentazione approfondita su tutte le funzionalità del motore Vuforia e Vuforia Target Manager in cui gli utenti possono creare destinazioni personalizzate. Gli sviluppatori possono anche iscriversi per ottenere una licenza per sviluppatori gratuita usando Vuforia License Manager.

Rilevamento dei dispositivi con Vuforia

Rilevamento dispositivi mantiene il rilevamento anche quando una destinazione non è più in visualizzazione. Viene abilitata automaticamente per tutte le destinazioni quando è abilitato Positional Device Tracker. Per HoloLens applicazioni, Positional Device Tracker viene avviato automaticamente in Unity.

Il motore Vuforia unisce automaticamente le pose dal rilevamento della fotocamera e dal tracciamento spaziale di HoloLens per fornire posizioni di destinazione stabili indipendentemente dal fatto che la destinazione sia vista o meno dalla fotocamera.

Poiché il processo viene gestito automaticamente, non richiede alcuna programmazione da parte dello sviluppatore.

Di seguito è riportata una descrizione di alto livello del processo:

  1. Il tracker di destinazione di Vuforia riconosce la destinazione
  2. Il rilevamento di destinazione viene quindi inizializzato
  3. La posizione e la rotazione della destinazione vengono analizzate per fornire una stima della posizione affidabile per il HoloLens
  4. Il motore Vuforia trasforma la posizione della destinazione nello spazio delle coordinate di mapping HoloLens spaziale
  5. HoloLens il rilevamento se la destinazione non è più in visualizzazione. Ogni volta che si osserva di nuovo la destinazione, Vuforia continuerà a tenere traccia delle immagini e degli oggetti in modo accurato.

Le destinazioni rilevate, ma non più visualizzate, vengono segnalate come EXTENDED_TRACKED. In questi casi, lo script DefaultTrackableEventHandler usato in tutte le destinazioni continua a eseguire il rendering del contenuto di aumento. Lo sviluppatore può controllare questo comportamento implementando uno script del gestore eventi rilevabile personalizzato.

Modalità prestazioni con il motore Vuforia

È possibile tramite il motore Vuforia gestire le prestazioni nel HoloLens per l'estensione delle esperienze di ar e ridurre il carico di lavoro nella CPU. Il motore Vuforia offre tre modalità che è possibile selezionare: predefinita, per ottimizzare la velocità e per ottimizzare la qualità.

  • MODE_OPTIMIZE_SPEED consente di ridurre al minimo il carico di lavoro nel dispositivo HoloLens ed è ideale per l'estensione delle esperienze ar. È consigliabile per le situazioni in cui l'app sta verificando oggetti/destinazioni statici.
  • MODE_DEFAULT è la modalità normale, che può essere usata nella maggior parte degli scenari.
  • MODE_OPTIMIZE_QUALITY è migliore per tenere traccia delle destinazioni mobili o delle destinazioni del modello che si prevede di essere prelevate.

Impostazione della modalità

Per modificare la modalità di prestazioni in Unity, passare a Vuforia Configuration (CTRL+MAIUSC+V/Cmd+Maiusc+V) che si trova come componente in ARCamera GameObject.

  • Selezionare il menu a discesa per Modalità dispositivo fotocamera e selezionare una delle tre opzioni.

Vedere anche