Grazie per aver seguito l'evento Google I/O. Dai un'occhiata alle sessioni.

Concetti di base

Prima di approfondire l'utilizzo di ARCore, è utile comprendere alcuni concetti fondamentali. Insieme, questi concetti illustrano il modo in cui ARCore consente di offrire esperienze che possono far apparire contenuti virtuali su una superficie reale o essere collegate a località del mondo reale.

Rilevamento dei movimenti

Durante il passaggio del telefono in tutto il mondo, ARCore utilizza una procedura chiamata localizzazione e mappatura simultanee, o SLAM, per capire dove si trova il telefono in relazione al mondo che lo circonda. ARCore rileva caratteristiche visive distinte nell'immagine acquisita dalla fotocamera, chiamate punti funzionalità e le utilizza per calcolare la sua posizione. Le informazioni visive vengono combinate con le misurazioni inerziali dell'IMU del dispositivo per stimare la posa (posizione e orientamento) della fotocamera in relazione al mondo nel tempo.

Allineando la posa della fotocamera virtuale che esegue il rendering dei contenuti 3D alla posizione della fotocamera del dispositivo fornita da ARCore, gli sviluppatori possono visualizzare i contenuti virtuali dal punto di vista corretto. L'immagine virtuale sottoposta a rendering può essere sovrapposta all'immagine ricevuta dalla fotocamera del dispositivo, facendola sembrare come se i contenuti virtuali fossero parte del mondo reale.

Comprensione ambientale

ARCore migliora costantemente la propria comprensione dell'ambiente reale rilevando punti di funzionalità e piani.

ARCore cerca cluster di punti funzione che sembrano trovarsi su piattaforme comuni orizzontali o verticali, come tabelle o pareti, e li rende disponibili per l'app come piani geometrici. ARCore può anche determinare il confine di ogni piano geometrico e rendere disponibili queste informazioni alla tua app. Puoi utilizzare queste informazioni per posizionare oggetti virtuali appoggiati su superfici piane.

Dato che ARCore utilizza punti funzione per rilevare piani, le superfici piane senza texture, come un muro bianco, potrebbero non essere rilevate correttamente.

Approfondimenti sulla profondità

ARCore può creare mappe di profondità, immagini che contengono dati sulla distanza tra le superfici da un determinato punto, utilizzando la fotocamera RGB principale di un dispositivo supportato. Puoi utilizzare le informazioni fornite da una mappa di profondità per offrire esperienze utente immersive e realistiche, ad esempio fare in modo che gli oggetti virtuali si sovrappongano accuratamente a superfici osservate o farli apparire davanti o dietro oggetti reali.

Stima leggera

ARCore è in grado di rilevare informazioni sull'illuminazione dell'ambiente circostante e di fornirti l'intensità media e la correzione del colore di una determinata immagine della videocamera. Queste informazioni ti consentono di illuminare gli oggetti virtuali nelle stesse condizioni dell'ambiente circostante, aumentando il senso di realismo.

Interazione utente

ARCore utilizza i test di hit per ottenere una coordinata (x,y) corrispondente allo schermo del telefono (fornito da un tocco o di qualsiasi altra interazione che l'app supporti) e proietta un raggio nella visuale della fotocamera del mondo, restituendo eventuali piani geometrici o punti di intersezione che il raggio si interseca, insieme alla posa di quell'intersezione nello spazio mondiale. Questo consente agli utenti di selezionare o interagire in altro modo con gli oggetti nell'ambiente.

Punti orientati

I punti orientati consentono di posizionare oggetti virtuali su superfici inclinate. Quando esegui un test hit che restituisce un punto funzionalità, ARCore prende in considerazione i punti funzionalità nelle vicinanze e li utilizza per tentare di stimare l'angolo della superficie in quel punto specifico. ARCore restituirà quindi una posa che prende in considerazione tale angolazione.

Poiché ARCore utilizza cluster di punti funzione per rilevare l'angolazione della superficie, le superfici senza texture, come un muro bianco, potrebbero non essere rilevate correttamente.

Anchor e tracciabili

Le posizioni possono cambiare man mano che ARCore migliora la comprensione della propria posizione e del suo ambiente. Quando vuoi posizionare un oggetto virtuale, devi definire un ancoraggio per garantire che ARCore monitori la posizione dell'oggetto nel tempo. Spesso crei un ancoraggio in base alla posa restituita da un hit hit, come descritto nell'interazione dell'utente.

Il fatto che le posizioni possano cambiare significa che ARCore potrebbe aggiornare la posizione degli oggetti ambientali come i piani geometrici e i punti funzione nel corso del tempo. Gli aerei e i punti sono un tipo speciale di oggetto chiamato tracciabile. Come il nome suggerisce, questi sono oggetti che ARCore monitora nel tempo. Puoi fissare gli oggetti virtuali a tracciabili specifici per garantire che la relazione tra l'oggetto virtuale e il tracciabile rimanga stabile anche quando il dispositivo si sposta. Ciò significa che se posizioni una statuetta Android virtuale sulla scrivania, se in un secondo momento ARCore regola la posa del piano geometrico associato alla scrivania, la statuetta Android rimarrà comunque in cima al tavolo.

Per ulteriori informazioni, consulta la pagina relativa all'utilizzo degli ancoraggi

Immagini migliorate

Le immagini avanzate sono una funzionalità che ti consente di creare app AR in grado di rispondere a specifiche immagini 2D, come la confezione del prodotto o i poster dei film. Gli utenti possono attivare esperienze AR quando puntano la fotocamera del telefono su immagini specifiche, ad esempio possono puntare la fotocamera del telefono su una locandina di un film e far uscire un personaggio e mettere in scena una scena.

ARCore monitora anche le immagini in movimento, ad esempio un cartellone sul lato di un autobus in movimento.

Le immagini possono essere compilate offline per creare un database di immagini oppure possono essere aggiunte singole immagini in tempo reale dal dispositivo. Dopo la registrazione, ARCore rileverà queste immagini, i bordi delle immagini e restituirà una posa corrispondente.

Condivisione

L'API ARCore Cloud Anchor ti consente di creare app collaborative o multiplayer per dispositivi Android e iOS.

Con Cloud Anchor, un dispositivo invia un ancoraggio e i punti di accesso nelle vicinanze al cloud per l'hosting. Questi ancoraggi possono essere condivisi con altri utenti sui dispositivi Android o iOS nello stesso ambiente. Ciò consente alle app di visualizzare gli stessi oggetti 3D collegati a questi ancoraggi, consentendo agli utenti di effettuare contemporaneamente la stessa esperienza AR.

Scopri di più

Inizia a mettere in pratica questi concetti creando esperienze AR sulla piattaforma che preferisci.