这是我的第一篇文章。
我学习Unity和C#已经一个月了,我找不到任何适合我理解水平的参考资料所以我在这里发帖。
我正在使用 unity3d + vuforia 为 IOS 制作 AR 应用程序原型。
当部署到我的手机时,它会显示父级游戏对象,但一旦区域目标丢失,一切都会消失。我的假设是我必须通过指定目标何时丢失来维护对象位置。我也尝试了不同的方法,但它们没有用。
这是我尝试实现的代码,但似乎我的 IDE 无法识别 vuforia 库,或者我使用的是过时的代码。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Vuforia;
public class AreaTargetObjectPersistence : MonoBehaviour, ITrackableEventHandler
{
private TrackableBehaviour areaTarget;
private bool isTracking;
private Vector3 initialPosition;
void Start()
{
// Get the TrackableBehaviour component from the Area Target
areaTarget = GetComponent<TrackableBehaviour>();
if (areaTarget)
{
// Register this script as the event handler for the Area Target
areaTarget.RegisterTrackableEventHandler(this);
}
// Store the initial position of the object
initialPosition = transform.position;
}
void Update()
{
// If the Area Target is currently being tracked
if (isTracking)
{
// Update the object's position to match the Area Target's position
transform.position = areaTarget.transform.position;
transform.rotation = areaTarget.transform.rotation;
}
}
public void OnTrackableStateChanged(TrackableBehaviour.Status previousStatus, TrackableBehaviour.Status newStatus)
{
if (newStatus == TrackableBehaviour.Status.TRACKED)
{
// Area Target is being tracked
isTracking = true;
}
else
{
// Area Target is lost
isTracking = false;
}
}
public void OnTargetLost()
{
// Reset the object's position to the initial position when target is lost
transform.position = initialPosition;
transform.rotation = Quaternion.identity;
}
}
我得到这些错误:
有时它似乎无法识别 OnTargetLost() 和 OntargetFound()
在 Xcode 上各种关于被弃用的东西的警告
我应该使用锚点吗?
在此先感谢您的帮助,建设性的批评和建议被很好地接受。