я пытаюсь Vuforia в моем проекте единства, но сценарий не работает - PullRequest
0 голосов
/ 11 ноября 2019

my Errors: 1.Severity Код Описание Ошибка состояния подавления строки файла проекта CS1061 «Якорь» не содержит определения «преобразование», и не найден доступный метод расширения «преобразование», принимающий первый аргумент типа «Якорь»(вам не хватает директивы using или ссылки на сборку?) Assembly-CSharp C: \ Users \ $$$ \ Documents \ car \ Assets \ DeployStageOnce.cs 45 Active

2. Код безопасности Описание Строка файла проектаОшибка состояния подавления CS0029 Невозможно неявно преобразовать тип 'Vuforia.Anchor' в 'UnityEngine.GameObject' Assembly-CSharp C: \ Users \ $$$ \ Documents \ car \ Assets \ DeployStageOnce.cs 55 Active

здесь`мой код:

    using System;
    using UnityEngine;
    using Vuforia;


    public class DeployStageOnce : MonoBehaviour
    {
        public GameObject AnchorStage;
        private PositionalDeviceTracker _deviceTracker;
        private GameObject _previousAnchor;

        public void Start()
        {
            if (AnchorStage == null)
            {
                Debug.Log("AnchorStage must be specified");
                return;
            }
            AnchorStage.SetActive(false);
        }

        public void Awake()
        {
            VuforiaARController.Instance.RegisterVuforiaStartedCallback(onVuforiaStarted);
        }
        public void OnDestroy()
        {
            VuforiaARController.Instance.UnregisterVuforiaStartedCallback(onVuforiaStarted);
        }
        private void onVuforiaStarted()
        {
            _deviceTracker = TrackerManager.Instance.GetTracker<PositionalDeviceTracker>();
        }
        public void OnInteractiveHitTest(HitTestResult result)
        {
            if (result == null || AnchorStage == null)
            {
                Debug.LogWarning("Hit test is invalid or AnchorStage not set");
                return;
            }
            var anchor = _deviceTracker.CreatePlaneAnchor(Guid.NewGuid().ToString(), result);

            if (anchor !=null)
            {
                AnchorStage.transform.parent = anchor.transform;
                AnchorStage.transform.localPosition = Vector3.zero;
                AnchorStage.transform.localRotation = Quaternion.identity;
                AnchorStage.SetActive(true);
            }
            if (_previousAnchor != null)
            {
                Destroy(_previousAnchor);
            }

            _previousAnchor = anchor;
        }
    }
...