Aggiungere un target di tracciamento Mega Go
Questo articolo descrive come aggiungere e configurare un target di tracciamento Mega Go.
Prima di iniziare
- Controllare La mia funzione di localization è già utilizzabile? per confermare che sia stata scaricata la map corretta.
- Importare la versione più recente del plugin EasyAR e abilitare la funzione Mega Go
- Comprendere i concetti di base e l'uso dei target di tracciamento Unity AR
Nota
I contenuti e i tool seguenti si applicano 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 program.
Il contenuto di questo articolo richiede che i seguenti pacchetti Unity siano già stati importati nel progetto:
com.easyar.sense
Target di tracciamento Mega Go
Il target di tracciamento Mega Go è un empty object che contiene il componente MegaGoBlockController. In Unity rappresenta un block.

Nota
Quando il pacchetto com.easyar.mega non è importato, le funzioni editor del block non sono disponibili, ma ciò non influisce sull'effetto e sulle funzioni di tracciamento a runtime.
Creare un target di tracciamento
In un'area vuota della vista Hierarchy, fare clic con il pulsante destro e creare un target di tracciamento Mega tramite il menu EasyAR Sense > Mega > Target : Mega Go Block.

Nello script, è possibile crearlo con ARSessionFactory.CreateController.
ARSessionFactory.CreateController<MegaGoBlockController>();
Configurare il target di tracciamento
Prima di usare un target, è necessario configurarne la sorgente dati e il tracker.
Configurare la sorgente dati del target
Un target di tracciamento può essere riconosciuto e tracciato solo dopo che la sua sorgente è configurata correttamente.
Nella vista Hierarchy, selezionare il nodo block e compilare Path Type e Path del block.

Nello script, è possibile modificare Source prima di MonoBehaviour.Start() del componente per impostare la sorgente del block.
block.Source = new MegaGoBlockController.FileSourceData(PathType.Absolute, path);
Dove:
- PathType è il tipo del percorso del file emg, che può essere un percorso assoluto (
Absolute) o il percorso StreamingAssets del progetto (StreamingAssets). - Path è il percorso del file emg. Quando PathType è
Absolute, è il percorso assoluto nel file system; quando PathType èStreamingAssets, è il percorso relativo sotto la cartella StreamingAssets nel progetto.
Consiglio
Poiché il file emg può essere grande, se la dimensione del pacchetto dell'applicazione è troppo grande, si consiglia di usare il percorso StreamingAssets solo durante la fase di test. Per la release ufficiale, usare un percorso assoluto e collocare il file emg in un percorso del file system accessibile dall'applicazione tramite resource package o altri metodi.
Configurare il tracker usato dal target
Il target di tracciamento verrà caricato e tracciato dal tracker configurato.
Importante
Il tracker Mega Go può tracciare un solo block alla volta. Se più block sono configurati contemporaneamente nello stesso tracker, verrà usato solo l'ultimo block caricato.
Nella vista Hierarchy, selezionare il nodo block e quindi selezionare il Mega Go Tracker nella session.
![]()
Nello script, è possibile modificare Tracker per impostare il tracker del block.
block.Tracker = megaGoTracker;
Tracker può essere modificato in qualsiasi momento a runtime; il caricamento/scaricamento avverrà mentre la session è in esecuzione. Se Tracker viene impostato su null, questo target verrà scaricato dal tracker impostato in precedenza.
Nota
Perché un target venga tracciato, ci sono alcune condizioni chiave:
- Il block corrispondente a Source deve essere in stato disponibile (i dati ufficiali sono sempre disponibili offline, mentre i dati di test sono disponibili solo quando tali dati esistono nel service).
- Il file di MegaGoBlockController.Source deve essere caricato correttamente.
- Dopo il caricamento del file, non deve essere caricato nessun altro file corrispondente a un altro block.
Ciclo di vita del target di tracciamento
Un ciclo di vita comune di un target di tracciamento è il seguente:
flowchart LR
sstart((session avviata))
sstop([session arrestata])
start("Target.Start")
load("Caricamento")
tracking[["Tracciamento continuo"]]
sstart --> load --> tracking --> sstop
start -. "Target.Tracker = tracker" .-> load
Il processo è suddiviso approssimativamente in alcune fasi:
- Caricamento: il target di tracciamento viene caricato dal tracker configurato. Questo avviene dopo il Start() del target stesso e dopo l'avvio della session.
- Processo di tracciamento: dopo che il target di tracciamento è stato localizzato, il tracker continuerà a tracciare posizione e stato del target finché il target non viene scaricato o non viene caricato un altro target.
- Scaricamento: il target di tracciamento viene scaricato dal tracker, e il tracker non traccia più il target. Questo avviene quando la session si arresta o quando il target viene impostato per non usare tracker.
