遵循Kudan的SampleApp脚本:
using UnityEngine;
using System.Collections;
namespace Kudan.AR.Samples
{
/// <summary>
/// Script used in the Kudan Samples. Provides functions that switch between different tracking methods and start abitrary tracking.
/// </summary>
public class SampleApp : MonoBehaviour
{
public KudanTracker _kudanTracker; // The tracker to be referenced in the inspector. This is the Kudan Camera object.
public TrackingMethodMarker _markerTracking; // The reference to the marker tracking method that lets the tracker know which method it is using
public TrackingMethodMarkerless _markerlessTracking; // The reference to the markerless tracking method that lets the tracker know which method it is using
public void MarkerClicked()
{
_kudanTracker.ChangeTrackingMethod(_markerTracking); // Change the current tracking method to marker tracking
}
public void MarkerlessClicked()
{
_kudanTracker.ChangeTrackingMethod(_markerlessTracking); // Change the current tracking method to markerless tracking
}
public void StartClicked()
{
// from the floor placer.
Vector3 floorPosition; // The current position in 3D space of the floor
Quaternion floorOrientation; // The current orientation of the floor in 3D space, relative to the device
_kudanTracker.FloorPlaceGetPose(out floorPosition, out floorOrientation); // Gets the position and orientation of the floor and assigns the referenced Vector3 and Quaternion those values
_kudanTracker.ArbiTrackStart(floorPosition, floorOrientation); // Starts markerless tracking based upon the given floor position and orientations
}
}
}
要访问Kudan的函数/事件/变量,我需要使用相同的Kudan命名空间创建脚本。我不知道这可能有什么上升或下降,因为我不太了解名称空间。
我的问题是,我可以访问那些变量/函数/ etc而不使我的脚本在同一名称空间中吗?如果是这样,怎么样?
我自己学习编程,所以我很抱歉,如果这对某些人来说太基础了,谢谢。
答案 0 :(得分:1)
如果您不想在整个脚本中使用相同的命名空间,那么在声明变量时,您需要显式声明命名空间。
所以,而不是说:
namespace Kudan.AR.Samples
{
public class SampleApp
{
public KudanTracker _kudanTracker;
}
}
你会说:
public class SampleApp
{
public Kudan.AR.KudanTracker _kudanTracker;
}
有关详细信息,我建议您查看how to use Namespaces。