Table of Contents

Aggiungere un obiettivo di tracciamento Mega Go

Questo articolo illustra come aggiungere e configurare un obiettivo di tracciamento per Mega Go.

Prima di iniziare

Nota

Il contenuto e gli strumenti seguenti sono applicabili solo al processo di sviluppo di applicazioni Unity con EasyAR Mega Go. È richiesta una versione del plugin >= 4003.1.

Mega Go non supporta lo sviluppo di mini-app.

Per il contenuto di questo articolo, è necessario importare i seguenti pacchetti Unity nel progetto:

  • com.easyar.sense

Obiettivi di tracciamento di Mega Go

Gli obiettivi di tracciamento di Mega Go sono oggetti vuoti contenenti il componente MegaGoBlockController, che rappresentano un blocco in Unity.

alt text

Nota

Quando il pacchetto com.easyar.mega non è importato, le funzionalità dell'editor per i blocchi non sono disponibili, ma ciò non influisce sull'effetto e sulle funzionalità di tracciamento in fase di esecuzione.

Creare un obiettivo di tracciamento

Fai clic con il pulsante destro del mouse in un spazio vuoto nella vista Hierarchy e seleziona EasyAR Sense > Mega > Target : Mega Go Block dal menu per creare un obiettivo di tracciamento per Mega.

alt text

Nel codice, puoi utilizzare ARSessionFactory.CreateController per creare l'obiettivo.

ARSessionFactory.CreateController<MegaGoBlockController>();

Configurare l'obiettivo di tracciamento

Prima di utilizzare un target, è necessario configurare la sua fonte di dati e il tracciamento.

Configurare la fonte di dati del target

L'obiettivo di tracciamento può essere riconosciuto e tracciato solo dopo aver configurato correttamente la sua fonte.

Nella vista Hierarchy, seleziona il nodo del blocco e compila il tipo di percorso (Path Type) e il percorso (Path) del blocco.

Nel codice, puoi modificare Source prima del metodo MonoBehaviour.Start() del componente per impostare la fonte del blocco.

block.Source = new MegaGoBlockController.FileSourceData(PathType.Absolute, path);

Dove:

  • PathType è il tipo di percorso del file .emg, che può essere un percorso assoluto (Absolute) o un percorso all'interno della cartella StreamingAssets del progetto (StreamingAssets).
  • Path è il percorso del file .emg. Quando PathType è Absolute, è il percorso assoluto nel sistema di file. Quando PathType è StreamingAssets, è il percorso relativo all'interno della cartella StreamingAssets del progetto.
Consiglio

I file .emg dovrebbero essere scaricati dalla pagina Mega Go del Centro di sviluppo EasyAR.

Consiglio

Poiché i file .emg possono essere piuttosto grandi, se la dimensione del pacchetto dell'applicazione è troppo grande, si consiglia di utilizzare il percorso StreamingAssets solo in fase di test. Quando si rilascia l'applicazione ufficialmente, utilizzare il percorso assoluto e posizionare il file .emg in un percorso del sistema di file accessibile dall'applicazione tramite pacchetti di risorse o altri metodi.

Configurare il tracciamento utilizzato dal target

L'obiettivo di tracciamento verrà caricato e tracciato dal tracciamento configurato.

Importante

Il tracciamento di Mega Go può tracciare solo un blocco alla volta. Se più blocchi sono configurati per lo stesso tracciamento, solo l'ultimo blocco caricato verrà utilizzato.

Nella vista Hierarchy, seleziona il nodo del blocco e quindi seleziona Mega Go Tracker nella session.

Nel codice, puoi modificare Tracker per impostare il tracciamento del blocco.

block.Tracker = megaGoTracker;

Tracker può essere modificato in qualsiasi momento in fase di esecuzione. Il caricamento e lo scaricamento si verificano durante l'esecuzione della session. Se si imposta Tracker su null, il target verrà rimosso dal tracciamento precedentemente configurato.

Nota

Per il tracciamento di un target, sono necessarie le seguenti condizioni chiave:

  1. Il blocco corrispondente a Source deve essere in uno stato utilizzabile (i dati ufficiali sono sempre utilizzabili offline, mentre i dati di test sono utilizzabili solo se presenti nel servizio).
  2. Il file di MegaGoBlockController.Source deve essere caricato correttamente.
  3. Dopo il caricamento del file, non deve essere caricato il file corrispondente a un altro blocco.

Ciclo di vita dell'obiettivo di tracciamento

Un ciclo di vita tipico di un obiettivo di tracciamento è il seguente:

flowchart LR
  sstart((session avviata))
  sstop([session fermata])
  
  start("Target.Start")
  load("Caricamento")
  tracking[["Tracciamento continuo"]]

  sstart --> load --> tracking --> sstop
  start -. "Target.Tracker = tracker" .-> load 

Il flusso è generalmente suddiviso in diverse fasi:

  • Caricamento: L'obiettivo di tracciamento viene caricato dal tracciamento configurato, ciò si verifica dopo il metodo Start() del target stesso e l'avvio della session.
  • Processo di tracciamento: Dopo che l'obiettivo di tracciamento è stato localizzato, il tracciamento seguirà continuamente la posizione e lo stato dell'obiettivo fino a quando non viene rimosso o viene caricato un altro obiettivo.
  • Rimozione: L'obiettivo di tracciamento viene rimosso dal tracciamento, e il tracciamento smette di tracciare l'obiettivo. Questo si verifica quando la session viene fermata o quando il target viene impostato per non utilizzare il tracciamento.

Passaggi successivi

Argomenti correlati