首页 > 解决方案 > 是否有任何使用 Vuforia 统一跟踪图像的 Bool 类型函数

问题描述

我的项目很简单。我想创建一个 3d 对象并将其从跟踪图像移动到另一个跟踪图像。我设法做到了,但我有一个问题。

我希望我的计时器在两个图像都被跟踪时启动。我是编码新手,如果我的图像被跟踪或扩展跟踪,我不明白是否有任何布尔类型的函数是正确的。

我阅读了 vuforia 的脚本和 api,但我不明白它是如何工作的。

我需要这部分代码的帮助:

 if ( aImage.Status == DefaultObserverEventHandler.TrackingStatusFilter.Tracked_ExtendedTracked && bImage.Status ==DefaultObserverEventHandler.TrackingStatusFilter.Tracked_ExtendedTracked )

我的代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Lerp : MonoBehaviour
{
    [SerializeField] public GameObject cube; //My 3d object
    [SerializeField] private Transform a; // Image A position
    [SerializeField] private Transform b; //Image B position
    private float time = 0;
    [SerializeField] public GameObject aImage;
    [SerializeField] public GameObject bImage;
    


    void Start()
    {
       
        time = 0;
    }

    private void Update()
    {
       
        Vector3 startPosition = a.position;
        Vector3 targetPosition = b.position;

       
        if ( aImage.Status == DefaultObserverEventHandler.TrackingStatusFilter.Tracked_ExtendedTracked && bImage.Status ==DefaultObserverEventHandler.TrackingStatusFilter.Tracked_ExtendedTracked )
        {

            time += Time.deltaTime;
            Debug.Log("time:" + time);
            cube.transform.position = Vector3.Lerp(startPosition, targetPosition, time / 5f);
            if (time == 5f || time > 5f)
            {
                time = 0;
            }
        }
       
    }
}

标签: c#unity3daugmented-realityvuforia

解决方案


推荐阅读