Grazie al successo selvaggio di Pokémon GO, la realtà aumentata (AR) sta ricevendo molta attenzione nel mondo dello sviluppo mobile. L'idea della realtà aumentata non è nuova, ma solo ora la tecnologia si sta finalmente avvicinando alla maturità e alla redditività commerciale. Ma cos'è esattamente la realtà aumentata?
Questo è un concetto molto ampio che può assumere molte forme diverse. L'idea può essere applicata a intrattenimento, scienza, militare, educazione, come lo chiami. Ciò che queste applicazioni hanno in comune, però, è una connessione in tempo reale tra il mondo fisico e il digitale.
Una visione diretta o indiretta diretta di un ambiente fisico, reale, i cui elementi sono aumentati (o integrati) da input sensoriali generati dal computer come audio, video, grafica o dati GPS. - Wikipedia
Concretamente, l'AR viene spesso realizzato in esperienze interattive che si sovrappongono a un feed fotografico con oggetti 2D o 3D, informati da alcuni dati del sensore.
Tuttavia, creare un'esperienza di realtà aumentata coinvolgente da zero può essere una vera sfida. Fortunatamente, ci sono alcune soluzioni disponibili che possono semplificare questo lavoro. Uno dei più solidi strumenti di realtà aumentata in circolazione è Vuforia, una libreria AR compatibile con Android, iOS, UWP e alcune marche di occhiali intelligenti.
In questo tutorial esploreremo la realtà aumentata usando Vuforia. Esploreremo le caratteristiche, le possibilità e le sfide di Vuforia, e daremo anche un'occhiata a come funziona l'SDK e alle sue funzioni principali. In questo tutorial non esploreremo alcun codice: le esercitazioni future di questa serie tracceranno il codice in Vuforia, con guide dettagliate che riguardano tutte le funzionalità principali della libreria.
Se vuoi approfondire, perché non apprendere uno dei concetti più fondamentali di AR, marcatori, nel nostro breve corso:
Originariamente sviluppato da Qualcomm e recentemente acquistato da PTC, Vuforia è alla sua sesta versione. Il suo SDK è in continua evoluzione ed è compatibile con Android, iOS, UWP e Unity. Sfortunatamente, Vuforia non è open source, ma la sua fascia di prezzo è ragionevole e non ci sono costi iniziali per lo sviluppo o l'istruzione. Puoi creare quasi ogni tipo di esperienza AR sulle piattaforme mobili più popolari utilizzando Vuforia.
Vuforia utilizza l'alimentazione della fotocamera del dispositivo combinata con i dati dell'accelerometro e del giroscopio per esaminare il mondo. Vuforia usa la visione artificiale per capire cosa "vede" sulla fotocamera per creare un modello dell'ambiente. Dopo aver elaborato i dati, il sistema può approssimativamente trovarsi nel mondo, conoscendo le sue coordinate: dove è su, giù, sinistra, destra e così via. Quello che fai con questo dipende dai tuoi obiettivi di sviluppo.
Ci sono molteplici possibilità:
Vuforia è compatibile con più sistemi. I kit di sviluppo software (SDK) sono disponibili per Android, iOS, UWP e Unity. Una volta scaricato e installato l'SDK, dovrai registrare un account sviluppatore e creare una chiave app prima di poter iniziare a codificare.
Anche se Vuforia è compatibile con molti sistemi, il modo più semplice per creare esperienze AR accattivanti usando il suo SDK è sicuramente l'utilizzo di Unity. Non fraintendermi, puoi accedere a quasi tutto ciò che offre Vuforia sviluppando direttamente per Android o iOS. Tuttavia, il processo è molto più semplice quando si utilizzano i prefabbricati offerti su SDK di Vuforia per Unity.
Come menzionato prima, Vuforia può cercare "obiettivi" sul feed della telecamera per creare punti di ancoraggio o riferimenti da utilizzare nelle esperienze AR. Questi obiettivi possono assumere molti moduli e qualsiasi file che è stato precedentemente elaborato da Vuforia target manager può essere riconosciuto. I target possono essere creati dallo sviluppatore o creati durante l'esecuzione dall'utente.
3.1Qualsiasi tipo di immagine può essere un Vuforia Image Target. Tuttavia, più l'immagine è dettagliata e complessa, migliore sarà l'algoritmo ad essere riconosciuto. Un sacco di fattori faranno parte del calcolo di riconoscimento, ma fondamentalmente l'immagine deve avere un livello ragionevole di contrasto, risoluzione e elementi distintivi. Una fotografia di cielo blu non funzionerebbe molto bene, ma una foto di erba funzionerebbe con grazia. I target di immagine possono essere forniti con l'applicazione, creati in un secondo momento e caricati nell'applicazione tramite un sistema cloud o creati direttamente dall'app dall'utente.
Un VuMark funziona in modo molto simile a un codice QR; tuttavia, è molto più versatile. Può assumere molte forme e colori e adattarsi a un gran numero di ambienti. Il suo più grande vantaggio è che è totalmente conforme all'algoritmo di riconoscimento di Vuforia e sarà facilmente "trovato" da qualsiasi applicazione AR Vuforia. Vuforia offre anche un plugin per Adobe Illustrator che crea VuMarks.
È anche possibile utilizzare cubi e cilindri come obiettivi immagine. Questo è molto appropriato per creare coinvolgimento con i pacchetti di prodotti. Una volta riconosciuto, l'oggetto primitivo viene utilizzato come punto di ancoraggio e sembra esistere per la visione del computer del sistema, consentendo agli oggetti virtuali di interagire direttamente con la primitiva. L'oggetto virtuale potrebbe tracciare la posizione e l'orientamento dell'oggetto reale, per esempio.
Una delle caratteristiche più interessanti di Vuforia è la possibilità di riconoscere oggetti complessi. Un giocattolo, un telefono, una scheda di computer e altri tipi di oggetti possono essere utilizzati come target.
Per utilizzare questa risorsa, è necessario eseguire la scansione dell'oggetto utilizzando lo strumento Scanner oggetti Vuforia, che funziona solo su Samsung Galaxy S6 e S7. La scansione dei dati viene caricata su Vuforia Target Manager e l'oggetto scansionato sarà riconosciuto da qualsiasi dispositivo compatibile che utilizza tali dati.
Esistono diversi modi per creare un obiettivo:
Come sviluppatore, non hai molto controllo su come l'utente creerà il proprio target; tutto ciò che puoi fare è fornire all'utente alcuni suggerimenti su come scegliere un'immagine appropriata come target. Tuttavia, la situazione è diversa per i target elaborati utilizzando il Target Manager.
Il portale per sviluppatori di Vuforia ci fornisce lo strumento Target Manager per aiutare a gestire tutti gli obiettivi delle nostre app. Il gestore è molto semplice da utilizzare: si crea un database per contenere i target, si carica un file che corrisponde a un target e si attende che il file venga elaborato. Il target riceverà un ID univoco e un punteggio relativo a quanto è riconoscibile e diventerà parte del database, disponibile per il download o per l'archiviazione nel cloud.
Esistono tre diversi tipi di database di destinazione:
Quando sviluppi un'app di Vuforia su Unity, c'è un'opzione davvero eccitante disponibile, lo Smart Terrain. Consente a un'applicazione di replicare mesh 3D di oggetti visti dalla fotocamera.
Il processo funziona come una sorta di scansione, in cui l'utente utilizza la fotocamera del dispositivo come uno scanner 3D. Mentre la fotocamera scansiona l'ambiente, l'applicazione crea modelli 3D degli oggetti riconosciuti, dando all'applicazione la possibilità di adattare lo scenario al mondo reale, creando un'esperienza profondamente coinvolgente.
Ci sono centinaia di possibilità da esplorare con la realtà aumentata, e stiamo appena iniziando a scalfire la sua superficie. Molti credono che l'AR farà parte del nostro futuro e che lo useremo giorno per giorno. Questo è un campo che promette di crescere molto nei prossimi anni e Vuforia ci fornisce strumenti interessanti per creare esperienze coinvolgenti.
Nei seguenti tutorial di questa serie, lavoreremo con alcuni degli strumenti più importanti di Vuforia. Svilupperemo molti piccoli esperimenti per illustrare le funzionalità dell'SDK e poiché Unity è l'ambiente più amichevole disponibile per AR, sarà sviluppato tutto su di esso.
Non sarà necessario essere un esperto di Unity per seguire le esercitazioni, dato che il nostro obiettivo è l'SDK Vuforia, ti fornirò guide passo-passo che richiedono solo una minima esperienza precedente con Unity.
Se vuoi saperne un po 'di più su Unity nel frattempo, dai un'occhiata ad alcuni dei nostri altri tutorial.
A presto!