サンプルプロジェクト
Lightshipのサンプルは、SDKの各機能の使用例を具体的に 示すことを目的としています。 このサンプルプロジェクトでは、複数の小さなサンプルを実行し、それぞれのコードを確認しながら各機能の使い方を学ぶことができます。 各機能の活用方法については、入門ガイドをご覧ください。 さらに、サンプルプロジェクトに加え、複数の機能を組み合わせて、充実したAR体験を提供する独立型のミニゲームの例も用意しています。 最初にリリースされたのが「Emoji Garden」です。 このミニゲームを詳しく調べることで、永続的な共有AR体験を作成するためのベストプラクティスを取り入れることができます。 詳細については、Emoji Gardenの特集ページにアクセスし、プロジェクトをダウンロードしてください。 |
サンプルをインストールする
- Android
- iOS
- Magic Leap 2
サンプルは、Github(https://github.com/niantic-lightship/ardk-samples)から入手できます。
サンプルのクローン/ダウンロード方法:
git clone https://github.com/niantic-lightship/ardk-samples.git\`
または
githubのcode/download**ボタンを使って、https://github.com/niantic-lightship/ardk-samples からレポをダウンロードしてください。
Unity HubでAdd**を押し、プロジェクトをブラウズしてUnityのサンプルプロジェクトを開きます。
また、すべてのサンプルを正しく動作させるには、Lightship キーを追加する必要があります。
Unity 2022でサンプルを実行する
デフォルトでは、サンプルプロジェクトはUnity 2021.3.29f1で動作しますが、Unity 2022を使用したい場合は、バージョン2022.3.37f1にアップデートすることができます。
サンプルをUnity 2022に更新するには、次の手順を行います。
- Unity Hub** の Installs にある **2022.3.37f1** をインストールしてください。
- Projectsで、ARDKサンプル プロジェクトを見つけます。 エディターのバージョンをクリックし、2022.3.37f1に変更してください。 次に、Open with 2022.3.37f1ボタンをクリックします。
- Change Editor version?**ダイアログが表示されたら、**Change Version**をクリックします。
- エディタがインストールされていない場所でプロジェクトを開く]ダイアログが表示されたら、[続行]をクリックします。
- Gradleのカスタムベーステンプレートを無効にします。
- Unityのトップメニューから、編集、プロジェクト設定の順にクリックします。
- 左側のProject Settingsメニューで、Playerを選択し、Androidタブをクリックします。
- Publishing Settings** までスクロールダウンし、**Custom Base Gradle Template** というラベルの付いたボックスのチェックを外します。
- ウィンドウ(Window)のトップメニューから、パッケージマネージャ(Package Manager)を開きます。 パッケージリストからVisual Scripting**を選択し、バージョン1.9.0以前を使用している場合は、**Update**ボタンをクリックします。
- エラーがある場合は、**Enter Safe Mode?**ダイアログがポップアップ表示されます。 セーフモード**をクリックして、エラーを修正します。
サンプルは、Github(https://github.com/niantic-lightship/ardk-samples)から入手できます。
サンプルのクローン/ダウンロード方法:
git clone https://github.com/niantic-lightship/ardk-samples.git\`
または
githubのcode/download**ボタンを使って、https://github.com/niantic-lightship/ardk-samples からレポをダウンロードしてください。
Unity HubでAdd**を押し、プロジェクトをブラウズしてUnityのサンプルプロジェクトを開きます。
また、すべてのサンプルを正しく動作させるには、Lightship キーを追加する必要があります。
Unity 2022でサンプルを実行する
デフォルトでは、サンプルプロジェクトはUnity 2021.3.29f1で動作しますが、Unity 2022を使用したい場合は、バージョン2022.3.37f1にアップデートすることができます。
サンプルをUnity 2022に更新するには、次の手順を行います。
- Unity Hub** の Installs にある **2022.3.37f1** をインストールしてください。
- Projectsで、ARDKサンプルプロジェクトを見つけます。 エディターのバージョンをクリックし、2022.3.37f1に変更してください。 次に、Open with 2022.3.37f1ボタンをクリックします。
- Change Editor version?**ダイアログが表示されたら、**Change Version**をクリックします。
- エディタがインストールされていない場所でプロジェクトを開く]ダイアログが表示されたら、[続行]をクリックします。
- Gradleのカスタムベーステンプレートを無効にします。
- Unityのトップメニューから、編集、プロジェクト設定の順にクリックします。
- 左側のProject Settingsメニューで、Playerを選択し、Androidタブをクリックします。
- Publishing Settings** までスクロールダウンし、**Custom Base Gradle Template** というラベルの付いたボックスのチェックを外します。
- ウィンドウ(Window)のトップメニューから、パッケージマネージャ(Package Manager)を開きます。 パッケージリストからVisual Scripting**を選択し、バージョン1.9.0以前を使用している場合は、**Update**ボタンをクリックします。
- エラーがある場合は、**Enter Safe Mode?**ダイアログがポップアップ表示されます。 セーフモード**をクリックして、エラーを修正します。
Lightship Magic Leap 2の統合はベータ版であるため、一部の機能が期待通りに動作しない可能性があります。
Lightship Magic Leap Plugin**には、ARのMagic Leap 2で使用するためにデザインされたサンプルシーンが含まれています。 UIは異なりますが、これらのサンプル・シーンの機能は、以下に説明するiOS/Androidモバイル・デバイス用のサンプル・シーンと非常によく似ています。
- Lightship for Magic Leap 2のインストール](./setup.mdx)の手順に従ってください。
- Unityで、トップメニューの Window を開き、 Package Manager を選択します。 パッケージが選択されていることを確認する:In Project** が選択されていることを確認する。
- Niantic Lightship Magic Leap Pluginを選択し、そこからSamples**タブを選択します。
- 現在のプロジェクトにサンプルをインポートするには Import をクリックしてください。
- サンプルシーンは、Assets/Samples/Niantic Lightship Magic Leap Plugin/`の下にあります。
- File**のトップメニューで、Build Settingsを選択します。
- テストしたいサンプルシーンをScenes in Buildにドラッグしてください。 ホーム**シーンがリストの一番上にあることを確認してください。
- UnityでFileトップメニューを開き、Build Settingsを選択し、Magic Leap 2デバイスが接続され、サンプルをテストするために起きているときにBuild and Runをクリックします。
Build Options で Wait for Debugger を選択している場合、作業を続行するには、ML2のボリュームボタンを押す必要があります。 ML2には近接センサーが搭載されているため、プロジェクトを実行するには装着する必要がある場合があります。
- Player SettingsでScript Compilationまでスクロールダウンし、Scripting Define Symbolsを展開します。 右下の**+**をクリックし、リストの一番下に
NIANTIC_LIGHTSHIP_SHAREDAR_ENABLED
を追加する。 - Projectウィンドウで、Samplesフォルダを開き、Lightship ASMDEFファイルを選択します。 Inspectorで、Assembly Definition Referencesを見つけ、右下の**+**をクリックします。 Niantic.Lightship.SharedAR`をリストに追加。
サンプル
深度ディスプレイ
深度シーンは、深度バッファを取得し、シーンにオーバーレイとして表示する方法を示しています。 Depth フォルダ内の DepthDisplay.unity を開いてお試しください。 |
オクルージョン
このシーンでは、静止しているキューブをカメラの前で動かして、オクルージョンのデモを行います。 キューブは動かないため、周囲を歩き回ることで、オクルージョンの質を直接検査することができます。 このシーンを開くには、 Depth フォルダ内の Occlusion.unity シーンを参照してください。 このサンプルでは、Lightshipで利用可能な2つの高度なオクルージョンオプションである オクルージョン抑制 と オクルージョン安定化 のデモも行います。 これらのオプションは、セマンティックまたはメッシングからの入力を使用して、ちら つきを低減し、オクルージョンの視覚的品質を向上させる。 これらの機能の詳細については、オクルージョン抑制やオクルージョン安定化の入門ガイドセクションをご覧ください。 |
セマンティック
このシーンでは、セマンティック・チャンネルの一部として、画面上で認識されたものに色をつけるシェーダーを適用するセマンティックのデモを行います。 このサンプルを開くには、 Semantics フォルダ内の SemanticsDisplay.unity を参照してください。 このサンプルを使用するには、以下の手順を行います。
|
オブジェクト検出
このシーンでは、オブジェクト検出のデ モを行うために、検出されたオブジェクトの周囲に2Dバウンディングボックスを描画します。 設定メニューでは、検出されたすべてのクラスを表示するか、ドロップダウンから選択したクラスのみを表示するかを切り替えることができます。 このサンプルを開くには、 ObjectDetection フォルダ内の ObjectDetection.unity を参照してください。 |
メッシング
このシーンでは、メッシングを使ってシーンに物理メッシュを生成する方法を紹介します。 これは法線シェーダーを使ったメッシュで、色は上、右、前を表しています。 このサンプルを開くには、 Meshing フォルダ内の NormalMeshes.unity を参照してください。 |
Textured Mesh
このシーンは、ライトシップメッシュにテクスチャを貼る方法を示しています。 これはMeshingサンプルと同じように動作しますが、ワールド空間UV投影の1つの方法を示す3平面シェーダの例を使用します。 このサンプルでは、地面、壁、天井の3つのテクスチャをシーンにタイル状に配置 しています。 このサンプルを開くには、 Meshing フォルダ内の TexturedMesh.unity を参照してください。 |
ナビゲーション・メッシュ
このシーンでは、メッシングを使用して Navigation Mesh を作成するデモを行います。 あなたが動き回るにつれて、私たちはナビゲーション・メッシュを作成し、成長させます。あなたがそれをクリックすると、AIエージェントにその位置に移動するよう指示することができます。 エージェントは角を曲がり、物体に飛び乗ることができます。 このサンプルを開くには、 NavigationMesh フォルダ内の NavigationMesh.unity を参照してください。 このデモを表示するには、以下の手順を行います。
|
リモート・オーサリング
備考 このサンプルは、縦向きの画面でのみ動作します。 このシーンでは、VPS Anchorをターゲットにしたターゲットローカライゼーションのデモを行います。 このサンプルを開くには、 PersistentAR フォルダ内の RemoteAuthoring.unity を参照してください。 このサンプルを使用するには、以下の手順を行います。
ランタイム時にBlobを変更するテスト用デバイスでGeospatial Browserを開き、別のアンカーの Blob をコピーして、アプリが実行されている状態で Payload のテキストボックスに貼り付けます。 |
VPSローカライゼーション
::注意 このシーンでは、半径範囲内にあるVPSロケーションのリストが表示され、Coverage APIからWaypointをローカライズターゲットとして選択できます。その後、スマートフォンのマップと連携して目的地までの道案内を行います。 このサンプルを開くには、 PersistentAR フォルダ内の VPSLocalization.unity を参照してください。 このサンプルを使用するには、以下の手順を行います。
|
共有AR VPS (Shared AR VPS)
::注意 このシーンでは、Coverage APIからWaypointを選択し、その周囲で共有AR体験を作成することができます。 このサンプルを開くには、 SharedAR フォルダ内の SharedARVPS.unity を参照してください。 モバイルデバイスでこのサンプルを使用するには、以下の手順を行います。
Unityエディターのプレイバック機能を使用してこのサンプルを使用するには、以下の手順を行います。
|
共有AR画像追跡コロカライゼーション(Shared AR Image Tracking Colocalization)
::注意 このシーンでは、VPSロケーションを使用せずに、複数のユーザーが共有ルームに参加することができます。そのためには、静止画像を原点として使用します。 このサンプルを開くには、 SharedAR フォルダ内の ImageTrackingColocalization.unity を参照してください。 このサンプルを使用するには、以下の手順を行います。
|
ワールド ポーズ
このサンプルでは、デバイスのGPSコンパスとワールドポーズのコンパスを比較して、ワールドポジショニングシステムによってカメラの精度が高くなる様子を示します。 ワールドポーズを使用したコンパスは、ユーザーが歩くにつれて徐々に安定し、正確性も向上します。 |
Recording
このシーンでは、エディターで再生するために実際の場所をスキャンすることができます。 このサンプルを開くには、 Scanning フォルダの Recording.unity を参照してください。 このサンプルの使用方法については、プレイバック用データセットを作成するを参照してください。 |