Table of Contents

평면 ar 추적기 예외 처리

이 글은 콜백 등록을 통해 WeChat 평면 AR 추적기의 예외를 처리하는 방법을 소개합니다.

시작하기 전에

평면 감지 예외가 발생하는 이유

특정 상황(예: 대규모 흰 벽이 화면에 나타나거나 카메라가 오랜 시간 가려진 경우 등)에서 WeChat 평면 AR 추적기가 상태 예외를 발생시킬 수 있습니다.

이때 평면 AR 추적기는 프레임별 카메라 포즈(즉 6DoF 데이터)를 정상적으로 출력할 수 없어 MegaTracker가 작동하지 않게 됩니다.

화면이 정상화되고(텍스처가 풍부해지고 카메라가 가려지지 않음) 일정 시간이 지나면 평면 AR 추적기가 작동을 재개하며, MegaTracker도 다시 작동합니다.

평면 감지 예외 시 동작 설정

setPlaneDetectionErrorBehavior(behavior)를 통해 예외 처리 콜백을 등록하세요. 예외가 감지되면 이 콜백이 트리거되어 개발자는 사용자 지정 안내 표시, 3D 콘텐츠 숨김 또는 기타 처리 로직을 구현할 수 있습니다.

session.setPlaneDetectionErrorBehavior(() => {
    wx.showToast({
        icon: 'none',
        title: `Wechat 평면 감지 결과 예외, 추적 복구를 위해 카메라를 평면을 향해 움직여 주세요`,
        duration: 2000,
    });
});

이 예시는 세션의 setPlaneDetectionErrorBehavior(behavior) 인터페이스를 사용하여 Toast 창을 표시하는 콜백을 등록하며, 평면 감지 예외 시 트리거됩니다.