平面検出
このサンプルでは、現実世界の平面を検出して可視化する方法を紹介します。
平面の検出と追跡に関する基本的な情報と、AR FoundationのAR Plane Manager
のコンポーネントが何をするかについては、Unityのドキュメントを参照してください。
機能の有効化
この機能を使用するには、以下のOpenXRのプロジェクト設定でPlane Detectionにチェックする必要があります。
Project Settings > XR Plug-in Management > OpenXR (Androidタブ) > OpenXR Feature Groups > Snapdragon Spaces > Plane Detection
サンプルのインポート
まだサンプルをインポートしていない場合は、以下の手順でインポートすることができます。
サンプルシーンは以下の場所に存在します。
Assets/Samples/Snapdragon Spaces/1.X.X/Core Samples/Scenes/Plane Detection Sample/Plane Detection Sample.unity
サンプルの仕組み
平面を可視化するには、シーンに2つのコンポーネントが必要です。
XR Origin
ゲー ムオブジェクトにARPlaneManager
を追加すると、Snapdragon Spacesのパッケージに含まれるPlane Subsystemが有効になります。
このコンポーネントには、プレーン作成時にスポーンするプレハブを定義するフィールドがあります。このプレハブには、Mesh Renderer
とLine Renderer
の隣に、AR Plane
とAR Plane Mesh Visualizer
がアタッチされています。
メッシュとラインはAR Plane Mesh Visualizer
によって定期的に調整され、その結果、マテリアルとレンダラーのプロパティを変更することで調整可能なフィルとボーダーを持つ平面が描画されます。
さらに、MeshColider
コンポーネントをプレハブに追加して、レイキャストのヒットを受け取ることができます。