Añadir un objetivo de seguimiento de Mega
Este artículo describe cómo añadir y configurar un objetivo de seguimiento de Mega.
Antes de empezar
- Comprueba ¿Está lista mi biblioteca de localización para usar?
- Importa la última versión del plugin EasyAR y activa la función Mega
- Conoce los conceptos básicos y métodos de uso de objetivos de seguimiento de Unity AR
Nota
El siguiente contenido y herramientas solo son aplicables al proceso de desarrollo de aplicaciones Unity con EasyAR Mega.
Si estás desarrollando una mini-programa, consulta Crear y cargar anotaciones con el editor Unity (desarrollo de mini-programa).
Si no estás desarrollando una aplicación Unity pero quieres ver el resultado de cartografía de Mega, consulta Vista previa de malla de escenario 3D en la guía de uso de Mega.
Si no estás desarrollando una aplicación Unity pero necesitas ejecutar la simulación para ver el efecto de localización, consulta Vista previa de efecto de ejecución de simulación en la guía de uso de Mega.
El contenido de este artículo requiere que los siguientes paquetes de Unity ya hayan sido importados en el proyecto:
com.easyar.sense
Objeto de seguimiento de mega
El objeto de seguimiento de Mega es un objeto vacío que contiene el componente MegaBlockController, que representa un bloque en Unity.

Nota
Cuando el paquete com.easyar.mega no está importado, las funciones del editor para bloques no están disponibles, pero esto no afecta el efecto de seguimiento ni la funcionalidad en tiempo de ejecución.
Si la función de Mega no está habilitada correctamente en la configuración, no se podrá utilizar.

Crear un objetivo de seguimiento
Haga clic con el botón derecho en un espacio vacío en la vista Hierarchy y seleccione EasyAR Sense > Mega > Target : Mega Block en el menú para crear un objetivo de seguimiento de Mega.

En el script, se puede crear utilizando ARSessionFactory.CreateController.
ARSessionFactory.CreateController<MegaBlockController>();
Configurar objetivo de seguimiento
Configurar origen de datos target
Los objetivos de seguimiento solo pueden ser reconocidos y rastreados después de configurar correctamente su origen.
En la vista Hierarchy, puedes seleccionar el nodo block y luego completar el ID y el nombre de block.

En un script, puedes modificar Source antes del componente MonoBehaviour.Start() para configurar el origen de block.
block.Source = new MegaBlockController.BlockInfoSourceData(id, name);
En este caso:
- el block id es el identificador único de block, y debe ser completado obligatoriamente.
- el block name es el nombre de block, se puede completar libremente según las necesidades, generalmente se recomienda completar el nombre real de block para facilitar su reconocimiento.
Consejo
el block id y el nombre se pueden obtener desde la biblioteca de localización correspondiente en el centro de desarrollo de EasyAR.

Si no hay datos de block en la biblioteca de localización, debes agregar el block necesario en la biblioteca de localización y verificar nuevamente que la biblioteca de localización en nube es válida.
Configuración del rastreador utilizado por target
El target de rastreo será cargado por el rastreador configurado y rastreado después de ser localizado correctamente.
En la vista Hierarchy, puedes seleccionar el nodo block y luego seleccionar Mega Tracker en la sesión.
![]()
En el script, puedes modificar Tracker para configurar el rastreador del block.
block.Tracker = megaTracker;
Tracker se puede modificar en cualquier momento durante el tiempo de ejecución, la carga/desinstalación ocurrirá mientras la sesión está en ejecución. Si se establece Tracker como null, este target será desinstalado del rastreador configurado anteriormente. La carga del block es un proceso virtual y no fallará.
Nota
Hay varias condiciones clave para que el target sea rastreado:
- El id de MegaBlockController.Source debe estar configurado correctamente antes de MonoBehaviour.Start().
- El block correspondiente al id de Source debe existir en la biblioteca de localización.
- MegaBlockController.Tracker debe estar configurado para usar la biblioteca de localización correcta.
Ciclo de vida de objetivos de seguimiento
Un ciclo de vida común de un objetivo de seguimiento es el siguiente:
flowchart LR
sstart((session 启动))
sstop([session 停止])
start("Target.Start")
load("加载")
tracking[["持续跟踪"]]
sstart --> load --> tracking --> sstop
start -. "Target.Tracker = tracker" .-> load
El proceso se divide aproximadamente en varias etapas:
- Carga: el objetivo de seguimiento es cargado por el rastreador configurado, esto ocurre después de que el propio target ejecute Start() y se inicie la session.
- Proceso de seguimiento: después de que el objetivo de seguimiento sea localizado, el rastreador seguirá continuamente la posición y el estado del objetivo hasta que otro objetivo sea localizado.
- Descarga: el objetivo de seguimiento se descarga del rastreador y el rastreador deja de seguir al objetivo. Esto ocurre después de que la session se detenga o se configure que el target no utilice el rastreador.







