Open6

Build 3D scanning into any Unity application with Niantic Scanning Framework を触ってみる

イワケンイワケン

要約

本日、Lightship ARDK 2.5で利用可能な新しいNiantic Scanning Frameworkにより、開発者がScaniverseとNianticのパワーをアプリケーションに追加できるようになったことをお伝えできることを嬉しく思います。

Lightship Augmented Reality Developer Kit(ARDK)は、クロスプラットフォームのUnityベースのソリューションで、開発者は没入感のあるマルチプレイヤー体験を作成し、現実の世界でそれを実現するためのツールを提供します。

ARDKで利用可能なScanning Frameworkにより、開発者は、エンドユーザーが3Dコンテンツをキャプチャ、編集、共有するためのオールインワンのUnityソリューションを、すべて自分のアプリケーション内で利用できるようになりました。

イワケンイワケン

Lightshipへ

https://lightship.dev/account/dashboard

ここからダッシュボード

登録してありました。

Release Noteがこちら

https://lightship.dev/docs/ardk/roadmap.html

2.5.1

https://lightship.dev/docs/ardk/release_notes/2_5_1.html

はじめよう

[Project] > [New Project+]

名前はScanAppに

ここでのApiKeyをコピーしておこう。

ARDKをダウンロード


ardk-2.5.1.unitypackageをダウンロード。


ardk-examples-2.5.1.unitypackageもダウンロード。

イワケンイワケン

Unityの操作

推奨Unityバージョンは、Unity 2020 LTSとUnity 2021 LTS.
私の環境では2021.3.12fを選択。

-Unityで公式にサポートされているスクリプトランタイムバージョンは、.NET 4.x Equivalentです。

  • ARDKとUnityのUniversal Render Pipelineの併用はサポートされています(詳しくはUniversal Render Pipelineの利用をご覧ください)。
  • 現在、ARDKはUnity MARSと連携していません。Virtual Studio経由で利用できるAR-in-editorツールはあります。

iOS Development

  • XCode (minimum version 13)

Android Development

  • Android APIレベル24以上が必要です

Unityを開いたら、AndroidにSwitch Platform

  • ardk-2.5.1.unitypackageをimport
  • ardk-examples-2.5.1.unitypackageをimport

ArdkAuthConfigを作る

プロジェクトのAssetsディレクトリ内にResources/ARDKディレクトリを作成し、そこにAdkAuthConfigアセットを追加します。デフォルトの名前は変えないでください。

これにAPIKeyを入力。

イワケンイワケン

Androidビルドの設定

  • target API Levelを24にします。
  • PlayerSettings>OtherSettings
    • AutoGraphics APIのチェックを外す
    • Vulkanを外す
      • マイナスボタンを押せばOK

  • Scripting BackendをIL2CPPにします
  • Target ArchitecturesにてARMv7とARM64を選びます

この状態でBuild and Run

CommandInvokationFailure: Gradle build failed.
Gradleに関するエラーがでました。

次の対応
https://lightship.dev/docs/ardk/ardk_fundamentals/building_android.html#building-for-android-api-level-31-with-opencl

ここまでやってビルド問題解決できず...

イワケンイワケン

Scanning Framework始めます!

https://lightship.dev/docs/ardk/scanning/getting_started.html

  • ARSceneManagerをシーンに追加
    • Unityのデフォルトカメラは削除
    • AR Camera Position Helper と AR Rendering Managerが自動的に追加されているのを確認する
  • Scan UI,Framework Logicを追加
    • シーンに空のGameObjectを追加します。
      • GameObjectに、スキャンのUIハンドラを提供するコンポーネント、ScanningExampleManagerを追加します。
      • ScanningExampleManagerにARScanManagerシリアライズフィールドを追加します
      • ScanningExampleManagerにARScanManagerコンポーネントを追加し、ScanningExampleManager Scan ManagerフィールドをこのARScanManagerインスタンスに設定します。
  • UIのイベント設定
    • ScanとStopボタンを追加
    • ScanボタンのイベントにScanningExampleManagerのScanButtonPressed()を割り当てる
    • StopボタンのイベントにScanningExampleManagerのStopButtonPressed()を割り当てる。