Adicionar target de rastreamento Mega Go
Este artigo descreve como adicionar e configurar um target de rastreamento Mega Go.
Antes de começar
- Verifique Minha função de localization já pode ser usada? para confirmar que o map correto foi baixado.
- Importe a versão mais recente do plugin EasyAR e habilite a função Mega Go
- Entenda os conceitos básicos e o uso dos targets de rastreamento Unity AR
Nota
O conteúdo e as tools a seguir aplicam-se apenas ao processo de desenvolvimento de aplicações Unity usando EasyAR Mega Go. É necessária a versão do plugin >= 4003.1.
Mega Go não oferece suporte ao desenvolvimento de mini program.
O conteúdo deste artigo requer que os seguintes pacotes Unity já tenham sido importados para o projeto:
com.easyar.sense
Target de rastreamento Mega Go
O target de rastreamento Mega Go é um empty object que contém o componente MegaGoBlockController. No Unity, ele representa um block.

Nota
Quando o pacote com.easyar.mega não é importado, as funções de editor do block não ficam disponíveis, mas isso não afeta o efeito nem as funções de rastreamento em runtime.
Criar target de rastreamento
Em uma área vazia da visualização Hierarchy, clique com o botão direito e crie um target de rastreamento Mega pelo menu EasyAR Sense > Mega > Target : Mega Go Block.

No script, você pode criá-lo usando ARSessionFactory.CreateController.
ARSessionFactory.CreateController<MegaGoBlockController>();
Configurar o target de rastreamento
Antes de usar um target, é necessário configurar sua fonte de dados e seu tracker.
Configurar a fonte de dados do target
Um target de rastreamento só pode ser reconhecido e rastreado depois que sua fonte é configurada corretamente.
Na visualização Hierarchy, selecione o nó block e preencha Path Type e Path do block.

No script, você pode modificar Source antes de MonoBehaviour.Start() do componente para definir a fonte do block.
block.Source = new MegaGoBlockController.FileSourceData(PathType.Absolute, path);
Onde:
- PathType é o tipo do caminho do arquivo emg, podendo ser um caminho absoluto (
Absolute) ou o caminho StreamingAssets do projeto (StreamingAssets). - Path é o caminho do arquivo emg. Quando PathType é
Absolute, é o caminho absoluto no sistema de arquivos; quando PathType éStreamingAssets, é o caminho relativo dentro da pasta StreamingAssets do projeto.
Dica
Como o arquivo emg pode ser grande, se o tamanho do pacote da aplicação for grande demais, recomenda-se usar o caminho StreamingAssets apenas durante a fase de testes. Para a publicação oficial, use um caminho absoluto e coloque o arquivo emg em um caminho do sistema de arquivos acessível pela aplicação por meio de resource package ou outros métodos.
Configurar o tracker usado pelo target
O target de rastreamento será carregado e rastreado pelo tracker configurado.
Importante
O tracker Mega Go só pode rastrear um block por vez. Se vários blocks forem configurados no mesmo tracker ao mesmo tempo, apenas o último block carregado será usado.
Na visualização Hierarchy, selecione o nó block e escolha o Mega Go Tracker na session.
![]()
No script, você pode modificar Tracker para definir o tracker do block.
block.Tracker = megaGoTracker;
Tracker pode ser modificado a qualquer momento em runtime, e o carregamento/descarregamento ocorrerá enquanto a session estiver em execução. Se Tracker for definido como null, este target será descarregado do tracker definido anteriormente.
Nota
Existem algumas condições principais para que um target seja rastreado:
- O block correspondente a Source deve estar em estado disponível (dados oficiais estão sempre disponíveis offline, e dados de teste só estão disponíveis quando esses dados existem no service).
- O arquivo de MegaGoBlockController.Source deve ser carregado corretamente.
- Depois que o arquivo for carregado, nenhum outro arquivo correspondente a outro block deve ser carregado.
Ciclo de vida do target de rastreamento
Um ciclo de vida comum de um target de rastreamento é o seguinte:
flowchart LR
sstart((session iniciada))
sstop([session parada])
start("Target.Start")
load("Carregar")
tracking[["Rastreamento contínuo"]]
sstart --> load --> tracking --> sstop
start -. "Target.Tracker = tracker" .-> load
O processo é dividido aproximadamente em algumas etapas:
- Carregamento: o target de rastreamento é carregado pelo tracker configurado. Isso ocorre após o próprio Start() do target e após a session ser iniciada.
- Processo de rastreamento: depois que o target de rastreamento é localizado, o tracker continua rastreando a posição e o estado do target até que o target seja descarregado ou outro target seja carregado.
- Descarregamento: o target de rastreamento é descarregado do tracker, e o tracker não rastreia mais o target. Isso ocorre quando a session para ou quando o target é configurado para não usar tracker.
