1

Kudan プラグイン for Unity の StartInputFromImage メソッドの使い方について教えてください。

Kudan TrackingMethodMarkerless によって処理されるテクスチャとして、通りの画像 (たとえば、これ: https://upload.wikimedia.org/wikipedia/commons/3/39/Downtown_Temple,_TX_at_Main_Street_IMG_2384.JPG )を使用したいとします。.


Start() の KudanTracker クラスには、次のコードがあります。 // カメラを開始します。

#if UNITY_EDITOR
if (_trackerPlugin.StartInputFromCamera(_playModeWebcamID, DefaultCameraWidth, DefaultCameraHeight)) 
#else
if (_trackerPlugin.StartInputFromCamera(0, DefaultCameraWidth, DefaultCameraHeight)) 
#endif

ここで入力方法を変更するだけでよいと考えたので、次のように変更しました。

#if UNITY_EDITOR
if (_trackerPlugin.StartInputFromImage(myImage))
#else
if (_trackerPlugin.StartInputFromImage(myImage))
#endif

しかし、エディターでアプリを実行すると、Unity がエラーでクラッシュします。このメソッドの TrackerWindows 実装が次のようになっていることが原因であると思われます。

public override bool StartInputFromImage(Texture2D image)
{
    // First stop existing input
    bool wasTracking = _isTrackingRunning;
    StopInput();
    // Resume tracking
    if (wasTracking)
    {
        StartTracking();
    }
    return true;
}

...つまり、これは文字通り画像には何もしません。

TrackerAndroid での同じメソッドの実装は、より有望に見えたので、私はそれを採用しました。なぜなら、私は Android アプリを開発しているからです。

ただし、コードは ArbiTrackGetPose() メソッドでスタックします。

プロセスは次のようになります。

1) KudanTracker.Update() で - _currentTrackingMethod.ProcessFrame() が呼び出されます

2) in TrackingMethodMarkerless.ProcessFrame() - _kudanTracker.ArbiTrackGetPose(アウト位置、アウト方向) が呼び出されます

3) TrackerAndroid.ArbiTrackGetPose() で - m_KudanAR_Instance.Call ("updateArbi", _floorHeight) が呼び出されますが、適切に実行されません。次のコードはコンパイルされません。そして、「updateArbi」機能を完全に調べることができないため、何が問題なのかわかりません。


別のアプローチを使用する必要がありますか?私の間違いに気づきましたか?ご提案ありがとうございます。

4

0 に答える 0