深度を使って画面上の地点を現実世界の位置に変換する
Lightshipの深度マップ出力を使用すると、平面やメッシュを使用せずにARシーン内にオブジェクトを動的に配置できます。 この入門ガイドでは、画面上の位置を選択し、深度出力を使用して3D空間にオブジェクトを配置する手順を説明します。

前提条件
Lightship ARを有効にしたUnityのプロジェクトが必要です。 詳細については、 ARDK 3 のインストール をご覧ください。
ヒント
初めて深度を使うのであれば、 Accessing and Displaying Depth Information は、深度のより単純な使用例を提供しており始めやすいです。
ステップ
メインシーンがAR対応でない場合は、次のように設定します。
-
Main Camera を削除します。
-
ARSession と XROrigin をHierarchyに追加し、 AR Occlusion Manager コンポ ーネントを XROrigin に追加します。 高精度なオクルージョンを望む場合は、 How to Set Up Real-World Occlusion(現実世界のオクルージョンを設定する) の
LightshipOcclusionExtension
の使用方法をご覧ください。 -
深度ピックとプレハブの配置を処理する
MonoBehaviour
スクリプトを作成します。Depth_ScreenToWorldPosition
という名前を付けます。 -
スクリプトに必要な名前空間を追加します。
using Niantic.Lightship.AR.Utilities;
using UnityEngine;
using UnityEngine.XR.ARFoundation;
using UnityEngine.XR.ARSubsystems; -
更新時に深度画像を取得する
-
AROcclusionManager
のシリアライズされたフィールドと、XRCpuImage
のプライベートフィールドを追加します。[SerializeField]
private AROcclusionManager _occlusionManager;
private XRCpuImage? _depthimage;
-