1

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 と同じ名前空間を使用してスクリプトを作成する必要があります。私は名前空間をあまり理解していないので、これがどのような利点と欠点をもたらすかはわかりません。

私の質問は、スクリプトを同じ名前空間に作成せずに、これらの変数/関数/などにアクセスできますか? もしそうなら、どのように?

私は独学でプログラミングを学んでいるので、これが基本的すぎると思われる場合はお詫び申し上げます。

4

1 に答える 1

1

スクリプト全体で同じ名前空間を使用したくない場合は、変数を宣言するときに名前空間を明示的に指定する必要があります。

したがって、次のように言う代わりに:

namespace Kudan.AR.Samples
{
    public class SampleApp
    {
        public KudanTracker _kudanTracker; 
    }
}

あなたは言うでしょう:

public class SampleApp
{
    public Kudan.AR.KudanTracker _kudanTracker;
}

詳細については、Namespaces の使用方法を調べることをお勧めします。

于 2016-07-26T09:03:04.923 に答える