Penanganan anomali pelacak AR bidang
Artikel ini menjelaskan cara menangani anomali pelacak AR bidang WeChat dengan mendaftarkan callback.
Sebelum memulai
Pahami melalui Alur kerja MegaTracker:
- Pelacak AR bidang pada xr-frame pada dasarnya merupakan enkapsulasi dari kemampuan bidang 6DoF VisionKit.
- Cara kerja MegaTracker pada xr-frame.
Pahami Konsep dan alur Sesi AR
Mengapa terjadi anomali deteksi bidang
Dalam situasi tertentu (seperti dinding putih besar di gambar, kamera tertutup dalam waktu lama, dll.), pelacak AR bidang WeChat mungkin mengalami anomali status.
Saat ini pelacak AR bidang tidak dapat menghasilkan pose kamera per frame secara normal (yaitu data 6DoF) sehingga menyebabkan MegaTracker tidak dapat bekerja.
Ketika gambar kembali normal (tekstur kaya, kamera tidak tertutup) selama beberapa waktu, pelacak AR bidang akan pulih, dan MegaTracker juga akan kembali bekerja.
Setelan perilaku saat deteksi bidang anomali
Daftarkan callback penanganan anomali melalui setPlaneDetectionErrorBehavior(behavior). Ketika anomali terdeteksi, callback ini akan dipicu, dan pengembang dapat mengimplementasikan peringatan kustom, menyembunyikan konten 3D, atau logika penanganan lainnya di dalamnya.
session.setPlaneDetectionErrorBehavior(() => {
wx.showToast({
icon: 'none',
title: `Hasil deteksi bidang WeChat anomali, arahkan kamera ke bidang dan gerakkan bolak-balik untuk memulihkan pelacakan`,
duration: 2000,
});
});
Contoh ini menggunakan antarmuka setPlaneDetectionErrorBehavior(behavior) dari session untuk mendaftarkan callback yang memunculkan jendela Toast, dipicu saat deteksi bidang anomali.