Table of Contents

Agregar objetivos de seguimiento de Mega Go

Este artículo describe cómo agregar y configurar los objetivos de seguimiento de Mega Go.

Antes de comenzar

Nota

El siguiente contenido y herramientas solo son aplicables al proceso de desarrollo de aplicaciones Unity con EasyAR Mega Go. Se requiere una versión del complemento >= 4003.1.

Mega Go no es compatible con el desarrollo de miniapplications.

Este artículo requiere que se hayan importado los siguientes paquetes de Unity en el proyecto:

  • com.easyar.sense

Objetivos de seguimiento de Mega Go

Los objetivos de seguimiento de Mega Go son objetos vacíos que contienen el componente MegaGoBlockController, que representan un bloque en Unity.

alt text

Nota

Cuando no se importa el paquete com.easyar.mega, la función del editor de bloques no está disponible, pero no afecta al efecto y la función de seguimiento en tiempo de ejecución.

Crear un objetivo de seguimiento

Haga clic con el botón derecho en un espacio en blanco de la vista Hierarchy y cree un objetivo de seguimiento de Mega a través del menú EasyAR Sense > Mega > Target : Mega Go Block.

alt text

En el script, puede usar ARSessionFactory.CreateController para crear un objetivo de seguimiento.

ARSessionFactory.CreateController<MegaGoBlockController>();

Configurar el objetivo de seguimiento

Antes de usar un objetivo de seguimiento, es necesario configurar su origen de datos y el rastreador.

Configurar el origen de datos del objetivo

Un objetivo de seguimiento solo se puede reconocer y seguir después de configurar correctamente su origen.

En la vista Hierarchy, puede seleccionar el nodo del bloque y luego llenar el Path Type y el Path del bloque.

En el script, puede modificar Source antes del método MonoBehaviour.Start() del componente para configurar el origen del bloque.

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

Donde:

  • PathType es el tipo de ruta del archivo .emg, que puede ser una ruta absoluta (Absolute) o una ruta de StreamingAssets del proyecto (StreamingAssets).
  • Path es la ruta del archivo .emg. Cuando PathType es Absolute, es una ruta absoluta en el sistema de archivos; cuando PathType es StreamingAssets, es una ruta relativa en la carpeta StreamingAssets del proyecto.
Consejo

El archivo .emg debe descargarse de la página de Mega Go en el Centro de Desarrollo de EasyAR.

Consejo

Dado que el archivo .emg puede ser grande, si el tamaño del paquete de la aplicación es demasiado grande, se recomienda usar solo la ruta de StreamingAssets durante la fase de prueba. En la versión oficial, use una ruta absoluta y coloque el archivo .emg en una ruta del sistema de archivos accesible por la aplicación a través de un paquete de recursos u otras formas.

Configurar el rastreador utilizado por el objetivo

El objetivo de seguimiento será cargado y seguido por el rastreador configurado.

Importante

El rastreador de Mega Go solo puede seguir un bloque a la vez. Si se configuran múltiples bloques en el mismo rastreador, solo se utilizará el último bloque cargado.

En la vista Hierarchy, puede seleccionar el nodo del bloque y luego seleccionar el Mega Go Tracker en la sesión.

En el script, puede modificar Tracker para configurar el rastreador del bloque.

block.Tracker = megaGoTracker;

Tracker se puede modificar en cualquier momento en tiempo de ejecución. La carga/descarga se producirá en tiempo de ejecución de la sesión. Si se establece Tracker en null, este objetivo se descargará del rastreador previamente configurado.

Nota

Hay varias condiciones clave para que un objetivo sea seguido:

  1. El bloque correspondiente a Source debe estar en estado disponible (los datos oficiales siempre están disponibles sin conexión; los datos de prueba solo están disponibles cuando existen en el servicio).
  2. El archivo de MegaGoBlockController.Source debe cargarse correctamente.
  3. Después de cargar un archivo, no se deben cargar otros archivos correspondientes a bloques.

Ciclo de vida de un objetivo de seguimiento

Un ciclo de vida común de un objetivo de seguimiento es el siguiente:

flowchart LR
  sstart((Inicio de la sesión))
  sstop([Fin de la sesión])
  
  start("Target.Start")
  load("Cargar")
  tracking[["Seguimiento continuo"]]

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

El proceso se divide aproximadamente en las siguientes etapas:

  • Carga: El objetivo de seguimiento es cargado por el rastreador configurado, lo cual ocurre después del método Start() del objetivo y del inicio de la sesión.
  • Proceso de seguimiento: Después de localizar el objetivo de seguimiento, el rastreador seguirá continuamente la posición y el estado del objetivo hasta que se descargue el objetivo o se cargue otro objetivo.
  • Descarga: El objetivo de seguimiento se descarga del rastreador y el rastreador deja de seguirlo. Esto ocurre cuando se detiene la sesión o se configura el objetivo para que no use el rastreador.

Pasos siguientes

Temas relacionados