Mega-Tracking-Ziel hinzufügen
Dieses Dokument beschreibt, wie Sie Mega-Tracking-Ziele hinzufügen und konfigurieren.
Vor dem Start
- Prüfen Sie unter Kann meine Lokalisierungsfunktion verwendet werden?, ob die Lokalisierungsbibliothek korrekt erstellt und die Karte hinzugefügt wurde.
- Importieren Sie die neueste EasyAR-Version und aktivieren Sie die Mega-Funktion
- Verstehen Sie die grundlegenden Konzepte und die Verwendung von Unity-AR-Tracking-Zielen
Anmerkung
Die folgenden Inhalte und Werkzeuge gelten nur für die Entwicklung von Unity-Anwendungen mit EasyAR Mega.
Wenn Sie ein Mini-Programm entwickeln, lesen Sie bitte Anmerkungen mit dem Unity-Editor erstellen und hochladen (Mini-Programm-Entwicklung).
Wenn Sie keine Unity-Anwendung entwickeln, aber die Ergebnisse des Mega-Mappings ansehen möchten, lesen Sie im Mega-Leitfaden 3D-Realwelt-Mesh anzeigen.
Wenn Sie keine Unity-Anwendung entwickeln, aber die Simulation zur Lokalisierungsanzeige ausführen möchten, lesen Sie im Mega-Leitfaden Simulationseffekt anzeigen.
Dieses Dokument erfordert, dass die folgenden Unity-Pakete bereits im Projekt importiert wurden:
com.easyar.sense
Mega-Tracking-Ziele
Ein Mega-Tracking-Ziel ist ein leeres Objekt mit der Komponente MegaBlockController. Es stellt in Unity einen Block dar.

Anmerkung
Wenn das Paket com.easyar.mega nicht importiert wurde, kann die Editor-Funktion des Blocks nicht verwendet werden. Laufzeit-Tracking und die übrigen Funktionen bleiben jedoch erhalten.
Wenn die Konfiguration die Mega-Funktion nicht korrekt aktiviert, kann sie nicht verwendet werden.

Tracking-Ziel erstellen
Klicken Sie im Hierarchy-Fenster an einer freien Stelle mit der rechten Maustaste. Über das Menü EasyAR Sense > Mega > Target : Mega Block können Sie ein Mega-Tracking-Ziel erstellen.

Im Skript können Sie ARSessionFactory.CreateController verwenden, um es zu erstellen.
ARSessionFactory.CreateController<MegaBlockController>();
Tracking-Ziel konfigurieren
Datenquelle des Targets konfigurieren
Ein Tracking-Ziel kann nur erkannt und verfolgt werden, wenn seine Quelle korrekt konfiguriert ist.
Im Hierarchy-Fenster können Sie den Block-Knoten auswählen und anschließend die ID und den Namen des Blocks eintragen.

Im Skript können Sie vor MonoBehaviour.Start() die Source ändern, um die Quelle des Blocks festzulegen.
block.Source = new MegaBlockController.BlockInfoSourceData(id, name);
Dabei gilt:
- Die Block-ID ist die eindeutige Kennung des Blocks und muss angegeben werden.
- Der Block-Name ist der Name des Blocks und kann frei gewählt werden. Empfehlenswert ist der echte Name des Blocks, damit er leichter zu erkennen ist.
Tipp
Block-ID und Name können im EasyAR Developer Center aus der entsprechenden Lokalisierungsbibliothek bezogen werden.

Wenn in der Lokalisierungsbibliothek keine Blockdaten vorhanden sind, müssen Sie den benötigten Block zur Lokalisierungsbibliothek hinzufügen und anschließend erneut prüfen, ob die Cloud-Lokalisierungsbibliothek gültig ist.
Tracker für das Target konfigurieren
Das Tracking-Ziel wird vom konfigurierten Tracker geladen und nach erfolgreicher Lokalisierung verfolgt.
Im Hierarchy-Fenster können Sie den Block-Knoten auswählen und anschließend im Session-Bereich Mega Tracker wählen.
![]()
Im Skript können Sie Tracker ändern, um den Tracker des Blocks festzulegen.
block.Tracker = megaTracker;
Tracker kann zur Laufzeit jederzeit geändert werden. Laden und Entladen erfolgen während der Laufzeit der Session. Wenn Sie Tracker auf null setzen, wird das Target vom zuvor gesetzten Tracker entladen. Das Laden des Blocks ist ein virtueller Vorgang und kann nicht fehlschlagen.
Anmerkung
Damit ein Target verfolgt wird, müssen einige wichtige Bedingungen erfüllt sein:
- Die ID von MegaBlockController.Source muss vor MonoBehaviour.Start() korrekt konfiguriert sein.
- Der Block mit der ID aus Source muss in der Lokalisierungsbibliothek vorhanden sein.
- MegaBlockController.Tracker muss für die richtige Lokalisierungsbibliothek konfiguriert sein.
Lebenszyklus des Tracking-Ziels
Ein typischer Lebenszyklus eines Tracking-Ziels sieht folgendermaßen aus:
flowchart LR
sstart((Session-Start))
sstop([Session-Stopp])
start("Target.Start")
load("Laden")
tracking[["Dauerhaftes Tracking"]]
sstart --> load --> tracking --> sstop
start -. "Target.Tracker = tracker" .-> load
Der Ablauf lässt sich grob in folgende Phasen gliedern:
- Laden: Das Tracking-Ziel wird vom konfigurierten Tracker geladen. Dies geschieht nach dem eigenen Start() des Targets und nach dem Start der Session.
- Tracking: Nachdem das Tracking-Ziel lokalisiert wurde, verfolgt der Tracker dessen Position und Status fortlaufend, bis ein anderes Ziel lokalisiert wird.
- Entladen: Das Tracking-Ziel wird aus dem Tracker entfernt und der Tracker verfolgt das Ziel nicht mehr. Dies geschieht beim Stopp der Session oder wenn dem Target kein Tracker mehr zugewiesen ist.







