Mendapatkan status target
Selama sesi berjalan, target akan mengalami perubahan status seperti dilacak dan hilang. Melalui konten berikut, Anda akan mempelajari cara mendapatkan dan menggunakan informasi status target, serta cara menggunakan peristiwa found dan lost untuk mengontrol tampilan konten.
Sebelum memulai
- Pahami konsep dasar, komponen, dan alur kerja sesi melalui Pengenalan ARSession.
- Pahami konsep dasar, status, dan siklus hidup target melalui Target.
Menentukan apakah target sedang dilacak
Anda dapat menggunakan properti TargetController.IsTracked untuk menentukan apakah target sedang dilacak.
Menggunakan peristiwa found dan lost target
Anda dapat menggunakan peristiwa TargetController.TargetFound dan TargetController.TargetLost untuk menangani situasi ketika target dilacak atau hilang.
Misalnya, kode berikut menunjukkan proses memutar video saat target dilacak dan menjeda pemutaran video saat target hilang:
target.TargetFound += () =>
{
if (player && player.gameObject.activeInHierarchy)
{
player.Play();
}
};
target.TargetLost += () =>
{
if (player && player.gameObject.activeInHierarchy)
{
player.Pause();
}
};
[!PERINGATAN] Jika target tidak dibongkar secara manual, TargetController.TargetLost mungkin dipanggil saat sesi berhenti. Jika sesi tidak dihentikan secara manual, ini mungkin dipanggil selama proses OnDestroy sesi. Karena urutan eksekusi OnDestroy Unity tidak dijamin, objek yang digunakan dalam peristiwa perlu diperiksa validitasnya untuk menghindari akses ke objek yang sudah dihancurkan selama proses OnDestroy.
Langkah selanjutnya
- Strategi kontrol active memperkenalkan strategi tampil dan sembunyi default objek di bawah target, serta cara menyesuaikannya sesuai kebutuhan.