Table of Contents

Aggiungere obiettivi di tracciamento Mega

Questo articolo spiega come aggiungere obiettivi di tracciamento Mega e come caricare modelli ambientali nell'editor Unity per supportare lo sviluppo.

Prima di iniziare

Nota

Il seguente contenuto e gli strumenti si applicano solo al processo di sviluppo di app Unity utilizzando EasyAR Mega.

Se stai sviluppando mini-programmi, consulta creare e caricare annotazioni utilizzando l'editor Unity (sviluppo di mini-programmi).

Se desideri solo visualizzare i risultati della mappatura Mega, consulta anteprima mesh 3D scenica nella guida all'utilizzo di Mega.

Se hai bisogno di simulare l'esecuzione per verificare l'effetto di localizzazione ma non disponi di un progetto applicativo Unity utilizzabile, consulta anteprima simulata dell'effetto nella guida all'utilizzo di Mega.

Obiettivi di tracciamento Mega

Gli obiettivi di tracciamento Mega sono oggetti vuoti contenenti un componente BlockController, chiamati block. Nella scena, i block sono organizzati sotto un oggetto vuoto contenente un componente BlockRootController, il cui nome predefinito è MegaBlocks. Tutti gli oggetti block sotto MegaBlocks rappresentano gli obiettivi di tracciamento nella libreria di localizzazione corrente.

alt text

Durante lo sviluppo è spesso necessario utilizzare modelli block per visualizzare e posizionare contenuti 3D. Questo modello può essere caricato nella scena utilizzando strumenti per facilitare la visualizzazione e il riferimento.

alt text

La posizione del modello è allineata con l'obiettivo di tracciamento block, consentendo il posizionamento diretto di contenuti 3D sul modello.

Consiglio

I modelli sono memorizzati sotto i nodi degli strumenti, esistono solo in modalità editor e non vengono inclusi nell'applicazione finale.

Aggiungere obiettivi di tracciamento nell'editor

Questo metodo richiede la configurazione di BlockHolder.BlockRootSource come External (predefinito) o Mixed.

alt text

Aggiungere lo strumento Block Viewer for Unity Developer

Nella vista Hierarchy, fai clic con il tasto destro del mouse su uno spazio vuoto, quindi seleziona EasyAR Mega > Tool > Block Viewer for Unity Developer (Edit Mode) dal menu per aggiungere lo strumento Block Viewer per sviluppatori Unity.

alt text

Importante

Durante lo sviluppo di app Mega con Unity, è necessario utilizzare lo strumento Block Viewer for Unity Developer. Gli altri strumenti sotto il menu EasyAR Mega > Tool non sono adatti per lo sviluppo di app Unity.

Sebbene Annotation Tool abbia funzionalità simili, alcune parti di questo strumento verranno rimosse nelle versioni future e pertanto non è consigliato.

Le funzionalità di annotazione di Annotation Tool (solo le annotazioni stesse) saranno presto migrate alla pagina web EasyAR Developer Center, mentre il caricamento della mesh block e il posizionamento dei modelli non sono interessati.

Dopo aver aggiunto correttamente lo strumento, nella gerarchia della scena appariranno un nodo EasyAR.Mega.BlockViewer (Dev) e un nodo MegaBlocks.

alt text

Generare obiettivi di tracciamento - block

Seleziona il nodo EasyAR.Mega.BlockViewer (Dev), inserisci le informazioni dell'account EasyAR nel pannello Inspector e accedi;

alt text

Fai clic sul pulsante a destra di Mega Cloud Service;

alt text

Seleziona il Servizio di localizzazione Mega che desideri utilizzare, quindi fai clic su OK.

alt text

Dopo aver selezionato il servizio, l'elenco dei block nella libreria corrente verrà visualizzato sotto il nodo MegaBlocks e nel pannello dello strumento.

alt text

Consiglio

Perché sotto il mio MegaBlocks è vuoto?

Si consiglia di verificare la mia libreria di localizzazione è utilizzabile?

A questo punto sono stati generati gli obiettivi di tracciamento block. Ogni nodo figlio che inizia con Block_ sotto il nodo MegaBlocks rappresenta un obiettivo di tracciamento block.

Caricare il modello block

Fai clic su Carica per selezionare il Block:

alt text

Al termine del caricamento, il Block verrà visualizzato nella finestra Scene.

alt text

Aggiungere automaticamente obiettivi di tracciamento al successo della localizzazione

Questo metodo richiede la configurazione di BlockHolder.BlockRootSource come Internal o Mixed.

In queste due modalità, se viene localizzato un nuovo block e non esiste tale block sotto il nodo BlockHolder.BlockRoot, il nuovo block verrà automaticamente aggiunto sotto il nodo BlockHolder.BlockRoot. Se BlockHolder.BlockRoot non esiste, verrà creato automaticamente.

Consiglio

Quando si aggiungono automaticamente obiettivi di tracciamento al successo della localizzazione, non è possibile caricare modelli block, ma solo aggiungere obiettivi di tracciamento block.

Aggiungere obiettivi di tracciamento tramite script

Questo metodo richiede la configurazione di BlockHolder.BlockRootSource come Internal o Mixed, in questo caso se BlockHolder.BlockRoot non esiste verrà creato automaticamente. In alternativa, è possibile specificare in anticipo l'oggetto BlockHolder.BlockRoot nell'editor quando BlockHolder.BlockRootSource è External.

Nota

Se un block non è nella libreria di localizzazione, non potrà essere localizzato anche se aggiunto alla scena tramite script.

È possibile utilizzare il metodo BlockHolder.Hold per aggiungere un nuovo block sotto il nodo BlockHolder.BlockRoot. Questo metodo è comunemente usato quando si utilizzano file di annotazione ema, dove gli script leggono le informazioni di annotazione e aggiungono block.

Ad esempio, il seguente frammento di codice mostra come utilizzare le informazioni dal file di annotazione per aggiungere block:

foreach (var item in ema.blocks)
{
    var info = new BlockController.BlockInfo { ID = item.id.ToString(), Timestamp = item.timestamp };
    if (!item.keepTransform && item.location.OnSome)
    {
        blockHolder.Hold(info, item.location.Value);
    }
    else
    {
        blockHolder.Hold(info, item.transform.ToUnity());
    }
}
Consiglio

Quando si aggiungono obiettivi di tracciamento in runtime tramite script, non è possibile caricare modelli block, ma solo aggiungere obiettivi di tracciamento block.

Passaggi successivi

Argomenti correlati