サンプルプロジェクト
私たちは、ARDKの各機能をすぐに習得できるようにサンプルを作成しました。 このサンプルにはメニューがあり、異なるサンプルを試して頂き、各機能の使い方を学ぶことができます。 How-to 、ご自身のアプリに機能を追加する方法をご覧いただけます。
これらのサンプルプロジェクトに加え、独自のARアプリケーションを作成するためのベストプラクティスを学ぶために、分解できる完成したARゲームとしてEmoji Gardenも提供しています! Emoji Garden特集ページ で、このプロジェクトの詳細とダウンロードをご覧ください。
サンプルをインストールする
- サンプル・ディレクトリを手動でダウンロードするか、gitのsamples repoをcloneしてください。
- レポジトリをクローンするには、
git clone https://github.com/niantic-lightship/ardk-samples.git
を使って、gitリポジトリを置きたい場所に置く。git pull
を定期的に使用してリポジトリを更新し、新しいサンプルが追加されたらダウンロードしてください。 - サンプル・ディレクトリをダウンロードするには、 https://github.com/niantic-lightship/ardk-samplesにアクセスしてください。 Code ボタンを使用し、 Download Zipを選択します。 zipファイルを開き、
Unity
ディレクトリまたはUnityプロジェクトを保存している場所に内容を保存します。
- レポジトリをクローンするには、
- Unityでサンプルプロジェクトを開きます。
- Project(プロジェクト) タブに移動します。 各サンプルには、ARDKの機能の1つであるUnityのシーンが付属しています。 たとえば、次のようなものがあります。
Samples/Depth/Scenes/DepthDisplay.unity
Samples/Depth/Scenes/DepthOcclusion.unity
Samples/Semantics/Scenes/SemanticsDisplay.unity
Samples/Depth/Scenes/DepthSemanticSuppression.unity
Samples/Meshing/Scenes/NormalMeshes.unity
Samples/NavigationMesh/Scenes/NavigationMesh.unity
Samples/PersistentAR/Scenes/RemoteAuthoring.unity
Samples/PersistentAR/Scenes/VPSLocalization.unity
Samples/VPSCoverage/Scenes/VPSCoverageListExample.unity
Samples/SharedAR/Scenes/SharedARVPS.unity
Samples/SharedAR/Scenes/ImageTrackingColocalization.unity
Samples/Scanning/Scenes/Recording.unity
Samples/Meshing/Scenes/TexturedMesh.unity
- RemoteAuthoring、VPSLocalization、SharedVPSなど一部のサンプルでは、 Lightshipキー をUnityに追加する必要があります。
Unity 2022でサンプルを実行する
サンプルプロジェクトは、Unity 2021.3.29f1にリンクされています。 Unity 2022.3 以降にアップグレードできます。Unity 2022 では 2022.3.10f1をサポートしています。 サンプルを更新する
- Unity Hubで、 Installsで、 2022.3.10f1 をインストールしてください。
- Projectsで、ARDKサンプルプロジェクトを見つけます。 Editor Version をクリックし、 2022.3.10f1に変更する。 次に、 Open with 2022.3.f1 ボタンをクリックします。
- Change Editor version? ダイアログが表示されたら、 Change Versionをクリックします。
- Opening Project in Non-Matching Editor Installation ダイアログが表示されたら、 Continueをクリックします。
- エラーがある場合は、 Enter Safe Mode? ダイアログがポップアップ表示されます。 Enter Safe Mode をクリックしてエラーを修正する。
サンプル
各サンプルはそれぞれのフォルダにあります。 このような構造が確認できます:
\NameOfSample
¦Scene
¦Material
¦Prefabs
¦Shaders
これにより、あるサンプルを別のプロジェクトにコピーするのが簡単になります。 すべてが1つの場所にあり、プレハブにエクスポートして新しいプロジェクトに再インポートできます。
\Common
フォルダからいくつかの共有素材やアセットをコピーする必要があるかもしれません。
深度ディスプレイ
深度シーンは、深度バッファを取得し、シーンにオーバーレイとして表示する方法を示しています。 Depth フォルダ内の DepthDisplay.unity を開いて試してみてください。
Occlusion (オクルージョン)
このシーンでは、静止しているキューブをカメラの前で動かして、オクルージョンのデモを行います。 キューブは動かないため、周囲を歩き回ることで、オクルージョンの質を直接検査することができます。 これを開くには、 Depth フォルダ内の Occlusion.unity を参照してください。 このサンプルでは、Lightshipで利用可能な2つの高度なオクルージョンオプション、 Occlusion Suppression と Occlusion Stabilizationもデモしています。 これらのオプションは、セマンティクスまたはメッシングからの入力を使用して、ちらつきを低減し、オクルージョンの視覚的品質を向上させる。 これらの機能の詳細については、 Occlusion Suppression および Occlusion Stabilizationの How-To セクションを参照してください。
セマンティック
このシーンでは、セマンティックチャネルの一部として、画面上で認識されたものに色をつけるシェーダーを適用するセマンティックのデモを行います。 このサンプルを開くには、 Semantics フォルダ内の SemanticsDisplay.unity を参照してください。
このサンプルを使用するには、次のように行います。
- ドロップダウンリストから、セマンティックチャンネルを選択します。
- スマートフォンのカメラに対応するチャンネルを探してください。
メッシング
このシーンでは、メッシュ生成を使ってシーンに物理メッシュを生成する方法を紹介します。 これは法線シェーダーを使ったメッシュで、色は上、右、前を表しています。
このサンプルを開くには、 Meshing フォルダ内の NormalMeshes.unity を参照してください。
Textured Mesh
このシーンは、ライトシップメッシュにテクスチャを貼る方法を示しています。 これはMeshingサンプルと同じように動作しますが、ワールド空間UV投影の1つの方法を示す3平面シェーダの例を使用します。 このサンプルでは、地面、壁、天井の3つのテクスチャをシーンにタイル状に配置しています。
このサンプルを開くには、 Meshing フォルダ内の TexturedMesh.unity を参照してください。