本文へスキップ

リリースノート v3.0

ARDK 3.0は、UnityのXRシステムやARシステムと大幅に容易に連携できるように再設計されました。

ARDK 2.Xでは、ARDKとUnityのAR/XRシステムのいずれかを使用する必要がありました。 3.0では、Niantic独自のAR機能を、UnityのAR FoundationシステムやXRサブシステムとシームレスに組み合わせて使用できます。

つまり、AR Foundationを使用するように設定されたプロジェクトであれば、XR SettingsでLightshipを有効にすることができ、ARDKはDepth、Occlusion、Meshingといった既存のシステムを上書きし、Niantic独自の機能用に新しいシステムを追加する。

また、 既存のドキュメントチュートリアル に従ってARの基本的な概念を学び、それを拡張してNianticの高度なAR機能を利用することができます。

また、ARFoundationを活用する他のサードパーティAPIを使用することもできます。

Shared AR(共有AR)をアップデートし、VPSのコロカライゼーションをサポートしました。

VPS開発ワークフローを合理化し、実世界おけるARエクスペリエンスをこれまで以上に簡単に作成できるようになりました。

Windowsの開発は現在、実験的な機能として利用可能です。

  • Windowsではレコーディングはできません。 プレイバックは可能ですが、別のソースからのレコーディングが必要となります。

ご意見・ご感想は フォーラムまでお気軽にお寄せください。

プラグインもサンプルも現在はGithubにあります。

機能/修正

  • 新しい ARSemanticSegmentationManager.FrameReceived イベントは、セマンティックサブシステムが新しいセマンティック情報を持つフレームを出力するときに呼び出されます。

主な変更点

備考

これはベータ4からの変更点であり、ARDK 2.5からの変更点ではありません

  • ARLocationManagerは、トラッキングが失われたときに、ARLocationのgameObjectを非アクティブにしなくなりました。 開発者は、ARlocationManager.locationTrackingStateChangedイベントで、gameObjectを手動で解除することができます。 これはPersistentARとVPSLocalizationのサンプルに示されている。
  • ARSemanticSegmentationManagerとXRSemanticsSubsystemでは、関数名の "CPU "を "Cpu "に変更した。 例:TryAcquireSemanticChannelCPUBuffer -> TryAcquireSemanticChannelCpuBuffer。
  • また、ARSemanticSegmentationManagerでは、IsDataAvailableがIsMetadataAvailableに、DataInitializedがMetadataInitializedに変更された。
  • IModelPreloader において、CurrentProgress が HTTP エラーを伝えるために PreloaderStatusCode を返すようになり、ダウンロードの進捗値が戻り値ではなく out パラメータになりました。

既知の問題

  • メッシング機能は32ビットのAndroidデバイスではサポートされておらず、クラッシュの原因となります。

  • ARDKによるiOS向けプロジェクトのビルドは、Windowsではサポートされていません。

  • TrySetChannelConfidenceThresholds は有効にならない。

  • 2023年6月以前に作成されたプライベートスキャンでは、VPSは横向きでは動作しません。 6月以前に作成されたプライベート・スキャンについては、ランドスケープ・モードでVPSを有効にするために、ロケーションを再度スキャンし、新しいスキャンを使用してください。 これはプライベートなスキャンにのみ影響し、パブリックのWaysportは再スキャンする必要はありません。

  • Visual Scripting 1.9.0 (Unity 2021.3.30f1 および 2022.3.10f1にデフォルトでインストールされています) を使用すると、次のエラーが発生することがあります:

    Library/Packagecache/com.unity.xr.arfoundation@5.1.0/Runtime/VisualScripting/Units/Events/EventUnits/SessionStateChangedEventUnit.cs(50,30):
    error CS0506:
    'SessionStateChangedEventUnit.StopListening(GraphStack)':
    cannot override inherited member 'EventUnit<ARSessionState>.StopListening(GraphStack)' because it is not marked virtual, abstract, or override

    このエラーが表示された場合は、パッケージマネージャのVisual Scriptingを1.9.1以上にアップグレードしてください。

  • Unity2022.3.10f1以上でLightship SDK for AndroidまたはiOSをアクティベートすると、Unityコンソールに以下のエラーメッセージが表示されることがあります:

    XR Plug-in Management エラー 失敗の理由ビルドターゲットのAndroid(またはiOS)にcom.nianticlabs.lightshipを割り当てることができません。

    このエラーメッセージは良性であり、SDKはこれらのプラットフォームで期待通りに動作する。

  • XR Plug-in Management Project Validation for Android が 2 つのエラーと 2 つの 修正 Graphics API を OpenGLES3に設定するためのボタン ; Google ARCore からのものと Niantic Lightship SDK からのもの。 Google ARCore XR Plugin 5.1.0に含まれるものは正しく動作しませんが、Lightshipのものを使えば両方とも解決できます。

  • マルチスレッドレンダリングにより、Lidar iPhoneでアプリを最小化して再度開くと、デプスとオクルージョンがちらつく。 Unityと解決策を検討している間、iOSプラットフォームではマルチスレッドレンダリングを無効にすることをお勧めします。

  • XRCpuImage XROcclusionSubsystem (LiDAR が利用できないか無効になっている Android デバイスおよび iOS デバイス) または XRSemanticSegmentationSubsystem(すべてのデバイス) から取得した XRCpuImage に対して TryConvert を呼び出すと、宛先バッファに不正なデータがコピーされます。