Table of Contents

Target di tracciamento in Unity AR - target

Un target in Unity rappresenta vari oggetti tracciabili. Di seguito scoprirai i concetti fondamentali, lo stato e il ciclo di vita del target di tracciamento in Unity AR.

Prima di iniziare

Cosa è un target

Un target è la rappresentazione in Unity di oggetti reali riconosciuti e tracciati dalle funzionalità AR. Nel mondo reale, questi oggetti possono essere immagini, oggetti 3D, mappe spaziali, ecc. Riconoscendo e tracciando questi oggetti, le applicazioni AR possono sovrapporre contenuti virtuali al mondo reale, offrendo esperienze interattive ricche.

Alcuni target sono fissi nel mondo reale (come un poster su un muro).

Questo video mostra una semplice scena AR con tracciamento di immagini. A sinistra è visualizzata la vista Hierarchy, al centro la vista Scene, a destra la vista Game. Il video è stato registrato in modalità Play dell'editor Unity utilizzando dati di simulazione. Il contenuto della vista Game corrisponde a ciò che un utente vedrebbe nel mondo reale con uno smartphone. In questo video, il target (ImageTarget) rappresenta un biglietto da visita reale. Abbiamo posizionato sopra una sfera gialla per osservarne il movimento.

Puoi notare che il target è fisso sia nel mondo reale che nella scena, mentre la telecamera che rappresenta l'utente (cono blu) si muove in base allo spostamento dell'utente nel mondo reale. Il cono bianco mostra la traiettoria passata di posizione e orientamento della telecamera. La sfera gialla è posizionata sotto il nodo target (ImageTarget), tipica organizzazione degli oggetti in questo tipo di scene.

Alcuni target sono mobili nel mondo reale (come un poster su un autobus).

Questo video mostra la stessa scena, ma questa volta abbiamo spostato il target (biglietto da visita) nel mondo reale. Osserva che quando il target si sposta, la sfera gialla lo segue, mantenendo l'allineamento nella vista Game.

Per chiarezza, in entrambi i video abbiamo disattivato la visualizzazione del gizmo di ImageTarget e utilizzato la modalità centro SessionOrigin. In queste scene, il movimento degli oggetti nella vista Scene corrisponde al mondo reale. Nelle scene AR reali, questa relazione è più complessa.

Comportamento del target nelle diverse modalità centro

In Unity, il punto di riferimento centrale per tutto il tracciamento AR è chiamato centro della session, e la regola che determina questo centro durante l'esecuzione è chiamata modalità centro. In diverse modalità centro, il comportamento del target varia:

  • Nella modalità centro SessionOrigin, il target non può essere spostato liberamente.

    La modalità SessionOrigin esiste solo in scene con tracciamento del movimento.

    Sebbene questa modalità mostri bene il movimento di target e telecamera nelle scene semplici, non è comunemente usata nelle scene AR reali perché qui la session controlla il movimento del target. A causa di errori di calcolo nel tracciamento del movimento o nelle funzionalità AR stesse, è difficile garantire che il target rimanga completamente fisso. In questo caso, il nodo radice del contenuto deve seguire il movimento del target, influenzando comportamenti come il sistema fisico in Unity.

  • Nelle modalità centro FirstTarget o SpecificTarget, se il target è selezionato come centro, può essere spostato liberamente.

    Generalmente, la modalità FirstTarget è la più comune. Garantisce che il primo target tracciato nella scena non sia controllato dalla session. Se non c'è necessità di muovere il target, rimane fisso, indipendentemente dal movimento dell'oggetto reale corrispondente.

  • Nelle modalità centro FirstTarget o SpecificTarget, se il target non è selezionato come centro, e nella modalità centro Camera, il target non può essere spostato liberamente.

    Quando si tracciano più oggetti contemporaneamente, anche se sono fissi nel mondo reale, a causa degli errori di calcolo solo un target alla volta può non essere controllato dalla session. In base alla configurazione, il movimento degli altri target non è garantito: potrebbero mostrare leggeri movimenti anche se fissi nella realtà. Considera attentamente questo comportamento con tracciamento multiplo e adatta la strategia dei contenuti di conseguenza.

Per dettagli sulla modalità centro e il movimento degli oggetti nella scena, consulta: Modalità centro.

Stati del target

Lo stato del target riflette la sua rilevazione e tracciamento nella session corrente. Gli stati comuni includono:

  • Tracciato (Tracked): il target è stato riconosciuto e tracciato con successo. L'applicazione AR può sovrapporre contenuti virtuali che si adattano all'oggetto reale.
  • Non tracciato (Not Tracked): il target non è attualmente rilevato o tracciato. Se l'applicazione AR sovrappone contenuti, non si adatteranno all'oggetto reale.

Durante i cambiamenti di stato, puoi reagire tramite questi eventi:

  • TargetFound: attivato quando il target viene riconosciuto e tracciato con successo.
  • TargetLost: attivato quando il target perde lo stato di tracciamento.

Ciclo di vita del target

Nelle scene AR di Unity, i target sono generalmente gestiti dai componenti frame filter corrispondenti. Il frame filter elabora i dati dell'immagine dal frame source, riconoscendo e tracciando i target al suo interno. Il ciclo di vita del frame filter dipende dalla session. Sebbene diverse funzionalità AR possano variare nell'implementazione, generalmente all'avvio della session i target vengono caricati, diventando controllati dalla session dopo il caricamento. All'arresto della session, i target vengono scaricati e rimangono in posizione fino al riutilizzo nella session successiva o alla rimozione manuale.

Prossimi passi

Argomenti correlati