Table of Contents

Ajouter une target de suivi Mega

Cet article explique comment ajouter et configurer les targets de suivi Mega.

Avant de commencer

Note

Le contenu et les outils suivants s’appliquent uniquement au développement d’applications Unity avec EasyAR Mega.

Si vous développez un mini-programme, consultez Créer et publier une annotation avec Unity Editor (développement de mini-programme).

Si vous ne développez pas d’application Unity mais souhaitez visualiser les résultats de cartographie Mega, consultez Prévisualiser le maillage 3D réel dans le guide Mega.

Si vous ne développez pas d’application Unity mais souhaitez simuler l’exécution pour voir l’effet de localisation, consultez Aperçu des résultats de simulation dans le guide Mega.

Ce contenu suppose que les paquets Unity suivants ont déjà été importés dans le projet :

  • com.easyar.sense

Targets de suivi Mega

Les targets de suivi Mega sont des objets vides contenant le composant MegaBlockController, qui représente un block dans Unity.

alt text

Note

Si le paquet com.easyar.mega n’est pas importé, les fonctions d’éditeur du block ne sont pas disponibles, mais cela n’affecte ni le résultat de suivi ni les fonctions à l’exécution.

Si la configuration n’active pas correctement la fonction Mega, elle ne sera pas disponible.

alt text

Créer une target de suivi

Dans la vue Hierarchy, faites un clic droit dans une zone vide, puis utilisez le menu EasyAR Sense > Mega > Target : Mega Block pour créer une target de suivi Mega.

alt text

Dans le script, vous pouvez utiliser ARSessionFactory.CreateController pour créer.

ARSessionFactory.CreateController<MegaBlockController>();

Configurer la target de suivi

Configurer la source de données de target

Une target de suivi ne peut être reconnue et suivie que si sa source est correctement configurée.

Dans la vue Hierarchy, après avoir sélectionné le nœud block, vous pouvez renseigner l’ID et le nom du block.

Dans le script, vous pouvez modifier, avant MonoBehaviour.Start() du composant, Source pour définir la source du block.

block.Source = new MegaBlockController.BlockInfoSourceData(id, name);

  • le block id est l’identifiant unique du block et doit être renseigné
  • le block name est le nom du block et peut être rempli librement selon les besoins ; il est généralement conseillé de renseigner le vrai nom du block pour l’identification
Astuce

Le block id et le nom peuvent être récupérés depuis le dépôt de localisation correspondant dans le centre de développement EasyAR.

Si le dépôt de localisation ne contient pas de données block, il faut ajouter les blocks nécessaires dans le dépôt de localisation, puis revérifier que le dépôt cloud est valide.

Configurer le tracker utilisé par la target

La target de suivi est chargée par le tracker configuré et suivie une fois localisée correctement.

Dans la vue Hierarchy, après avoir sélectionné le nœud block, choisissez le Mega Tracker de la session.

Dans le script, vous pouvez modifier Tracker pour définir le tracker du block.

block.Tracker = megaTracker;

Tracker peut être modifié à tout moment à l’exécution ; le chargement et le déchargement se feront pendant l’exécution de la session. Si vous définissez Tracker sur null, cette target sera déchargée du tracker précédemment défini. Le chargement du block est un processus virtuel et ne peut pas échouer.

Note

Il existe plusieurs conditions clés pour qu’un target soit suivi :

  1. L’id de MegaBlockController.Source doit être correctement configuré avant MonoBehaviour.Start().
  2. Le block correspondant à l’id de cette Source doit exister dans le dépôt de localisation.
  3. MegaBlockController.Tracker doit être configuré avec le bon dépôt de localisation.

Cycle de vie de la target de suivi

Le cycle de vie typique d’une target de suivi est le suivant :

flowchart LR
  sstart((session démarrée))
  sstop([session arrêtée])
  
  start("Target.Start")
  load("Charger")
  tracking[["Suivi continu"]]

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

Le flux se décompose en plusieurs étapes :

  • Chargement : la target de suivi est chargée par le tracker configuré, ce qui se produit après le Start() de la target elle-même et après le démarrage de la session.
  • Processus de suivi : une fois la target localisée, le tracker continue de suivre sa position et son état jusqu’à ce qu’une autre target soit localisée.
  • Déchargement : la target de suivi est déchargée du tracker, et le tracker ne suit plus cette target. Cela se produit lorsque la session s’arrête ou lorsque la target est définie pour ne pas utiliser de tracker.

Étapes suivantes

Sujets associés