Table of Contents

Manejo de excepciones del plane AR tracker

Este artículo presenta cómo manejar excepciones del plane AR tracker de WeChat mediante el registro de callbacks.

Antes de empezar

Por qué aparecen excepciones de plane detection

En ciertas situaciones, como cuando aparece una gran pared blanca en la imagen o la cámara permanece bloqueada durante mucho tiempo, el plane AR tracker de WeChat puede entrar en un estado anormal.

En ese momento, el plane AR tracker no puede emitir normalmente la pose de cámara de cada frame, es decir, datos 6DoF, lo que hará que MegaTracker no pueda funcionar.

Después de que la imagen vuelva a la normalidad durante un tiempo, con texture rica y la cámara sin bloquear, el plane AR tracker reanudará su funcionamiento y MegaTracker también volverá a funcionar.

Configurar el comportamiento cuando plane detection es anormal

Registre un callback de manejo de excepciones mediante setPlaneDetectionErrorBehavior(behavior). Cuando se detecte una excepción, este callback se activará, y el desarrollador puede implementar indicaciones personalizadas, ocultar contenido 3D u otra lógica de manejo.

session.setPlaneDetectionErrorBehavior(() => {
    wx.showToast({
        icon: 'none',
        title: `微信平面检测结果异常,请将相机对着平面来回移动以恢复跟踪`,
        duration: 2000,
    });
});

En este ejemplo, se usa la interface setPlaneDetectionErrorBehavior(behavior) de session para registrar un callback que muestra una ventana Toast y se activa cuando plane detection es anormal.