Единство вуфории продлило отслеживаемые проблемы - PullRequest
0 голосов
/ 15 апреля 2019

мне нужна помощь. Я использую unity2018.2.12f1 & Vuforia 7.5.26. Моя задача - не скрывать объект, после того, как изображение не отображается в поле зрения. Я сделал трек позы устройства, позиционный режим, оптимизировал изображения и удалил код OnTrackingLost (). Работает не по назначению. При статусе NOT_FOUND камера не видит модель, но модель не исчезает. Вы можете посмотреть это в видео https://youtu.be/FHGHULr8J90

 public void OnTrackableStateChanged(
    TrackableBehaviour.Status previousStatus,
    TrackableBehaviour.Status newStatus)
{
    m_PreviousStatus = previousStatus;
    m_NewStatus = newStatus;

    if (newStatus == TrackableBehaviour.Status.DETECTED ||
        newStatus == TrackableBehaviour.Status.TRACKED ||
        newStatus == TrackableBehaviour.Status.EXTENDED_TRACKED)
    {
        Debug.Log("Trackable " + mTrackableBehaviour.TrackableName + " found");
        OnTrackingFound();
    }
    //else if (previousStatus == TrackableBehaviour.Status.TRACKED &&
    //         newStatus == TrackableBehaviour.Status.NO_POSE)
    //{
    //    Debug.Log("Trackable " + mTrackableBehaviour.TrackableName + " lost");
    //    OnTrackingLost();
    //}
    //else
    //{
    //    // For combo of previousStatus=UNKNOWN + newStatus=UNKNOWN|NOT_FOUND
    //    // Vuforia is starting, but tracking has not been lost or found yet
    //    // Call OnTrackingLost() to hide the augmentations
    //    OnTrackingLost();
    //}
}

1 Ответ

0 голосов
/ 15 апреля 2019

Хорошо, теперь я понял, что вы имели в виду.Обычно вам не нужно ничего менять в своем скрипте, если вы используете расширенное отслеживание.newStatus == TrackableBehaviour.Status.NO_POSE это утверждение всегда будет верным, если ваша камера не потеряла отслеживание (не отслеживание маркера, отслеживание в целом).Это может произойти, только если в окружающей среде недостаточно функций или, например, вы смотрите на белую стену. В противном случае , пока вы используете «Расширенное отслеживание», он будет отслеживать этот маркер.

В вашем случае проблема может заключаться в том, что приложение ожидает маркер в этой позиции, поскольку он все еще отслеживаетмаркер, но нет маркера, потому что вы переключаетесь на другую вкладку.Обычно расширенное отслеживание работает, когда вы отслеживаете маркер и отводите взгляд, и он все еще отслеживается.Вы должны проверить newStatus и посмотреть, что произойдет, когда вы переключите вкладку.

...